MySQL中的deny是用于限制用戶訪問某些資源或執行某些操作的。通常情況下,我們可以通過創建用戶并賦予對應權限的方式來限制用戶對數據庫的操作,但是如果我們需要更為靈活的控制,就需要使用deny。
deny的語法比較簡單,就是使用GRANT命令來禁止指定用戶對指定資源進行操作。具體的語法如下:
mysql>GRANT SELECT ON mydb.* TO 'user'@'localhost' DENY EXECUTE ON mydb.* TO 'user'@'localhost';
上述語句表示,對于用戶'user'@'localhost',禁止其對mydb數據庫進行EXECUTE操作。
需要注意的是,deny是在grant的基礎上進行的,所以在使用deny之前需要先使用grant來授予指定用戶相應的權限。如果一個用戶既被授予了某個操作的權限,又被deny了該操作的權限,那么最終的結果是被禁止執行該操作。
另外,deny只對當前會話生效,也就是說對于其他客戶端的連接依然可以執行該操作。如果想要對所有連接都生效,需要在MySQL的配置文件中配置相應的權限控制規則。
下一篇db3轉換mysql