一:(停掉正在啟動並執行mysql)
| 代碼如下 |
複製代碼 |
[root@NetDakVPS ~]# service mysqld stop
|
二:使用 “--skip-grant-tables”參數重新啟動mysql
| 代碼如下 |
複製代碼 |
[root@NetDakVPS ~]# mysqld_safe --skip-grant-tables & [1] 23810 Starting mysqld daemon with databases from /var/lib/mysql
|
三:用root帳號登入mysql
| 代碼如下 |
複製代碼 |
[root@NetDakVPS ~]# mysql -u root Welcome to the MySQL monitor. Commands end with ; or g. Your MySQL connection id is 1 Server version: 5.0.77 Source distributionType 'help;' or 'h' for help. Type 'c' to clear the buffer. |
四:改變使用者資料庫
| 代碼如下 |
複製代碼 |
mysql> use mysql Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -ADatabase changed
|
五:修改密碼,記得密碼要用password()函數進行加密
| 代碼如下 |
複製代碼 |
mysql> update user set password=password('netdak') where user='root'; Query OK, 1 row affected (0.04 sec) Rows matched: 1 Changed: 1 Warnings: 0
|
六:重新整理許可權表
| 代碼如下 |
複製代碼 |
mysql> flush privileges; Query OK, 0 rows affected (0.00 sec)
|
七:退出mysql
Bye
八:對mysql進行重啟
| 代碼如下 |
複製代碼 |
[root@NetDakVPS ~]# service mysqld restart; STOPPING server from pid file /var/run/mysqld/mysqld.pid 100421 13:44:03 mysqld endedStopping MySQL: [ OK ] Starting MySQL: [ OK ] [1]+ Done mysqld_safe --skip-grant-tables
|
九:用更改過的密碼重新登入即可。
| 代碼如下 |
複製代碼 |
[root@NetDakVPS ~]# mysql -u root -p Enter password: netdak Welcome to the MySQL monitor. Commands end with ; or g. Your MySQL connection id is 2 Server version: 5.0.77 Source distributionType 'help;' or 'h' for help. Type 'c' to clear the buffer.mysql> quit Bye |
附其它方法
1. KILL掉系統裡的MySQL進程;
| 代碼如下 |
複製代碼 |
killall -TERM mysqld
|
2. 用以下命令啟動MySQL,以不檢查許可權的方式啟動;
| 代碼如下 |
複製代碼 |
safe_mysqld --skip-grant-tables &
|
3. 然後用空密碼方式使用root使用者登入 MySQL;
4. 修改root使用者的密碼;
| 代碼如下 |
複製代碼 |
mysql> update mysql.user set password=PASSWORD('新密碼') where User='root'; mysql> flush privileges; mysql> quit
|
重新啟動MySQL,就可以使用新密碼登入了。