Elfelejtett mysql root jelszó

Más is járhat így, nem csak én… Az egyik ügyfelem szerverén hegesztettem kicsit, és fogalmam sem volt a mysql root jelszaváról. Természetesen neki sem.

Az alábbi rövid leírásban bemutatom, hogy hogyan tudjuk a mysql root jelszót megváltoztatni annak ismerete nélkül, konzolról. A parancsok root (rendszergazdai) jogosultságot igényelnek.

Első lépésként, állítsuk le a mysql szervert:

/etc/init.d/mysql stop

majd indítsuk el a folyamatot, a –skip-grant-tables paraméterrel. Ezzel tudjuk utasítani a mysql szervert arra, hogy a felhasználói jogosultságokkal ne foglalkozzon.

mysqld_safe --skip-grant-tables --console

A mysql szerver elindult, konzol módban. Indítsunk egy másik terminált, és lépjünk be a mysql szerverre:

mysql -u root mysql

A konzol jelszó nélkül beenged minket root jogosultságokkal, így megváltoztathatjuk a jelszót:

UPDATE user SET password=PASSWORD("új jelszó") WHERE user="root";
FLUSH PRIVILEGES;

Visszalépve az első konzolra, egy határozott CTRL+C billentyűkombinációval legyilkolhatjuk a konzol módban futó mysqld_safe folyamatot, és

/etc/init.d/mysql start 

paranccsal elindíthatjuk újra a mysql szervert, amely már az új root jelszót fogja megismerni.

A mysql szervert indító scriptek elérési útvonala egyes disztribúcióknál eltérő lehet.

Kedveled? Másnak is ajánlanád? Megosztás: