Я только что установил сервер MySQL Community (5.5.8) в Mac OS X 10.6.6.
Я следовал правилам безопасной установки (назначить пароль для root, удалить анонимные учетные записи)и т. д.), однако есть одна учетная запись пользователя, которую я не могу DROP:
mysql> select host, user from mysql.user;
+--------------------------------+------+
| host | user |
+--------------------------------+------+
| 127.0.0.1 | root |
| ::1 | root |
| My-Computer-Hostname.local | |
| My-Computer-Hostname.local | root |
| localhost | root |
| localhost | web |
+--------------------------------+------+
6 rows in set (0.00 sec)
mysql> drop user ''@'My-Computer-Hostname.local';
Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
mysql> select host, user from mysql.user;
+--------------------------------+------+
| host | user |
+--------------------------------+------+
| 127.0.0.1 | root |
| ::1 | root |
| My-Computer-Hostname.local | |
| My-Computer-Hostname.local | root |
| localhost | root |
| localhost | web |
+--------------------------------+------+
6 rows in set (0.00 sec)
mysql>
Как видите, MySQL не сообщает об ошибках при выполнении команды DROP USER, но фактически не удаляетuser!
Я также пытался удалить пользователя из phpMyAdmin (3.3.9), и это дало те же результаты (т. е. сообщение об успешном завершении, сообщений об ошибках нет, пользователь не удален).Я исследовал это, и некоторые люди предполагают, что GRANT может блокировать команду DROP USER, однако у пользователя нет привилегий GRANT:
mysql> SHOW GRANTS FOR ''@'My-Computer-Hostname.local';
+-----------------------------------------------------------+
| Grants for @my-computer-hostname.local |
+-----------------------------------------------------------+
| GRANT USAGE ON *.* TO ''@'my-computer-hostname.local' |
+-----------------------------------------------------------+
1 row in set (0.00 sec)
mysql> REVOKE GRANT OPTION ON *.* FROM ''@'My-Computer-Hostname.local';
ERROR 1141 (42000): There is no such grant defined for user '' on host 'my-computer-hostname.local'
После этого я снова попытался удалить пользователя, но этого не произошло.удалить / удалить пользователя либо.
Я проверил свои журналы ошибок MySQl, и в этом нет ничего необычного.
Руководство MySQL предлагает, что возможно удалить все анонимные учетные записи, поэтому почему я не могу удалить эту