解決 MySQL 中的錯誤 1396 (HY000):對“使用者”'@'localhost' 執行操作 DROP USER 失敗?
當您以 localhost 的身份刪除使用者而使用“%”建立使用者時,會發生此錯誤。
讓我們使用“%”建立使用者,並以 localhost 的身份刪除使用者。語法如下
CREATE USER 'yourUserName'@'%' IDENTIFIED BY 'yourPassword';
讓我們使用上述語法建立一個使用者。建立使用者的查詢如下
mysql> CREATE USER 'Jack'@'%' IDENTIFIED BY '1234'; Query OK, 0 rows affected (0.26 sec)
檢查使用者是否已成功建立
mysql> select user,host from MySQL.user;
以下是其輸出
+------------------+-----------+ | user | host | +------------------+-----------+ | Jack | % | | Manish | % | | User2 | % | | mysql.infoschema | % | | mysql.session | % | | mysql.sys | % | | root | % | | Adam Smith | localhost | | User1 | localhost | | am | localhost | +------------------+-----------+ 10 rows in set (0.00 sec)
檢視上述示例輸出,我們有一個名為“Jack”的使用者,主機為“%”。每當您嘗試以 localhost 的身份刪除使用者時,您會收到如下所示的錯誤
mysql> DROP USER 'Jack'@'localhost'; ERROR 1396 (HY000): Operation DROP USER failed for 'Jack'@'localhost'
讓我們刪除上述主機為“%”的使用者。查詢如下
mysql> DROP USER 'Jack'@'%'; Query OK, 0 rows affected (0.19 sec)
檢查使用者是否已從 MySQL.user 表中刪除。查詢如下
mysql> select user,host from MySQL.user;
以下是其輸出,顯示使用者 Jack 已成功刪除
+------------------+-----------+ | user | host | +------------------+-----------+ | Manish | % | | User2 | % | | mysql.infoschema | % | | mysql.session | % | | mysql.sys | % | | root | % | | Adam Smith | localhost | | User1 | localhost | | am | localhost | +------------------+-----------+ 9 rows in set (0.00 sec)
廣告