如何修改mysql root密碼
忘記MySQL ROOT密碼是在MySQ使用中很常見的問題,可是有很多朋友并不會(huì)重置ROOT密碼,那叫苦啊,特寫此文章與大家交流:
1、編輯MySQL的配置文件:my.ini
一般在MySQL安裝目錄下有my.ini即MySQL的配置文件。
在此配置文件的最后添加如下一行:
skip-grant-tables
保存退出編輯。
2、然后重啟MySQL服務(wù)
在命令行下執(zhí)行:
net stop MySQL
net start MySQL
3、設(shè)置新的ROOT密碼
然后再在命令行下執(zhí)行:
MySQL -u root -p MySQL或mysql -u root -p
直接回車無(wú)需密碼即可進(jìn)入數(shù)據(jù)庫(kù)了。
此時(shí),在命令行下執(zhí)行 use mysql;
現(xiàn)在我們執(zhí)行如下語(yǔ)句把root密碼更新為:
update user set password=PASSWORD("root") where user='root';
(注意:此時(shí)不用使用mysqladmin -u root -p password '你的新密碼'這條命令修改密碼,因?yàn)?skip-grant-tables'配置,
不信的話,你可以試用一下,它肯定會(huì)報(bào)如下所示的錯(cuò)誤:
F:\Documents and Settings\long>mysqladmin -u root -p password 'root'
Enter password:
Warning: single quotes were not trimmed from the password by your command
line client, as you might have expected.
mysqladmin:
You cannot use 'password' command as mysqld runs
with grant tables disabled (was started with --skip-grant-tables).
Use: "mysqladmin flush-privileges password '*'" instead)
exit 退出MySQL。
4、還原配置文件并重啟服務(wù)
然后修改MySQL配置文件把剛才添加的那一行'skip-grant-tables'刪除。
再次重起MySQL服務(wù),密碼修改完畢。
用新密碼root試一下吧,又能登入重新進(jìn)入mysql了?
附mysql修改密碼的一些方法:
1. 用MYSQL的grant語(yǔ)句,例如
mysql -h hostname –u root 命令登錄到mysqld server 用grant 命令改變口令:
mysql -h 192.168.1.101 -u root
上邊的192.168.1.101 是偶的mysqld 運(yùn)行機(jī)器,你換成自己的,這樣登錄上去,就可以修改密碼了,
其實(shí)沒必要這么麻煩,直接mysql -u root就可以了。
GRANT ALL ON *.* TO 'root'@'localhost' IDENTIFIED BY 'root' WITH GRANT OPTION
2. mysqladmin -u 用戶名 -p 舊密碼 password 新密碼
例1:給root 加個(gè)密碼root。首先進(jìn)入cmd中,然后鍵入
以下命令,至于在CMD下能否使用mysqladmin,
就要看你的Windows環(huán)境變量PATH中是否添加“E:\Program Files\MySQL\MySQL Server 5.1\bin;”(請(qǐng)改為你自己的安裝路徑)了。)
mysqladmin -u root password root
注:因?yàn)殚_始時(shí)root 沒有密碼,所以-p 舊密碼一項(xiàng)就可以省略了。
例2:再將root 的密碼改為admin。
mysqladmin –u root -proot password admin(注意-p 不要和后面的密碼分
開寫,要寫在一起,不然會(huì)出錯(cuò),錯(cuò)誤如下所示:
F:\Documents and Settings\long>mysqladmin -u root -p root password admin
Enter password: ****
mysqladmin: Unknown command: 'root')
當(dāng)然你也可以這樣寫:mysqladmin –u root -p password admin回車,
然后再輸入你的舊密碼,這樣也是完全也可以的,看你的愛好了.
例3:再將root用戶的密碼去掉.
F:\Documents and Settings\long>mysqladmin -u root -p password ;
Enter password: root
此時(shí),root用戶又沒有密碼了.可以通過下面的方法設(shè)置:
F:\Documents and Settings\long>mysql -u root
mysql>set password for 'root'@'localhost'=password('root');(語(yǔ)法:SET PASSWORD FOR '用戶名'@'主機(jī)' = PASSWORD('密碼'))
mysql>set password for 'root'@'%'=password('root');
//本條可選,這是在配置mysql數(shù)據(jù)庫(kù),如果你選擇了允許root通過遠(yuǎn)程登錄進(jìn)來時(shí),你在mysql數(shù)據(jù)庫(kù)下的user表中,
use mysql;
select * from user;可以看到有兩條記錄,如果你沒有配置這一項(xiàng)的話,只會(huì)第一條記錄!
Host User Password
'localhost', 'root', '*9C9F4927129ECC3209D8550DC8B67156FDBF9418', ...
'%', 'root', '*81F5E21E35407D884A6CD4A731AEBFB6AF209E1B', ...
通過以上設(shè)置,root的密碼將變?yōu)閞oot這樣就完成了根用戶root密碼的設(shè)置工作。
3. use mysql;
update user set password =password('yourpass') where user='root'
(注:下面的這些方法我本人沒有試過,不知對(duì)不對(duì),我只是轉(zhuǎn)載了一下:)
下面的方法都在mysql提示符下使用,且必須有mysql的root權(quán)限:
方法4
mysql> INSERT INTO mysql.user (Host,User,Password)
VALUES('%','jeffrey',PASSWORD('biscuit'));
mysql> FLUSH PRIVILEGES
確切地說這是在增加一個(gè)用戶,用戶名為jeffrey,密碼為biscuit。
在《mysql中文參考手冊(cè)》里有這個(gè)例子,所以我也就寫出來了。
注意要使用PASSWORD函數(shù),然后還要使用FLUSH PRIVILEGES。
方法5
和方法三一樣,只是使用了REPLACE語(yǔ)句
mysql> REPLACE INTO mysql.user (Host,User,Password)
VALUES('%','jeffrey',PASSWORD('biscuit'));
mysql> FLUSH PRIVILEGES
方法6
使用SET PASSWORD語(yǔ)句,
mysql> SET PASSWORD FOR jeffrey@"%" = PASSWORD('biscuit');
你也必須使用PASSWORD()函數(shù),
但是不需要使用FLUSH PRIVILEGES。
方法7
使用GRANT ... IDENTIFIED BY語(yǔ)句
mysql> GRANT USAGE ON *.* TO jeffrey@"%" IDENTIFIED BY 'biscuit';
這里PASSWORD()函數(shù)是不必要的,也不需要使用FLUSH PRIVILEGES。
注:mysql 新設(shè)置用戶或更改密碼后需用flush privileges刷新MySQL的系統(tǒng)權(quán)限相關(guān)表,
否則會(huì)出現(xiàn)拒絕訪問,還有一種方法,就是重新啟動(dòng)mysql服務(wù)器,來使新設(shè)置生效。
關(guān)鍵字:服務(wù)器、Mysql、數(shù)據(jù)庫(kù)、配置
新文章:
- CentOS7下圖形配置網(wǎng)絡(luò)的方法
- CentOS 7如何添加刪除用戶
- 如何解決centos7雙系統(tǒng)后丟失windows啟動(dòng)項(xiàng)
- CentOS單網(wǎng)卡如何批量添加不同IP段
- CentOS下iconv命令的介紹
- Centos7 SSH密鑰登陸及密碼密鑰雙重驗(yàn)證詳解
- CentOS 7.1添加刪除用戶的方法
- CentOS查找/掃描局域網(wǎng)打印機(jī)IP講解
- CentOS7使用hostapd實(shí)現(xiàn)無(wú)AP模式的詳解
- su命令不能切換root的解決方法
- 解決VMware下CentOS7網(wǎng)絡(luò)重啟出錯(cuò)
- 解決Centos7雙系統(tǒng)后丟失windows啟動(dòng)項(xiàng)
- CentOS下如何避免文件覆蓋
- CentOS7和CentOS6系統(tǒng)有什么不同呢
- Centos 6.6默認(rèn)iptable規(guī)則詳解