top
Loading...
MySQL數據庫的root口令恢復方法總結

方法一

1. 下載MySQL源碼分發包,不用區分操作系統,我們需要的東西是一樣的;

2. 重命名自己的mysql的data目錄下的mysql文件夾為oldmysql;

3. 將源碼包中data目錄下的mysql目錄復制到你的mysql的data目錄下;

4. 重新啟動mysql,現在mysql的授權關系同全新安裝的一樣,空密碼登陸,然后自行調整授權;

5. 打開oldmysql這個庫檢查到底出現了什么問題 ;

6. 如果有備份對系統中原有的數據庫進行完整性檢測,以免被人修改。

方法二

1. 向mysqld server發送kill命令關掉mysqld server(不是 kill -9),存放進程ID的文件通常在MYSQL的數據庫所在的目錄中。

kill `cat /mysql-data-directory/hostname.pid`

你必須是Linux的root用戶或者是你所運行的SERVER上的同等用戶,才能執行這個操作;

killall -TERM mysqld

2. 使用`--skip-grant-tables’ 參數來啟動 mysqld;

shell>mysqld_safe --skip-grant-tables & / bin/safe_mysqld --skip-grant-tables &

3. 使用`mysql -h hostname mysql’命令登錄到mysqld server ,用grant命令改變口令。你也可以這樣做:

`mysqladmin -h hostname -u user password ’new password’’

其實也可以用

use mysql; update user set password =password(’yourpass’) where user=’root’

來做到;

shell>mysqladmin -u root flush-privileges password "newpassword">use mysql>update user set password=password("new_pass") where user="root";>flush privileges;

4. 載入權限表:

`mysqladmin -h hostname flush-privileges’

或者使用SQL命令

`FLUSH PRIVILEGES’

。當然,在這里,你也可以重啟mysqld。

作者:http://www.zhujiangroad.com
來源:http://www.zhujiangroad.com
北斗有巢氏 有巢氏北斗