2014-12-01 2 views
0

Был пользователь [email protected], и я сделал это [email protected] с помощью mysql -u root -p команды:MySQL: хост для корневого пользователя изменен

`UPDATE mysql.user SET host=127.0.0.1 WHERE user=root;` 

Теперь я не могу вернуться к mysql -u root -p, даже если я делаю это так: mysql -u root -h 127.0.0.1 -p:

Ребята, какой лучший способ вернуть вещи?

+1

Эти команды ничего не меняют. Опишите ** точно **, что вы сделали. – fancyPants

+0

О, извините. Сделано, добавлены некоторые детали. –

ответ

0

Т.Л., д-р
Остановите сервер и запустить его снова с опцией --skip-grant-tables. Отмените изменения, остановите сервер и запустите его без указанной опции.


Остановите mysqld и перезапустите его с помощью опции -skip-grant-tables. Это позволяет любому подключиться без пароля и со всеми привилегиями. Поскольку это небезопасно, вы можете использовать -skip-grant-tables в сочетании с -skip-networking для предотвращения подключения удаленных клиентов.

Подключение к серверу туздЫ с этой командой:

shell> mysql 

Issue следующие утверждения в клиенте MySQL. Замените пароль на пароль, который вы хотите использовать.

mysql> UPDATE mysql.user SET host = 'localhost' 
    ->     WHERE User='root'; 
mysql> FLUSH PRIVILEGES; 

Оператор FLUSH сообщает серверу перезагружать таблицы предоставления в память, чтобы он замечал изменение пароля.

Смежные вопросы