Mysql中五級許可權小結

2022-03-18 23:09:09 字數 1068 閱讀 5054

mysql的許可權控制主要是通過mysql庫下的db,user,host,table_priv,column_priv表控制。

由於許可權資訊資料量比較小,所以mysql在啟動時會將所有的許可權訊息載入到記憶體。

但是如果是通過grant,revoke或drop user,create user等命令這修改許可權的話就不需flush

mysql中許可權一共有五級,按照大小順序為:global > database > table > column, routine level是對儲存過程或函式操作的

①, global level

全域性許可權控制,所有許可權資訊儲存在mysql.user表中。global level是針對整個mysqld的。

grant select,create table on *.* to u1 identified by password;

②, database level

作用域為指定整個資料庫中的所有物件。

grant select,create table on databasename.* to u1 identified by password;

user database1;

grant drop on * to 'u1'@'%', 'u1'@localhost,u2@'%';

③,table level

作用域為指定特定使用者下的特定表

grant index on test.t1 to 'u1'@localhost

④, column level

作用域為特定庫下特定表中的某些列。

column級別的許可權有insert,select,update。授權方式: grant select(c1,c2,c3) on test.t1 to 'u1'@localhost;

⑤, routine level

routine level的許可權主要只有execute和alter routine兩種,主要針對的物件是procedure和function這兩種物件,在授權routine level許可權時,需要指定資料庫和相關物件。

grant execute on test.p1 to 'u1'@'%';

關於Mysql許可權表的使用小結

前幾天遇到乙個問題。我的msql許可權表 mysql.user 的內容是這樣的 localhsot user password root 81f5e21e35407d884a6cd4a731aebfb6af209e1b bogon root 81f5e21e35407d884a6cd4a731aeb...

關於Mysql許可權表的使用小結

關於mysql許可權表的使用小結 前幾天遇到乙個問題。我的msql許可權表 mysql.user 的內容是這樣的 www.2cto.com localhsot user password root 81f5e21e35407d884a6cd4a731aebfb6af209e1b bogon root...

MySQL中許可權管理

mysql許可權系統通過下面兩個階段進行認證 對連線的使用者進行身份認證,合法的使用者通過認證,不合法的使用者拒絕連線。對通過認證的合法使用者授予相應的許可權,使用者可以通過再這些許可權範圍內對資料庫做相應的操作。在許可權訪問過程中,主要涉及到mysql資料庫下user表和db表。user表的資料結...