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

歡迎訪問 生活随笔!

生活随笔

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

数据库

mysql里guest用户_MySQL用户权限分配

發布時間:2025/3/21 数据库 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql里guest用户_MySQL用户权限分配 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

mysql> grant 權限1,權限2,…權限n on 數據庫名稱.表名稱 to 用戶名@用戶地址 identified by ‘連接口令’;

權限1,權限2,…權限n代表select,insert,update,delete,create,drop,index,alter,grant,references,reload,shutdown,process,file等14個權限。當權限1,權限2,…權限n被all privileges或者all代替,表示賦予用戶全部權限。

當數據庫名稱.表名稱被*.*代替,表示賦予用戶操作服務器上所有數據庫所有表的權限。

用戶地址可以是localhost,也可以是ip地址、機器名字、域名。也可以用’%'表示從任何地址連接。

‘連接口令’不能為空,否則創建失敗。

增加新用戶

格式:grant 權限 on 數據庫.* to 用戶名@登錄主機 identified by "密碼"

如,增加一個用戶user1密碼為password1,讓其可以在本機上登錄, 并對所有數據庫有查詢、插入、修改、刪除的權限。首先用以root用戶連入mysql,然后鍵入以下命令:

grant select,insert,update,delete on *.* to user1@localhost Identified by "password1";

如果希望該用戶能夠在任何機器上登陸mysql,則將localhost改為"%"。

如果你不想user1有密碼,可以再打一個命令將密碼去掉。

grant select,insert,update,delete on mydb.* to user1@localhost identified by "";

MySQL的權限系統圍繞著兩個概念:

1:認證->確定用戶是否允許連接數據庫服務器

2:授權->確定用戶是否擁有足夠的權限執行查詢請求等。

顯然從上面可知,如果認證不成功的話,哪么授權肯定是無法進行的。在這里我們要關注兩個表,分別是在MySQL數據庫中user表和db表。

user表在某種程度上是獨一無二的,因為它是唯一一個在權限請求的認證和授權階段都起作用的表,也是唯一一個存數MySQL服務器相關權限的權限表。在認證階段,它只是負責為用戶授權訪問MySQL服務器,確定用戶每小時的最大連接數和最大并發數;在授權階段,user確定允許訪問服務器的用戶是否被賦予了操作數據庫的全局權限,確定用戶每小時的最大查詢數和更新數。

db表用于為每個用戶針對每個數據庫賦予權限。具體的可以查看db的字段。

用戶和權限管理命令:

create user :用于創建新的用戶賬戶(從5.0版本開始有這個命令),在創建這個用戶的時候不分配任何權限,需要在創建之后通過grant命令來給改用戶分配相應的權限。

eg:create user guest@localhost identified by '123456';

grant select on mydb.* to guest@localhost;

drop user:刪除一個用戶賬戶(注意在4.1.1版本之前只能刪除沒有任何權限的賬戶,5.0.2之后可以刪除任何賬戶)

eg:drop user guest;

rename user:可以實現重命名一個用戶賬號。

grant:用于管理訪問權限,也就是給用戶賬號授權。當然它同樣可以創建一個新的用戶賬戶。

eg:grant select, insert, update, delete on new_db.* to guest@'%' identified by '88888888';

grant 權限 on 數據庫.表 to 用戶 @ 訪問方式 identified by 密碼

grant select on mydb.* to guest@localhost identified by '123456';

BTW:如果需要一個空密碼或者無密碼的賬戶,必須先用Create User命令,然后通過

grant來分配權限。如果如下操作:

grant all privileges on mydb.* to visitor@'%' ;而在數據庫user表中沒有先創建visitor

用戶,則會發生1133錯誤"Can't find any matching row in the user table"。grant只能創

有密碼的賬戶。

《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

總結

以上是生活随笔為你收集整理的mysql里guest用户_MySQL用户权限分配的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。