共計(jì) 2148 個(gè)字符,預(yù)計(jì)需要花費(fèi) 6 分鐘才能閱讀完成。
自動(dòng)寫(xiě)代碼機(jī)器人,免費(fèi)開(kāi)通
丸趣 TV 小編給大家分享一下 mysql 新建權(quán)限設(shè)置密碼的方法,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
mysql 新建權(quán)限設(shè)置密碼的方法:首先通過(guò) CREATE USER 命令創(chuàng)建用戶(hù);然后使用 GRANT 命令進(jìn)行授權(quán);最后通過(guò) SET PASSWORD 命令設(shè)置更改用戶(hù)密碼即可。
MySQL 創(chuàng)建用戶(hù)與授權(quán)
一. 創(chuàng)建用戶(hù)
命令:
CREATE USER username @ host IDENTIFIED BY password
說(shuō)明:
username:你將創(chuàng)建的用戶(hù)名
host:指定該用戶(hù)在哪個(gè)主機(jī)上可以登陸,如果是本地用戶(hù)可用 localhost,如果想讓該用戶(hù)可以從任意遠(yuǎn)程主機(jī)登陸,可以使用通配符 %
password:該用戶(hù)的登陸密碼,密碼可以為空,如果為空則該用戶(hù)可以不需要密碼登陸服務(wù)器
例子:
CREATE USER dog @ localhost IDENTIFIED BY 123456
CREATE USER pig @ 192.168.1.101_ IDENDIFIED BY 123456
CREATE USER pig @ % IDENTIFIED BY 123456
CREATE USER pig @ % IDENTIFIED BY
CREATE USER pig @ %
二. 授權(quán):
命令:
GRANT privileges ON databasename.tablename TO username @ host
說(shuō)明:
privileges:用戶(hù)的操作權(quán)限,如 SELECT,INSERT,UPDATE 等,如果要授予所的權(quán)限則使用 ALL
databasename:數(shù)據(jù)庫(kù)名
tablename:表名,如果要授予該用戶(hù)對(duì)所有數(shù)據(jù)庫(kù)和表的相應(yīng)操作權(quán)限則可用 * 表示,如 *.*
例子:
GRANT SELECT, INSERT ON test.user TO pig @ %
GRANT ALL ON *.* TO pig @ %
GRANT ALL ON maindataplus.* TO pig @ %
注意:
用以上命令授權(quán)的用戶(hù)不能給其它用戶(hù)授權(quán),如果想讓該用戶(hù)可以授權(quán),用以下命令:
GRANT privileges ON databasename.tablename TO username @ hostWITH GRANT OPTION;
三. 設(shè)置與更改用戶(hù)密碼
命令:
SET PASSWORD FOR username @ host = PASSWORD(newpassword
如果是當(dāng)前登陸用戶(hù)用:
SET PASSWORD = PASSWORD(newpassword
例子:
SET PASSWORD FOR pig @ % = PASSWORD(123456
四. 撤銷(xiāo)用戶(hù)權(quán)限
命令:
REVOKE privilege ON databasename.tablename FROM username @ host
說(shuō)明:
privilege, databasename, tablename:同授權(quán)部分
例子:
REVOKE SELECT ON *.* FROM pig @ %
注意:
假如你在給用戶(hù) pig @ % 授權(quán)的時(shí)候是這樣的(或類(lèi)似的):GRANT SELECT ON test.user TO pig @ %,則在使用 REVOKE SELECT ON *.* FROM pig @ % 命令并不能撤銷(xiāo)該用戶(hù)對(duì) test 數(shù)據(jù)庫(kù)中 user 表的 SELECT 操作。相反,如果授權(quán)使用的是 GRANT SELECT ON *.* TO pig @ % 則 REVOKE SELECT ON test.user FROM pig @ % 命令也不能撤銷(xiāo)該用戶(hù)對(duì) test 數(shù)據(jù)庫(kù)中 user 表的 Select 權(quán)限。
具體信息可以用命令 SHOW GRANTS FOR pig @ % 查看。
五. 刪除用戶(hù)
命令:
DROP USER username @ host
今天開(kāi)發(fā)中在 Centos7 中安裝 MySQL5.6 版本后,在表中新建了一個(gè) weicheng 的賬戶(hù),并且設(shè)置了密碼,但是在用 weicheng 賬號(hào)登陸 mysql 發(fā)現(xiàn),如果使用“mysql -uweicheng -p”登陸會(huì)報(bào)錯(cuò),即使密碼正確也不能登錄,最后發(fā)現(xiàn),直接用“mysql -uweicheng”不輸入密碼也可以登陸。
后來(lái),查詢(xún)了資料原因是: 應(yīng)為數(shù)據(jù)庫(kù)里面有空用戶(hù), 通過(guò)
select * from mysql.user where user=
查詢(xún)?nèi)绻?,然后通過(guò)
use mysql;
delete from user where user =
刪除了多余的空白賬戶(hù),然后,通過(guò)
flush privileges;-
重載一次權(quán)限表, 最后用
service mysqld restart
重啟 mysql 服務(wù),問(wèn)題得到解決,至此 mark 一下!
Tip:
1、一定要記住重啟 mysql 服務(wù),否則不會(huì)生效,自己就是因?yàn)闆](méi)有重啟 msyql 導(dǎo)致一直得不到解決!
2、msyql 的用戶(hù)表在 mysql 數(shù)據(jù)庫(kù)中的 user 表中,主要字段有 host,user,password 等,作為 mysql 用的管理的主要表。
mysql 刷新權(quán)限命令:FLUSH PRIVILEGES;(一般用于數(shù)據(jù)庫(kù)用戶(hù)信息更新后)
還有一種方法,就是重啟 mysql 服務(wù)器也可以
以上是 mysql 新建權(quán)限設(shè)置密碼的方法的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注丸趣 TV 行業(yè)資訊頻道!
向 AI 問(wèn)一下細(xì)節(jié)
丸趣 TV 網(wǎng) – 提供最優(yōu)質(zhì)的資源集合!