Mysql添加用戶和設(shè)置權(quán)限的操作方法
DCL英文全稱是Data Control Language(數(shù)據(jù)控制語(yǔ)言),用來(lái)管理數(shù)據(jù)庫(kù)用戶、控制數(shù)據(jù)庫(kù)的訪問(wèn)權(quán)限。
一、管理用戶
用戶相關(guān)命令:
查詢用戶:select * from mysql.user;
密碼也存在了這張表,但是是加密過(guò)的,如果忘記密碼了,可以通過(guò)配置設(shè)置成免密登錄,然后再進(jìn)行修改密碼。
其中 Host代表當(dāng)前用戶訪問(wèn)的主機(jī), 如果為localhost, 僅代表只能夠在當(dāng)前本機(jī)訪問(wèn),是不可以遠(yuǎn)程訪問(wèn)的。 User代表的是訪問(wèn)該數(shù)據(jù)庫(kù)的用戶名。在MySQL中需要通過(guò)Host和User來(lái)唯一標(biāo)識(shí)一個(gè)用戶。主機(jī)名可以使用 % ,代表的就是任何一個(gè)主機(jī)都能訪問(wèn)。
往往linux當(dāng)中安裝mysql,然后使用 其他主機(jī)的客戶端 連mysql連不上,就是因?yàn)镠ost配置的是localhost這個(gè)原因?qū)е碌模?/strong>
- 創(chuàng)建用戶:
CREATE USER '用戶名'@'主機(jī)名' IDENTIFIED BY '密碼';
- 修改用戶密碼:
ALTER USER '用戶名'@'主機(jī)名' IDENTIFIED WITH mysql_native_password BY '新密碼' ;
- 刪除用戶:
DROP USER '用戶名'@'主機(jī)名' ;
注意事項(xiàng):
- 在MySQL中需要通過(guò)
用戶名@主機(jī)名
的方式,來(lái)唯一標(biāo)識(shí)一個(gè)用戶。 - 主機(jī)名可以使用 % 通配。
命令使用示例:
#創(chuàng)建用戶aaa, 只能夠在當(dāng)前主機(jī)localhost訪問(wèn), 密碼123456; create user 'aaa'@'localhost' identified by '123456'; #創(chuàng)建用戶bbb, 可以在任意主機(jī)訪問(wèn)該數(shù)據(jù)庫(kù), 密碼123456; create user 'bbb'@'%' identified by '123456'; #修改用戶bbb的訪問(wèn)密碼為1234; alter user 'bbb'@'%' identified with mysql_native_password by '1234'; #刪除 aaa@localhost 用戶 drop user 'aaa'@'localhost';
二、權(quán)限控制
MySQL中定義了很多種權(quán)限,但是常用的就以下幾種:
上述只是簡(jiǎn)單羅列了常見(jiàn)的幾種權(quán)限描述,其他權(quán)限描述及含義,可以直接參考官網(wǎng):
https://dev.mysql.com/doc/refman/8.0/en/privileges-provided.html
命令:
- 查詢權(quán)限:
SHOW GRANTS FOR '用戶名'@'主機(jī)名' ;
- 授予權(quán)限:
GRANT 權(quán)限列表 ON 數(shù)據(jù)庫(kù)名.表名 TO '用戶名'@'主機(jī)名';
- 撤銷權(quán)限:
REVOKE 權(quán)限列表 ON 數(shù)據(jù)庫(kù)名.表名 FROM '用戶名'@'主機(jī)名';
注意事項(xiàng):
- 多個(gè)權(quán)限之間,使用逗號(hào)分隔
- 授權(quán)時(shí),
數(shù)據(jù)庫(kù)名和表名可以使用 * 進(jìn)行通配,代表所有
。
命令使用示例:
#查詢 'bbb'@'%' 用戶的權(quán)限 show grants for 'bbb'@'%'; #授予 'bbb'@'%' 用戶itcast數(shù)據(jù)庫(kù)所有表的所有操作權(quán)限 grant all on itcast.* to 'bbb'@'%'; #撤銷 'bbb'@'%' 用戶的itcast數(shù)據(jù)庫(kù)的所有權(quán)限 revoke all on itcast.* from 'bbb'@'%';
MySQL用戶數(shù)據(jù)和權(quán)限有修改后,希望在"不重啟MySQL服務(wù)"的情況下直接生效,那么就需要執(zhí)行這個(gè)命令。通常是在修改ROOT帳號(hào)的設(shè)置后,怕重啟后無(wú)法再登錄進(jìn)來(lái),那么直接flush之后就可以看權(quán)限設(shè)置是否生效。而不必冒太大風(fēng)險(xiǎn)。
flush privileges;
到此這篇關(guān)于Mysql添加用戶和設(shè)置權(quán)限的操作方法的文章就介紹到這了,更多相關(guān)Mysql添加用戶和設(shè)置權(quán)限內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
mysql如何比對(duì)兩個(gè)數(shù)據(jù)庫(kù)表結(jié)構(gòu)的方法
這篇文章主要介紹了mysql如何比對(duì)兩個(gè)數(shù)據(jù)庫(kù)表結(jié)構(gòu)的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-09-09MySQL數(shù)據(jù)庫(kù)表的合并及分區(qū)方式
這篇文章主要介紹了MySQL數(shù)據(jù)庫(kù)表的合并及分區(qū)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-08-08InnoDB數(shù)據(jù)庫(kù)死鎖問(wèn)題處理
本文給大家講解的是mysql數(shù)據(jù)庫(kù)InnoDB類型,在update表的時(shí)候出現(xiàn)死鎖現(xiàn)象的原因及解決辦法,有需要的小伙伴可以參考下。2016-03-03MySQL存儲(chǔ)過(guò)程參數(shù)的用法及說(shuō)明
這篇文章主要介紹了MySQL存儲(chǔ)過(guò)程參數(shù)的用法及說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-08-08MAC下Mysql5.7+ MySQL Workbench安裝配置方法圖文教程
這篇文章主要為大家詳細(xì)介紹了MAC下Mysql5.7+ MySQL Workbench安裝配置方法圖文教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-06-06