कारण: होस्ट मिसमैच ('%' बनाम 'localhost')
यह त्रुटि तब होती है जब आप 'user'@'localhost' ड्रॉप करने का प्रयास करते हैं, लेकिन उपयोगकर्ता 'user'@'%' के रूप में बनाया गया था। MySQL में उपयोगकर्ता की पहचान user@host जोड़ी से होती है।
उदाहरण
mysql> CREATE USER 'Jack'@'%' IDENTIFIED BY '1234'; mysql> SELECT user, host FROM mysql.user;
+------------------+-----------+ | user | host | +------------------+-----------+ | Jack | % | | ... | ... | +------------------+-----------+
गलत ड्रॉप प्रयास:
mysql> DROP USER 'Jack'@'localhost'; ERROR 1396 (HY000): Operation DROP USER failed for 'Jack'@'localhost'
सही ड्रॉप
mysql> DROP USER 'Jack'@'%';
सत्यापन:
mysql> SELECT user, host FROM mysql.user;
+------------------+-----------+ | user | host | +------------------+-----------+ | (Jack गायब है) | | +------------------+-----------+
सलाह: ड्रॉप करने से पहले SELECT user, host FROM mysql.user; से सही होस्ट जांचें।