日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

MySQL数据库8(十八)用户权限管理

發(fā)布時間:2024/1/1 数据库 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 MySQL数据库8(十八)用户权限管理 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

用戶權(quán)限管理

用戶權(quán)限管理:在不同的項目中給不同的角色(開發(fā)者)不同的操作權(quán)限,為了保證數(shù)據(jù)庫數(shù)據(jù)的安全

?

用戶管理

Mysql需要客戶端進行連接認證才能進行服務器操作,需要用戶信息。Mysql中所有用戶的信息都保存在mysql數(shù)據(jù)庫下的user表中。

?

默認的,在安裝mysql的時候,如果沒有創(chuàng)建匿名用戶,那么意味著所有的用戶只有一個;root超級用戶

?

PS:修改root用戶密碼:?alter user'root'@'localhost' identified by '新密碼';?

?

?

在mysql中,對用戶的用戶管理中,是由對應的host和user共同組成主鍵來區(qū)分用戶;

User:代表用戶的用戶名

Host:代表本機是允許訪問的客戶端(ip或者主機地址)。如果host使用*,代表所有的用戶(客戶端)都可以進行訪問

創(chuàng)建用戶

理論上講,可采用兩種方案創(chuàng)建用戶:

1、直接使用root用戶在mysql.user表中插入記錄(不推薦)

2、專門用于創(chuàng)建用戶的SQL指令

基本語法:create user 'username'@'host' identified by ‘password’;

?

username:你將創(chuàng)建的用戶名

host:指定該用戶在哪個主機上可以登陸,如果是本地用戶可用localhost,如果想讓該用戶可以從任意遠程主機登陸,可以使用通配符%。通配符%可以用作整個主機名,或者用作主機名的一部分。如果主機名為空,表示是一個通配符,但比%通配符通配范圍低。

password:該用戶的登陸密碼,密碼可以為空,如果為空則該用戶可以不需要密碼登陸服務器

?

查看mysql.user是否存在新增的用戶

??

簡化創(chuàng)建用戶

?

?

刪除用戶

注意:mysql中user是帶著host本身的(具有唯一性)

基本語法:drop user 'username'@'host';

?

修改用戶密碼

Mysql中提供了多種修改的方式,基本上都必須使用對應提供的一個系統(tǒng)函數(shù):password(),需要靠該函數(shù)對密碼進行加密處理。

?

使用專門的修改密碼的指令

基本語法: set password for 'username'@'host' = ‘newpassword’;

如果是當前用戶:set password = ‘newpassword’;

?

?

權(quán)限管理

在mysql中將權(quán)限管理分為三類:

1、數(shù)據(jù)權(quán)限:增刪改查(select、update、delete、insert)

2、結(jié)構(gòu)權(quán)限:結(jié)構(gòu)操作(create、drop)

3、管理權(quán)限:權(quán)限管理(create user、grant、revoke):通常只給管理員如此權(quán)限

授予權(quán)限:grant

將權(quán)限分配給指定的用戶:

基本語法:grant 權(quán)限列表 on 數(shù)據(jù)庫/*.表名/* to 用戶 [with grant option];

權(quán)限列表:使用逗號分隔,但是可以使用all privileges 代表全部權(quán)限

數(shù)據(jù)庫.表名:可以是單表(數(shù)據(jù)庫名字.表名),可以是具體某個數(shù)據(jù)庫(數(shù)據(jù)庫.*),也可以是整庫(*.*)

mysql中只有with grant option,對A用戶進行的授權(quán),A可以授予給其他用戶,當收回對A的授權(quán)時,A授予給其他用戶的權(quán)限不會被級聯(lián)收回。注意with grant option也可以被授予給其他用戶。

?

?

具體權(quán)限查看:單表權(quán)限只能看到數(shù)據(jù)庫中的一張表

Show語句的一個變體用來查看用戶被授予的權(quán)限:

show grants for user;

?

?

取消權(quán)限:revoke

權(quán)限回收:將權(quán)限從用戶手中收回。

?

基本語法:revoke 權(quán)限列表/all privileges on 數(shù)據(jù)庫/*.表名/* from 用戶;

授予權(quán)限時如果有with grant option必須再執(zhí)行

revoke grant option from 'test1'@'localhost';

完整才能回收其權(quán)限。

?

權(quán)限回收,同樣不需要刷新,用戶馬上就會感受到

?

?

刷新權(quán)限:flush

(1)Flush;刷新,將當前對用戶的權(quán)限操作,進行一個刷新,將操作的具體內(nèi)容同步到對應的表中。此操作需要在mysql命令提示符下執(zhí)行(需要以管理員身份登錄)。

基本語法:flush privileges;

(2)mysqladmin flush-privileges

(3)mysqladmin reload

(2)和(3)需要在操作系統(tǒng)環(huán)境下運行。

最后,mysql服務器將在重新啟動時重新載入授權(quán)表。

當用戶下次再連接時,全局級別權(quán)限將再次被檢查。當下一個use語句觸發(fā)時,數(shù)據(jù)庫權(quán)限將被檢查,而表級別和列級別權(quán)限將在用戶下次請求時檢查。

密碼丟失找回

如果忘記了root用戶密碼,就需要去找回或者重置root用戶密碼

?

https://blog.csdn.net/gupao123456/article/details/80766154

轉(zhuǎn)載于:https://www.cnblogs.com/sun-yanglu/p/9612806.html

總結(jié)

以上是生活随笔為你收集整理的MySQL数据库8(十八)用户权限管理的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。