ปัญหาที่เกิดขึ้นบ่อย คือต้องการ ที่จะ reset password เนื่องจากไม่ทราบว่าเดิมใข้ค่า password อะไรสามารถทำได้ ง่ายๆ มีขั้นตอนดังนี้
ขั้นตอนที่ 1
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
MariaDB [(none)]> SHOW VARIABLES LIKE "%version%"; +-------------------------+----------------------------------+ | Variable_name | Value | +-------------------------+----------------------------------+ | innodb_version | 5.7.21 | | protocol_version | 10 | | slave_type_conversions | | | version | 10.2.14-MariaDB | | version_comment | MariaDB Server | | version_compile_machine | x86_64 | | version_compile_os | Linux | | version_malloc_library | system | | version_ssl_library | OpenSSL 1.1.0h-fips 27 Mar 2018 | | wsrep_patch_version | wsrep_25.23 | +-------------------------+----------------------------------+ 10 rows in set (0.00 sec) |
ขั้นตอนที่ 2 หยุดการทำงานของ mariadb-server และ start แบบ safe
1 2 |
$ sudo systemctl stop mariadb $ sudo mysqld_safe --skip-grant-tables --skip-networking & |
ขั้นตอนที่ 3 Login แบบไม่ต้องใช้ password
1 2 3 4 5 6 7 8 9 |
$ mysql -u root Your MariaDB connection id is 10 Server version: 10.2.14-MariaDB MariaDB Server Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [(none)]> |
ขั้นตอนที่ 4 ตั้งค่า password ใหม่
1 2 3 |
MariaDB [(none)]> FLUSH PRIVILEGES; MariaDB [(none)]> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password'; MariaDB [(none)]> FLUSH PRIVILEGES; |
ขั้นตอนที่ 5 หยุดการทำงาน แบบ safe และค่อย start แบบปรกติ
1 2 |
$ sudo kill `/var/run/mariadb/mariadb.pid` $ sudo systemctl start mariadb |