如何刪除MySQL用戶帳戶
MySQL允許您創建多個用戶帳戶并授予適當的權限,以便用戶可以連接和管理數據庫。如果不再需要用戶帳戶,則最好刪除用戶權限或完全刪除用戶帳戶。
本教程介紹如何刪除MySQL/MariaDB用戶帳戶。
DROP USER語句
在MySQL中,您可以使用DROP USER語句刪除一個或多個用戶并分配權限。 該語句的一般語法如下:
DROP USER [IF EXISTS] USER_ACCOUNT [, USER_ACCOUNT] ...
例如,要刪除linux@localhost用戶帳戶登錄到MYSQL shell并運行:
mysql> DROP USER 'linux'@'localhost';
成功后,命令將返回:
Query OK, 0 rows affected (0.00 sec)
如下圖:
要在單個命令中刪除多個用戶帳戶,請運行DROP USER語句,然后運行要按空格分隔的要刪除的用戶:
DROP USER 'linux@localhost' 'linuxidc@localhost';
如果您嘗試刪除不存在的用戶帳戶并且未使用IF EXISTS子句,則該命令將返回錯誤。
如果您嘗試刪除的用戶當前已登錄,則不會關閉用戶會話,并且用戶將能夠運行查詢,直到會話結束。 會話關閉后,用戶將被刪除,它將無法再登錄MySQL服務器。
不會自動刪除用戶創建的數據庫和對象。
刪除MySQL用戶帳戶
本節分步說明如何列出和刪除MySQL用戶帳戶。
首先,使用root或其他管理用戶登錄MySQL shell。 為此,請鍵入以下命令:
sudo mysql
如果您使用舊的本機MySQL身份驗證插件以root身份登錄,請運行以下命令并在出現提示時輸入密碼:
mysql -u root -p
以下命令在MySQL shell中執行。
MySQL在mysql數據庫的用戶表中存儲有關用戶的信息。 使用以下SELECT語句獲取所有MySQL用戶帳戶的列表:
SELECT User, Host FROM mysql.user;
輸出應該如下所示:
- mysql> SELECT User, Host FROM mysql.user;
- +------------------+-----------+
- | User | Host |
- +------------------+-----------+
- | linuxmi | % |
- | linux | localhost |
- | linuxidc | localhost |
- | mysql.infoschema | localhost |
- | mysql.session | localhost |
- | mysql.sys | localhost |
- | root | localhost |
- +------------------+-----------+
- 7 rows in set (0.01 sec)
在MySQL中,用戶帳戶由用戶名和主機名部分組成。linuxidc@localhost 和 linuxidc@192.168.1.133是不同的用戶帳戶。
假設不再需要linuxidc@localhost用戶帳戶,我們希望將其刪除。
要刪除用戶運行:
DROP USER 'linuxidc'@'localhost'
輸出
Query OK, 0 rows affected (0.00 sec)
該命令將刪除用戶帳戶及其權限。
現在用戶已被刪除,您可能還想刪除與該用戶關聯的數據庫。
總結
要刪除MySQL用戶帳戶,請使用DROP USER語句,后跟要刪除的用戶的名稱。
如果您有任何問題或反饋,請隨時發表評論。
- CentOS 7.6下yum安裝MySQL 8.0版本圖文教程 https://www.linuxidc.com/Linux/2019-08/160316.htm
- 在Ubuntu 18.04上安裝帶有Nginx,MariaDB 10和PHP 7的WordPress https://www.linuxidc.com/Linux/2019-03/157315.htm
- 如何創建MySQL用戶帳戶和授予權限 https://www.linuxidc.com/Linux/2019-08/160321.htm






















