MySQL установлен на моем ноутбуке, и он работает нормально, за исключением того, что мне разрешено входить в систему, не поставляя пароль root. Я также могу войти в систему, указав пароль root. Если входящий пароль не совпадает, он запрещает доступ. Пароль root был изменен на мой выбор, когда я изначально установил MySQL. Я только что заметил логины без пароля сегодня.
Итак, мне нужно остановить доступ к учетной записи root, если пароль не указан. Я пробовал до сих пор reset пароль root:
mysqladmin -u root password TopSecretPassword
Затем я вошел в консоль и выписал:
mysql> flush privileges; exit;
Я все еще могу войти в MySQL с помощью:
%> mysql -u {enter}
Как остановить это поведение?
ДОПОЛНИТЕЛЬНЫЕ ДЕТАЛИ:
%> mysql -u {enter} mysql>SELECT USER(), CURRENT_USER(); > [email protected], [email protected] mysql>SELECT COUNT(*) FROM mysql.users WHERE user='root' AND password=''; > COUNT(*) > 0 mysql>SELECT COUNT(*) FROM mysql.users WHERE user=''; > COUNT(*) > 0 mysql>SELECT COUNT(*) FROM mysql.users WHERE user='root'; > COUNT(*) > 1 %> vi /etc/my.cnf /skip-grant-tables > E486: Pattern not found: skip-grant-tables