首頁 >資料庫 >mysql教程 >mysql如何查看使用者權限

mysql如何查看使用者權限

coldplay.xixi
coldplay.xixi原創
2020-09-03 14:24:259692瀏覽

mysql查看使用者權限的方法:1、查看MySQL某個使用者的權限,語法為【show grants for 使用者名稱】;2、使用資料庫的授權方式,程式碼為【GRANT 6edd86b17b9eea41baa88c90cbdefa74 ON 770fb63d719354862de717dc0c00e63e..】。

mysql如何查看使用者權限

【相關學習推薦:#mysql教學##(影片)】

mysql查看使用者表權限的方法:

(1)查看MySQL某個使用者的權限:

#show grants for 使用者名稱

MariaDB [neutron]> show grants for root;

(2)用GRANT指令建立新使用者、設定使用者密碼、並增加使用者權限。 其格式如下:

mysql> GRANT <privileges> ON <what>  TO <user> [IDENTIFIED BY "<password>"]  [WITH GRANT OPTION];

例如:

GRANT ALL PRIVILEGES ON neutron.* TO &#39;neutron&#39;@&#39;localhost&#39;   IDENTIFIED BY &#39;NEUTRON_DBPASS&#39;;
GRANT ALL PRIVILEGES ON neutron.* TO &#39;neutron&#39;@&#39;%&#39;   IDENTIFIED BY &#39;NEUTRON_DBPASS&#39;;

  • neutron.* :表示neutron資料庫中的所有表,授權前neutron庫要先創建好。如果用*.*表示所有庫的所有表

  •  'neutron'@'localhost':表示創建的用戶名neutron ,@後面表示允許存取數據的客戶端,'localhost' 表示本機,'%'表示所有主機

  • [IDENTIFIED BY "cb1ebc435675187bdcfb539b370c2e37"]:是設定neutron使用者密碼

(3)資料庫的授權方式

GRANT <privileges> ON <what>  TO <user> [IDENTIFIED BY "<password>"]  [WITH GRANT OPTION];

6edd86b17b9eea41baa88c90cbdefa74是一個用逗號分隔的你想要賦予的MySQL使用者權限的清單。

你可以指定的權限可以分為三種類型:

1)資料庫/資料表/資料列權限:

  • Alter: 修改已存在的資料表(例如增加/刪除列)和索引。

  • Create: 建立新的資料庫或資料表。

  • Delete: 刪除表格的記錄。

  • Drop: 刪除資料表或資料庫。

  • INDEX: 建立或刪除索引。

  • Insert: 增加表格的記錄。

  • Select: 顯示/搜尋表的記錄。

  • Update: 修改表格中已存在的記錄。

  • mysql>grant select,insert,delete,create,drop  on *.* (或nova.*其它库或表) to &#39;用户名&#39;@&#39;localhost&#39;  identified by ‘密码’;
2)全域管理MySQL使用者權限:

  • #file: 在MySQL伺服器上讀取和寫入檔案。

  • PROCESS: 顯示或殺死屬於其它使用者的服務執行緒。

  • RELOAD: 重載存取控製表,刷新日誌等。

  • SHUTDOWN: 關閉MySQL服務。

3)特別的權限:

  • ALL: 允許做任何事(和root一樣)。

  • USAGE: 只允許登入--其它什麼也不允許做。

在進行開發和實際應用中,使用者不應該只用root使用者進行連接資料庫,雖然使用root使用者進行測試時很方便,但會為系統帶來重大安全隱患,也不利於管理技術的提升。

如一個只進行資料插入的使用者不應賦予其刪除資料的權限。 MySql的使用者管理是透過User表來實現的,新增使用者常用的方法有兩個,一是在User表插入對應的資料行,同時設定對應的權限;二是透過GRANT指令建立具有某種權限的用戶。其中GRANT的常用用法如下:  

grant all on mydb.* to NewUserName@HostName identified by “password”;  
grant usage on *.* to NewUserName@HostName identified by “password”;  
grant select,insert,update on mydb.* to NewUserName@HostName identified by “password”;  
grant update,delete on mydb.TestTable to NewUserName@HostName identified by “password”;

若要給此使用者賦予他在對應物件上的權限的管理能力,可在GRANT後面新增

WITH GRANT OPTION選項。

而對於用插入User表新增的用戶,Password欄位應用PASSWORD 函數進行更新加密,以防不軌之人竊看密碼。

對於那些已經不用的使用者應給予清除,權限過界的使用者應及時回收權限,回收權限可以透過更新User表相應字段,也可以使用REVOKE操作。 

想了解更多程式設計學習,請關注

php訓練欄位!

#

以上是mysql如何查看使用者權限的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn