首頁 > 資料庫 > mysql教程 > Mysql8怎麼創建使用者及賦權

Mysql8怎麼創建使用者及賦權

PHPz
發布: 2023-05-30 16:55:06
轉載
6376 人瀏覽過

1、進入mysql

mysql -uroot -p
登入後複製

2、建立使用者

create user 'testuser1'@'%' identified by '123456';
登入後複製

這裡表示建立一個不限制ip登入的使用者testuser1

該使用者的密碼是123456

%代表不限制ip登入

刷新權限,每一次權限變更後都刷新一下

flush privileges;
登入後複製

在本地新連線都可以登入該使用者了

Mysql8怎麼創建使用者及賦權

這時候你開啟會發現只有information_schema一個資料庫

Mysql8怎麼創建使用者及賦權

#3、給使用者賦權

grant all privileges on test_grant.* to 'testuser1'@'%' with grant option;
登入後複製

這裡表示給使用者testuser1賦予資料庫test_grant(這是我之前建立好的資料庫)中所有表格的所有權限

with grant option表示該使用者可以給其他使用者賦權,但不能超過該使用者的權限

此時查看,使用者testuser1多了一個test_grant資料庫

Mysql8怎麼創建使用者及賦權

#這裡的all privileges 可換成select,insert,update,delete,drop,create等

4、檢視使用者權限

show grants for 'testuser1'@'%';
登入後複製

Mysql8怎麼創建使用者及賦權

5、撤銷使用者權限

revoke all privileges on test_grant.* from 'testuser1'@'%';
登入後複製

這裡表示撤銷使用者testuser1對資料庫test_grant的所有操作權限

注意:這裡如果這麼寫,你會發現你打開還是有資料庫test_grant(不過你無法操作該資料庫了),這是因為我之前創建的時候用到了with grant option,因為all privileges 是除了with grant option的所有權限

執行下列語句回收使用者所有權限即可

revoke all privileges,grant option from 'testuser1'@'%';
登入後複製

6、刪除使用者

drop user 'testuser1'@'%';
登入後複製

7、查詢所有使用者及其權限

SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';') AS query FROM mysql.user;
登入後複製

也可以這樣

SELECT User, Host FROM mysql.user;
登入後複製

附:查看使用者權限

show grants for ‘#userName'@'#host';
登入後複製

#userName 代表使用者名稱

#host 代表存取權限,如下

  • #%代表通配所有host位址權限(可遠端存取)

  • localhost為本機權限(不可遠端存取)

  • 指定特殊Ip存取權限如10.138.106.102

#????本狗要查看的是testUser

show grants for 'testUser'@'%';
登入後複製

Mysql8怎麼創建使用者及賦權

#

以上是Mysql8怎麼創建使用者及賦權的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:yisu.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板