Промяна (забравен) MySQL парола потребител на Linux от командния ред

Задачата е съвсем ясно, и е описан десетки пъти на други места, но аз реших да направя ръководство за себе си по примера на Ubuntu 14.04. Ще започна с най-сложната случая - промяна забравена парола корен.







Случай 1. Необходимо е да се възстановяване на забравена парола корен.

Logon като корен. Спри сървъра MySQL, ако е пуснат. Това може да стане или чрез командата услуга:

# В MySQL спирка

или спиране на команда:

Последната команда е удобно, тъй като на два пъти табу след спирката, можете да видите списък на понастоящем се изпълнява на сървъра: MySQL, ако записът не е сред тях, това означава, че сървърът MySQL не работи и няма нищо да спре.

Сега стартирате MySQL-сървър в опция безопасен режим # 045; # 045; пропускат-грантови таблици:

# Mysqld_safe --skip-грант-маси
[1] 2515
# 151111 13:31:50 mysqld_safe Не мога да вляза на грешка дневник и Syslog в същото време. Премахване на всички опции за конфигуриране --log-грешка за --syslog да влезе в сила.
151 111 13:31:50 mysqld_safe Влизането на "/var/log/mysql/error.log".
151111 13:31:51 mysqld_safe започне Mysqld демон с бази данни от / Var / ПЬ / MySQL

След като натиснете Enter и да видим резултатите от командата отидем в режим на готовност, което можете да получите чрез натискане на Enter. По този начин, ние ще стартира сървъра във фонов режим (амперсанд край на линията) и обратно в конзолата.

В горния пример, сървърът се оплаква, че не може едновременно да пишат в собствения си error.log и Syslog. Тя може да бъде пренебрегната, или точка при стартиране # 045; # 045; прескачане-Syslog.







Ако сте забравили да сложат амперсанд в края на линията, сървърът ще работи в режим на преден план и чрез натискане на Enter, не можете да се върнете към конзолата. За сървъра към фон (фон) и да се върне на конзолата да натиснете Ctrl-Z.

Ще проверите състоянието на сървъра:

# Pgrep -L MySQL
2515 mysqld_safe
2875 Mysqld

Тук Mysqld демон работи като mysqld_safe процес дете.

Сега можем да се свържете със сървъра MySQL под корен ома без парола:

# Mysql -uroot
Добре дошли в монитора MySQL. Команди завършват с; или \ г.
.
Тип "помощ;" или '\ ч "за помощ. '\ В "Тип за изчистване на актуалната декларация за въвеждане.
MySQL>

Отиди в базата данни под името «MySQL», където се съхраняват данните за всеки потребител:

MySQL> използване MySQL;
Информация за четенето на маса за завършване на имена на таблици и колони
Можете да изключите тази функция, за да получите по-бързо стартиране с -А

база данни променило
MySQL>

Задаване на нова парола за корен, се актуализира на пълномощията и за излизане от сесията:

MySQL> актуализация на потребителя зададете парола = ПАРОЛА ( "XXXXXXXXX"), където Потребителят = 'корен';
Query OK, 4 реда, засегнати (0.00 сек)
Редове съвпадение: 4 Changed: 4 предупреждения: 0

MySQL> изплакнете привилегии;
Query OK, 0 редове засегнати (0.00 сек)

MySQL> откажат
Чао

Сега трябва да се измъкнем от безопасен режим и рестартирате сървъра MySQL, както обикновено. Не можех да го направя по традиционния начин Ubuntu, като използвате командата услуга и да се спре, така че да убие процеси с помощта на терминални сигнали:

# Killall -9 mysqld_safe Mysqld
[1] + убити mysqld_safe --skip издаването маси
# Старт MySQL

В заключение, коренът може да промени забравена парола нормален потребител, по същия начин, но това е достатъчно и стандартен режим на работа MySQL-сървър.

Случай 2. Парола MySQL е известно, но това трябва да се промени.

Това е най-простия случай, за който, по-специално, при условие mysqladmin полезност. Синтаксисът за единична линия команда за промяна на текущата потребителска парола Антон следното:

# Mysqladmin -u Антон -p current_pass парола new_pass

# Mysqladmin -uanton -pcurrent_pass парола new_pass