« 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