Debian & Mysql: reset hesla
Webový server jede, databáze nekomunikuje. Problém!
Dneska se stala nemilá věc, že přestal úplně komunikovat server, na kterém funguje jeden náš projekt. Po několika telefonátech do serverovny se zdál problém vyřešen, ale bohužel nefungoval databázový server.
Na serveru je nainstalován jak databázový server, tak webový server. Zátěž zvládá bez problémů.
Po vypsání statusu MySQL se zdálo vše v pořádku a databázový server běžel:
Objective-C
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
# /etc/init.d/mysql status Copyright (C) 2000 MySQL AB & MySQL Finland AB & TCX DataKonsult AB This software comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to modify and redistribute it under the GPL license Server version 5.0.32-Debian_7etch1-log Protocol version 10 Connection Localhost via UNIX socket UNIX socket /var/run/mysqld/mysqld.sock Uptime: 10 min 12 sec Threads: 1 Questions: 7973 Slow queries: 0 Opens: 2620 Flush tables: 1 Open tables: 64 Queries per second avg: 13.028. |
Databáze sice fungovala, ale nešlo se k ní připojit žádným způsobem na existujícího účet uživatele root.
Nakonec se mi podařilo změnit heslo:
Zastavení databáze:
Objective-C
1 |
# /etc/init.d/mysql stop |
Spuštění databáze bez hesla:
Objective-C
1 |
# mysqld_safe --skip-grant-tables & |
Připojení k databázi pomocí uživatele root:
Objective-C
1 |
# mysql -u root |
Po připojení není problém aktualizovat tabulku user v databázi „mysql“:
Objective-C
1 2 3 4 5 6 7 |
mysql> use mysql; mysql> UPDATE user SET password=PASSWORD('novehesloproroota') WHERE user=’root’; Status: Query OK, 1 row affected (0.00 sec) Rows matched: 1 Changed: 1 Warnings: 0 |
Posted on 7 May 2008
Dekuji mockrat jednoduchy, rychli postup, ktery funguje 😉