Vaiheittainen opetusohjelma, jossa opit palauttamaan SQL-palvelimen pääkäyttäjän salasanan.
Tärkein käyttäjä palvelimen MySQL on ehdottomasti käyttäjä"root". Tällä käyttäjällä on kaikki järjestelmänvalvojan oikeudet tietokantojen (MySQL databases).
Jos et enää tiedä, mikä MySQL-pääkäyttäjän salasana on, sinun on nollattava tämä salasana noudattamalla muutamia yksinkertaisia vaiheita.
Opetus on tehty palvelimelle MySQL asennettuna käyttöjärjestelmään CentOS, mutta prosessi on sama muissa jakeluissa Linux.
Kuinka palauttaa salasana SQL-palvelimen pääkäyttäjälle
SQL-palvelimen pääkäyttäjän salasanan palauttamiseksi yksinkertaisin tapa on SSH (Secure Shell).
1. Kirjaudumme sisään käyttäjänä "root" järjestelmään, jossa MySQL-palvelin on. (järjestelmän pääkäyttäjä, ei MySQL-palvelimen). Kirjaudu sisään suoraan konsolista tai etäyhteyden kautta ssh (jossa kitti järjestelmistä Windows).
2. Lopeta prosessi / MySQL.
service mysqld stop
tai
/etc/init.d/mysqld stop
Tuloksena on:
Stopping MySQL: [ OK ]
3. Käynnistämme MySQL-palvelimen vaihtoehdolla "--skip-grant-tables
". MySQL-palvelimen käynnistys/daemon prosessi ilman salasanaa.
mysqld_safe --skip-grant-tables &
Tulos yllä olevan komentorivin jälkeen:
[1] 3041
[root@server ~]# Starting mysqld daemon with databases from /var/lib/mysql
4. Yhdistämme mysql-palvelimeen käyttäjän kanssaroot", komennolla:
mysql -u root
Tulos komennon:
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 1
Server version: 5.0.77 Source distribution
Type 'help;' or 'h' for help. Type 'c' to clear the buffer.
mysql>
5. Valitse mysql-tietokanta ja aseta käyttäjälle uusi salasana "root".
use mysql;
update user set password=PASSWORD("New_Password") where User='root';
flush privileges;
quit
Tulokset yllä olevista komennoista:
mysql> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> update user set password=PASSWORD("123456") where User='root';
Query OK, 0 rows affected (0.00 sec)
Rows matched: 3 Changed: 0 Warnings: 0
mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)
mysql> quit
Bye
[root@server ~]#
6. Pysäytämme ja käynnistämme palvelun/palvelimen uudelleen MySQL
service mysqld stop
service mysqld start
Tulos:
Starting MySQL: [ OK ]
Alla oleva kuva näyttää kaiken vaihtaa salasanaa käyttäjän"root" palvelimelta MySQL.
Nyt voimme yhdistää MySQL (via phpMyAdmin esim.) "root"-käyttäjän kanssa käyttämällä yllä asetettua uutta salasanaa.
Tutorial testattu CentOS 5.6 MySQL Ver 14.12 Distrib 5.0.77 kanssa, redhat-linux-gnu (i686) Readline 5.1:n avulla.