Как найти пароли mysql
Привет на одном из моих серверов я установил много программного обеспечения, где для каждого приложения я создал имя пользователя и пароль. После этого эти приложения были запущены. Теперь я должен удалить эти приложения и установить последнюю версию программного обеспечения. Я должен в основном заставить все работать с нуля. Моя проблема в том, что я забыл имя пользователя и пароли для некоторых из этих баз данных. Существуют и другие пользовательские приложения, если я полностью удаляю mysql, а затем устанавливаю все, что будет работать для меня, но другие приложения перестанут работать. Есть ли способ, которым я могу восстановить или даже сбросить этот пароль? У меня есть учетная запись root в базе данных, поэтому, если восстановление невозможно, я, по крайней мере, хочу сбросить и удалить эти базы данных. Все учетные записи находятся на MySQL.
3 ответа
Вы не можете восстановить пароли, так как они хранятся в зашифрованном формате, но вы можете сбросить их, если у вас есть доступ к программе mysql с подходящими привилегиями.
Получить список пользователей, о которых MySQL знает, как это
mysql -u root -p
enter your root password
mysql select user,host from mysql.user;
+------------------+-------------+
| User | Host |
+------------------+-------------+
| root | localhost |
| user1 | localhost |
| user2 | localhost |
+------------------+-------------+
Теперь у вас есть список пользователей, вы можете установить пароли на то, что вы можете запомнить
mysql> set password for 'user2'@'localhost' = PASSWORD('SomeNewPassword');
Подробнее об этом в справочном руководстве по mysql
Если ваши программные приложения в основном CMS и другие подобные вещи, вы можете получить имя пользователя и пароль в конфигурационном файле каждого приложения. Я предполагаю, что вы используете конфигурацию LAMP, поэтому, вероятно, вы найдете эти файлы конфигурации в веб-каталогах php.
Из вашего описания не ясно, используете ли вы mysql в качестве системы аутентификации или используете ли вы ее только для хранения приложения db
Если у вас есть учетная запись root, вы можете легко получить имена пользователей из консоли mysql, используя следующий запрос SQL: select User from mysql.user;