- Влезте като root в Windows или Unix-подобна (Unix, Linux или BSD) машина с MySQL сървъра.
- Спрете MySQL сървъра, като използвате някоя от следните команди:
Linux:
/etc/rc.d/init.d/mysql stop
FreeBSD:
/usr/local/etc/rc.d/mysql-server.sh stop
- Отворете скрипта за стартиране на mysql сървъра (т.е. mysql-server.sh или mysql, който е файлът, изпълняван за стартиране или спиране на MySQL сървър).
- ДОБАВЯНЕ –пропускане-грант-таблици до края на реда, който съдържа mysqld_safe команда като неин параметър.
- Стартирайте MySQL сървъра със следната команда:
Linux:
/etc/rc.d/init.d/mysql start
FreeBSD:
/usr/local/etc/rc.d/mysql-server.sh start
- Алтернативно, стартирайте MySQL сървъра директно и пропуснете редактирането със следната команда (ако използвате тази стъпка, не е необходимо да променяте скрипта за стартиране на MySQL):
mysqld_safe --skip-grant-tables &
В зависимост от вашата среда на пътя, може да се наложи да посочите правилната директория, където е mysqld_safe.
- Изпълнете следните команди, за да влезете като потребител на mysql и да се свържете с база данни за потребители/разрешения на mysql:
# mysql -u root mysql
- Изпълнете заявките за актуализиране, за да промените паролата за MySQL:
mysql> UPDATE user SET Password=PASSWORD('newrootpassword') WHERE User='root'; mysql> FLUSH PRIVILEGES;
Забележка:Заменете newrootpassword с новата root парола за MySQL сървъра. Необходими са привилегии за изтриване, за да действа незабавно смяната на паролата.
- Излезте от клиента на mysql база данни, като напишете exit .
- Спрете MySQL сървъра с команди, изброени в стъпка 2.
- Отворете редактирането на скрипта за стартиране на mysql сървъра в стъпка 3 отново и МАХНЕТЕ –skip-grant-tables параметър, който е добавен.
- Стартирайте MySQL сървър с помощта на команда от стъпка 5 или 6.
За потребителите на Redhat Linux, използвайте следните инструкции като root потребител на Redhat Linux машина:
- Спрете процеса на MySQL с помощта на команда:
# killall mysqld
- Стартирайте MySQL сървъра със следните опции:
# /usr/libexec/mysqld -Sg --user=root &
- Стартирайте MySQL клиента:
# mysql
Трябва да видите следното съобщение:
Добре дошли в MySQL монитора. Командите завършват с; или g.
Вашият идентификатор на MySQL връзка е 1 към версията на сървъра:3.xx.xxВъведете „help;“ или „h“ за помощ. Въведете „c“, за да изчистите буфера.
mysql>
- Използвайте mysql база данни:
mysql> USE mysql
Трябва да видите следното съобщение:
Четене на информация за таблицата за попълване на имената на таблица и колона
Можете да изключите тази функция, за да стартирате по-бързо с -AБазата данни е променена
- След това актуализирайте паролата за root потребител със следната команда:
UPDATE user SET password=password("newpassword") WHERE user="root";
Заменете нова парола с желаната от вас парола. Трябва да видите следното съобщение:
Заявката ОК, засегнати са 2 реда (0,03 сек.)
Съвпадение на редове:2 Променени:2 Предупреждения:0Засегнатите редове може да са различни, но заявката OK трябва да е там.
- Изчистете привилегиите на базата данни, за да я презаредите, за да направите промените ефективни:
mysql> flush privileges;
Трябва да получите следния резултат:
Заявката ОК, 0 засегнати реда (0,02 сек.)
- Излезте от MySQL клиента, като напишете exit .
- Прекратете процеса на MySQL сървъра, като напишете killall mysqld .
- След това стартирайте MySQL отново:
/etc/init.d/mysqld start