首先要說明一點的是:一般情況下,修改MySQL密碼是需要有
MySQL裡的root權限的,這樣一般用戶是無法更改密碼的,除非請求管理員幫助修改。
方法一
使用PHPMyAdmin
(圖形化管理MySQL數據庫的工具),這是最簡單的,直接用SQL語句修改
MySQL數據庫庫的user表,不過別忘了使用PASSWord函數,插入用戶用Insert命令,修改用戶用Update命令,刪除用Delete命令。在本節後面有數據表user字段的詳細介紹。
www.xker.com(小新技術網) 方法二
使用
MySQLadmin。輸入
MySQLadmin -u root -p oldpassWord newpasswd
執行這個命令後,需要輸入root的原密碼,這樣root的密碼將改為newpasswd。同樣,把命令裡的root改為你的用戶名,你就可以改你自己的密碼了。
當然如果你的
MySQLadmin連接不上
MySQL server,或者你沒有辦法執行
MySQLadmin,那麼這種方法就是無效的,而且
MySQLadmin無法把密碼清空。
下面的方法都在
MySQL提示符下使用,且必須有
MySQL的root權限:
方法三
MySQL> INSERT INTO
MySQL.user (Host,User,PassWord) VALUES
('%','system', PASSWord('manager'));
MySQL> FLUSH PRIVILEGES
確切地說這是在增加一個用戶,用戶名為system,密碼為manager。注意要使用PASSWord函數,然後還要使用FLUSH
PRIVILEGES來執行確認。
方法四
和方法三一樣,只是使用了REPLACE語句
MySQL> REPLACE INTO
MySQL.user (Host,User,PassWord)
VALUES('%','system',PASSWord('manager'));
MySQL> FLUSH PRIVILEGES
方法五
使用SET PASSWord語句
MySQL> SET PASSWORD FOR system@"%" = PASSWord('manager');
你也必須使用PASSWord()函數,但是不需要使用FLUSH PRIVILEGES來執行確認。
方法六
使用GRANT ... IDENTIFIED BY語句,來進行授權。
MySQL> GRANT USAGE ON *.* TO system@"%" IDENTIFIED BY 'manager';
這裡PASSWord()函數是不必要的,也不需要使用FLUSH PRIVILEGES來執行確認。
注:PASSWord()函數作用是為口令字加密,在程序中MySQL自動解釋。