«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Восстановить контроль над пользователем root в MySQL

Восстановить контроль над пользователем root в MySQL

Опубликовано 26 августа 2024 г.
Просматривать:475

Retake control of the root user in MySQL

Когда вы впервые установили MySQL, вы не можете войти в систему без пароля.
Вам следует добавить следующую строку в my.cnf для входа в систему без пароля.

skip-grant-tables

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

Как вернуть контроль над пользователем root в MySQL

Шаг 1. Подключитесь к MySQL

mysql

Шаг 2. Использование основной базы данных

use mysql;

Шаг 3. Переопределите пароль пользователя root

UPDATE user SET `authentication_string` = PASSWORD('myNuevoPassword') WHERE `User` = 'root';

Осторожность
Если вы не можете выполнить команду, вам следует проверить столбец аутентификации_строка таблицы mysql.user.

SELECT User, authentication_string  FROM mysql.user\G
*************************** 1. row ***************************
                 User: mysql.infoschema
authentication_string: $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED
*************************** 2. row ***************************
                 User: mysql.session
authentication_string: $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED
*************************** 3. row ***************************
                 User: mysql.sys
authentication_string: $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED
*************************** 4. row ***************************
                 User: root
W&2-*D:1FsLlMJEFsvaZNpaAlnJDEyTNo2QO7Eu7P0rhe10psBsC
4 rows in set (0.00 sec)

И вы выполняете следующую команду.

UPDATE user SET `authentication_string` = 'myNuevoPassword' WHERE `User` = 'root';

Шаг 4. Покажите таблицу mysql.user, если вы можете изменить пароль root

SELECT User, authentication_string  FROM mysql.user\G
*************************** 1. row ***************************
                 User: mysql.infoschema
authentication_string: $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED
*************************** 2. row ***************************
                 User: mysql.session
authentication_string: $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED
*************************** 3. row ***************************
                 User: mysql.sys
authentication_string: $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED
*************************** 4. row ***************************
                 User: root
authentication_string: ZAQ$2wsx2408
4 rows in set (0.00 sec)

Шаг 5. Удалите строку из my.cnf

skip-grant-tables

Шаг 6. Перезапустите службу MySQL

sudo systemctl restart mysqld

Шаг 7. Подключитесь к MySQL с паролем

mysql -u root -p
Enter password: [new password]

mysql> 

Когда вам нужно выполнить это действие, действуйте осторожно!

Заявление о выпуске Эта статья воспроизведена по адресу: https://dev.to/kyotanakada/retake-control-of-the-root-user-in-mysql-308h?1 Если есть какие-либо нарушения, свяжитесь с [email protected], чтобы удалить это
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3