ตัว MariaDB หรือ MySQL ถ้าลงไว้นานจนลืมรหัสผ่าน ผู้ดูแลเดิมไม่ได้ทิ้งมรดกเอาไว้ให้ ก็เปลี่ยนรหัสผ่านได้ง่าย ๆ
- เช็ค version ก่อนเพราะตัวเก่า ๆ จะใช้คำสั่งที่ต่างกัน
mysql --version
- หยุดการทำงานของพี่มายเอสคิวเอลหรือน้องมาเรียดีบี ที่สามารถใช้คำสั่งของ MySQL ได้เลย ( สองตัวนี้มีผู้ให้กำเนิดเดียวกันแต่แยกมาทำ MySQL เพราะโดน oracle ซื้อไป )
systemctl stop mysql
หรือbrew services stop mariadb
จะมีข้อความตอบกลับมาประมาณ
Successfully stoppedmariadb
(label: homebrew.mxcl.mariadb)
เป็นอันใช้ได้ - เริ่มดาต้าเบสใหม่โดยให้ข้ามการจัดการสิทธ์ออกไปก่อน
sudo mysqld_safe --skip-grant-tables
- login เข้าระบบโดยใช้
mysql -u { admin user }
เช่นmysql -u root
- โหลดสิทธิ์ใหม่โดย
FLUSH PRIVILEGES;
- ใส่ sql query เข้าไปเปลี่ยนรหัสผ่าน หรือสร้างยูเซอร์ใหม่ เช่น
UPDATE mysql.user SET authentication_string = PASSWORD('new_password') WHERE User = 'root' AND Host = 'localhost';
- เริ่มการทำงานใหม่
sudo systemctl start mysql
- อย่าลืมเทสว่าสิทธิ์ต่าง ๆ กลับมาปกติแล้ว
mysql -u root -p