如何防止使用者訪問 MySQL 中的特定架構?
如要防止使用者訪問特定架構,需要使用 delete 命令。以下是語法 -
DELETE FROM mysql.db WHERE Db IN("yourSpecificSchema","yourSpecificSchema\_%")
AND User = "yourUserName" AND Host = "yourHostName";讓我們實現上述語法,以防止使用者訪問特定架構。首先,我們從 MySQL.user 表中顯示所有使用者和主機。
mysql> select user,host from MySQL.user;
這將產生以下輸出 -
+------------------+-----------+ | user | host | +------------------+-----------+ | Bob | % | | User2 | % | | mysql.infoschema | % | | mysql.session | % | | mysql.sys | % | | root | % | | @UserName@ | localhost | | Adam Smith | localhost | | Chris | localhost | | David | localhost | | James | localhost | | John | localhost | | John Doe | localhost | | User1 | localhost | | am | localhost | | hbstudent | localhost | | mysql.infoschema | localhost | | mysql.session | localhost | +------------------+-----------+ 18 rows in set (0.00 sec)
在此,我們將阻止使用者“Chris”和主機名“localhost”訪問名為“sample”的特定架構 -
mysql> DELETE FROM mysql.db WHERE Db IN("sample","sample\_%") AND User="Chris" AND Host="localhost";
Query OK, 0 rows affected (0.00 sec)在執行上述查詢後,需要使用 FLUSH。
mysql> FLUSH PRIVILEGES; Query OK, 0 rows affected (0.06 sec)
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 語言
C++
C#
MongoDB
MySQL
Javascript
PHP