« You'll never walk alone - revisited | Main | Google Earth »

July 12, 2005

Resetovanje root passworda za mysql

Koliko puta vam se desilo da zaboravite root password za mysql server ? Nijednom ? Smatrajte se srećnikom.

Evo lepog načina da se resetuje root password bez reinstalacije mysql-a. Naravno, podrazumevam da imate root privilegije na samom sistemu, bez toga ovo neće raditi.

Ako je server podignut, spustite ga:

/etc/rc.d/mysql stop

Zatim ga podignite na sledeći način:

/usr/bin/mysqld_safe --skip-grant-tables &

--skip-grant-tables flag isključuje sistem privilegija, tako da svako može da se konektuje na sistem, bez passworda. Sada je potrebno da se ulogujete sa vašim klijentom i da setujete nov root password:


# mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 44 to server version: 4.0.15
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> use mysql;
Database changed
mysql>update user set password = password('novirootivpass') where user = 'root';
mysql>flush privileges;

I to je to. Ubijte server koristeći mysqladmin shutdown k-du, a zatim ga normalno podignite uobičajenim init scriptom, npr: /etc/rc.d/mysql start.

Posted by dinke at July 12, 2005 10:13 PM

Comments

Cao,

Lep blog, svaka cast. Zanima me da li se moze kako videti stari root password, tj postojeci ako je zaboravljen?

Posted by: zderavko at August 12, 2005 10:18 AM

Moze se videti kriptovana verzija koja se nalazi u mysql tabeli. Do verzije mysql-a 4.1 imala je 16 karaktera, a od 4.1 41 karakter. Npr:

> select password from mysql.user where user='root';

*43c8aa34cdc98eddd3de1fe9a9c2c2a9f92bb2098d75

Koliko znam ne postoji nacin da je dekriptujes nazad. Jedini nacin bi bio da probas da pretpostavis pass raznim kombinacijama tipa:

select count(*) from mysql.user where user='root' and password('passkombinacija')= password;


Posted by: Dragan Dinic at August 12, 2005 10:32 AM

Post a comment




Remember Me?



Please enter the security code you see here