mysql 數據庫中可以使用 drop user 語句來刪除一個或多個用戶賬號以及相關的權限。
推薦課程:MySQL教程。
mysql刪除用戶的方法:
語法格式:
DROP USER <用戶名1> [ , <用戶名2> ]…
使用 DROP USER 語句應該注意以下幾點:
DROP USER 語句可用于刪除一個或多個 MySQL 賬戶,并撤銷其原有權限。
使用 DROP USER 語句必須擁有 MySQL 中的 MySQL 數據庫的 DELETE 權限或全局 CREATE USER 權限。
在 DROP USER 語句的使用中,若沒有明確地給出賬戶的主機名,則該主機名默認為“%”。
注意:用戶的刪除不會影響他們之前所創建的表、索引或其他數據庫對象,因為 MySQL 并不會記錄是誰創建了這些對象。
【實例】使用 DROP USER 語句刪除用戶’jack’@’localhost’。輸入的 SQL 語句和執行過程如下所示。
mysql> DROP USER 'jack'@'localhost';
在 Windows 命令行工具中,使用 jack 和密碼 lion 登錄數據庫服務器,發現登錄失敗,說明用戶已經刪除,如下所示。
C:UsersUSER>mysql -h localhost -u jack -p Enter password: **** ERROR 1045 (28000): Access denied for user 'jack'@'localhost' (using password: YES)
擴展:
?drop
drop user XXX;
刪除已存在的用戶,默認刪除的是’XXX’@’%’這個用戶,如果還有其他的用戶如’XXX’@’localhost’等,不會一起被刪除。如果要刪除’XXX’@’localhost’,使用drop刪除時需要加上host即drop user ‘XXX’@’localhost’。
delete
delete from user where user='XXX' and host='localhost';
其中XXX為用戶名,localhost為主機名。
區別:
drop不僅會將user表中的數據刪除,還會刪除其他權限表的內容。而delete只刪除user表中的內容,所以使用delete刪除用戶后需要執行FLUSH PRIVILEGES;刷新權限,否則下次使用create語句創建用戶時會報錯。