MySQL權限如下表
| 權限名字 | 權限說明 | Context |
|---|---|---|
| CREATE | 允許創建新的數據庫和表 | Databases, tables, or indexes |
| DROP | 允許刪除現有數據庫、表和視圖 | Databases, tables, or views |
| GRANT OPTION | 能夠把自己獲得的權限轉贈給其他用戶一個副本 | Databases, tables, or stored routines |
| LOCK TABLES | 允許使用顯式鎖表的語句鎖表,前提是你必須有SELECT權限 | Databases |
| REFERENCES | MySQL 5.7.6之前引用特權是未使用的。5.7.6,創建一個外鍵約束需要引用父表的特權。 | Databases or tables |
| EVENT | The EVENT privilege is required to create, alter, drop, or see events for the Event Scheduler. | Databases |
| ALTER | 允許修改權限或重命名表 | Tables |
| DELETE | 允許從表中或數據庫中刪除行 | Tables |
| INDEX | 允許創建或刪除索引 | Tables |
| INSERT | 允許在表和數據庫中插入行 | Tables or columns |
| SELECT | 允許在表和數據庫這查詢行 | Tables or columns |
| UPDATE | 允許在表和數據空中更新行 | Tables or columns |
| CREATE TEMPORARY TABLES | 允許創建和使用臨時表 | Tables |
| TRIGGER | 允許使用觸發器相關,前提是你必須擁有這個表的CREATE、DROP、EXECUTE或者Display權限 | Tables |
| CREATE VIEW | 允許使用CREATE VIEW語句 | Views |
| SHOW VIEW | 允許使用SHOW VIEW語句 | Views |
| ALTER ROUTINE | ALTER ROUTINE允許你修改存儲過程(過程或函數)前提是你需要在存儲過程上擁有ALTER或DROP權限 | Stored routines |
| CREATE ROUTINE | ALTER ROUTINE允許你創建存儲過程(過程或函數)前提是你需要在存儲過程上擁有ALTER或DROP權限 | Stored routines |
| EXECUTE | 允許你執行存儲過程(過程或函數) | Stored routines |
| FILE | 文件讀寫權限允許你文件在服務器主機上使用LOAD DATA INFILE and SELECT 語句以及LOAD DATA()函數 | File access on server host |
| CREATE TABLESPACE | 允許創建表空間,前提是你需要CREATE、ALTER OR DROP tablespaces 以及屬於log file 組 | Server administration |
| CREATE USER | 允許使用ALTER USER, CREATE USER, DROP USER, RENAME USER, and REVOKE ALL PRIVILEGES 語句 | Server administration |
| PROCESS | 允許使用SHOW PROCESSLIST or mysqladmin processlist看到線程屬於其他賬戶,你總能看到自己的線程。PROCESS權限還允許使用SHOW ENGINE語句 | Server administration |
| PROXY | Server administration | |
| RELOAD | 允許使用FLUSH語句,以及mysqladmin命令中對於FLUSH的操作例如:flush-hosts, flush-logs, flush-privileges, flush-status, flush-tables, flush-threads, refresh, and reload. | Server administration |
| REPLICATION CLIENT | 是否有權限去請求復制相關主數據庫產生的事件的,允許顯示的使用SHOW MASTER STATUS, SHOW SLAVE STATUS, and SHOW BINARY LOGS語句 | Server administration |
| REPLICATION SLAVE | 是否能夠創建連接以復制的方式,連接至數據庫服務器端 | Server administration |
| SHOW DATABASES | 允許使用SHOW DATABASES來查看所有數據庫列表,如果沒有這個權限則只能查看規定數據庫 | Server administration |
| SHUTDOWN | 允許使用SHUTDOWN語句,mysqladmin shutdown命令,以及mysql_shutdown()API函數 | Server administration |
| SUPER | 超級特權可以用於終止其他會話或改變服務器運行。屬於特別高級別的一類權限 | Server administration |
| USAGE | 無權限,當您想要創建一個沒有權限的用戶時,可以指定USAGE | Server administration |
| ALL PRIVILEGES | 所有權限: ALL PRIVILEGES,可以簡寫為ALL | Server administration |
授權方式:
GRANT 權限名字(多個權限用","號隔開) ON 數據庫名.表名 TO '用戶名'@'允許登錄的ip地址' [IDENTIFIED BY '密碼'];
例子:
查看用戶獲得的授權:
SHOW GRANTS FOR 'USERNAME'@'HOST';
