MySQL數(shù)據(jù)庫的root口令恢復(fù)方法總結(jié)
方法一
1. 下載MySQL源碼分發(fā)包,不用區(qū)分操作系統(tǒng),我們需要的東西是一樣的;
2. 重命名自己的mysql的data目錄下的mysql文件夾為oldmysql;
3. 將源碼包中data目錄下的mysql目錄復(fù)制到你的mysql的data目錄下;
4. 重新啟動(dòng)mysql,現(xiàn)在mysql的授權(quán)關(guān)系同全新安裝的一樣,空密碼登陸,然后自行調(diào)整授權(quán);
5. 打開oldmysql這個(gè)庫檢查到底出現(xiàn)了什么問題 ;
6. 如果有備份對(duì)系統(tǒng)中原有的數(shù)據(jù)庫進(jìn)行完整性檢測(cè),以免被人修改。
方法二
1. 向mysqld server發(fā)送kill命令關(guān)掉mysqld server(不是 kill -9),存放進(jìn)程ID的文件通常在MYSQL的數(shù)據(jù)庫所在的目錄中。
kill `cat /mysql-data-directory/hostname.pid`
你必須是Linux的root用戶或者是你所運(yùn)行的SERVER上的同等用戶,才能執(zhí)行這個(gè)操作;
killall -TERM mysqld
2. 使用`--skip-grant-tables’ 參數(shù)來啟動(dòng) 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’’
其實(shí)也可以用
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. 載入權(quán)限表:
mysqladmin -h hostname flush-privileges’
或者使用SQL命令
`FLUSH PRIVILEGES’
當(dāng)然,在這里,你也可以重啟mysqld。
關(guān)鍵詞:MySQL,數(shù)據(jù)庫
閱讀本文后您有什么感想? 已有 人給出評(píng)價(jià)!
- 1
- 1
- 1
- 1
- 1
- 1