Elfelejtettem a root jelszavam, mit lehet ilyenkor tenni? – olvastam több fórumon is ezt a felvetést.
Ha saját szervered üzemelteted és az operációs rendszeren is te vagy a rendszergazda, akkor nem olyan vészes a dolog, pár lépésben tudod resetelni a root jelszavát.
1. lépés: MySQL adatbázis leállítása
Először is le kell állítani a MySQL szervert, ezt RHEL/Centos/Fedora Linux-on a következő képpen lehet:
# /etc/init.d/mysqld stop
Debian/Ubuntu Linux alatt pedig:
# /etc/init.d/mysql stop
Alternatív megoldásként leállítható a MySQL szerver úgy is, ha megkeressük a mysql proceszt és azt killeljük ki.
# kill $(cat /var/run/mysqld/mysqld.pid)
vagy
#pgrep -u mysql mysqld #kill PID
vagy
kill mysql
2. lépés: Új jelszó szkript létrehozása
Hozzunk létre egy szkriptet, amelyben lényegében egy sql utasítás fog szerepelni, legyen a neve mysql.reset.sql
# vi /root/mysql.reset.sql
A fájl tartalma pedig legyen:
UPDATE mysql.user Password=PASSWORD ('ÚJ JELSZÓ') WHERE User='root'; FLUSH PRIVILEGES;
Mentsük és zárjuk be a fájlt.
3. lépés: Új jelszó beállítása
Futtassuk az előző szkriptet a következő módon:
# mysqld_safe --init-file=/root/mysql.reset.sql &
Az eredmény ehhez hasonló lesz:
nohup: ignoring input and redirecting stderr to stdout Starting mysqld daemon with databases from /var/lib/mysql mysqld_safe[20970]: started
Leállítjuk, majd elindítjuk a MySQL szervert.
RHEL/Centos/Fedora Linux-on:
# /etc/init.d/mysqld stop
Debian/Ubuntu Linux alatt pedig:
# /etc/init.d/mysql stop
RHEL/Centos/Fedora Linux-on:
# /etc/init.d/mysqld start
Debian/Ubuntu Linux alatt pedig:
# /etc/init.d/mysql start