Назад | Перейти на главную страницу

Mysql теряет свой корневой пароль

У меня странная проблема: мой mysql автоматически теряет / сбрасывает пароль root. Под этим я подразумеваю, что он сбрасывает его до нуля. В этом месяце это произошло дважды. Меня беспокоит, что это может быть проблемой безопасности, поскольку данные открыты и ждут, пока кто-то не попробует пароль!

Вот версия:

mysql --version

mysql  Ver 14.14 Distrib 5.1.56, for redhat-linux-gnu (i386) using readline 5.1

Любая помощь будет оценена.

Обновить:

Вывод выбора пользователя, хоста, пароля из mysql.user; как это выглядит после сброса пароля

| root    | localhost                                     |

| root    | 127.0.0.1                                    |

|         | localhost          |                                           |
| admin   | localhost          | ################################# | (I have removed the actual output with #)

Таким образом, все пароли пустые, за исключением другого пользователя с именем «admin».

Этот ответ связан с фреймворком Ruby on Rails, в котором произошло такое поведение.

  1. есть mysql с пользователем root и паролем
  2. загрузите новый проект rails с использованием mysql "rails new projectname"
    -d mysql "
  3. не изменяйте config / database.yml - учетные данные по умолчанию для сервера: имя: root, пароль пуст
  4. rake db: появляется приглашение создать - запрашивает пароль root, а затем когда вы вводите пароль root

ответ находится в команде GRANT в строке 68 в Вот

в основном он выполнил команду GRANT с учетными данными, соответствующими вашей текущей базе данных .yml

1) Если можете, включите ведение журнала SQL.

log = /var/log/mysql/mysql.log

Это позволит вам отслеживать, когда пароль обновляется, и оттуда вы можете соотносить некоторые другие действия с другими журналами.

2) У вас запущен процесс администратора (например, Plesk) или что-то подобное? Вы можете проверить, не сбрасывает ли это логины по умолчанию.

3) Вы единственный, у кого есть доступ к серверу? Если нет, вы можете убедиться, что никто другой не имеет доступа к базе данных или, по крайней мере, не имеет пароля root для базы данных SQL.