Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

แก้ไข ERROR 1396: DROP USER ล้มเหลวใน MySQL

Error 1396 เกิดเมื่อพยายาม DROP USER 'user'@'localhost' แต่ User ถูกสร้างด้วย Host '%' (Wildcard ทุก Host)

สาเหตุและแก้ไข

สร้าง User ด้วย '%':

mysql> CREATE USER 'Jack'@'%' IDENTIFIED BY '1234';

พยายาม Drop ด้วย localhost → Error:

mysql> DROP USER 'Jack'@'localhost';
ERROR 1396 (HY000): Operation DROP USER failed for 'Jack'@'localhost'

วิธีแก้: Drop ด้วย Host เดิมที่สร้าง

mysql> DROP USER 'Jack'@'%'; -- สำเร็จ

ตรวจสอบ User ใน mysql.user:

mysql> SELECT user, host FROM mysql.user;

หลักการ: User ใน MySQL ถูกระบุโดยคู่ user@host ต้อง Drop ด้วย Host เดิมที่ CREATE ไว้