Ubuntu 18.04
ติดตั้งและตรวจสอบว่า mysqld us ทำงาน ..
ไปที่ฐานข้อมูลและตั้งค่าผู้ใช้รูท:
sudo mysql -u root
SELECT User,Host FROM mysql.user;
DROP USER 'root'@'localhost';
CREATE USER 'root'@'%' IDENTIFIED BY 'obamathelongleggedmacdaddy';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
exit;
แก้ไขสิทธิ์ mysqld และรีสตาร์ท:
sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf
# edit the line to be this:
bind-address=0.0.0.0
sudo systemctl stop mysql
sudo systemctl start mysql
จากเครื่องอื่นทดสอบ .. Obvs port (3306) บนเครื่อง mysqld ต้องอนุญาตการเชื่อมต่อจากเครื่องทดสอบ
mysql -u root -p -h 123.456.789.666
"การรักษาความปลอดภัย" เพิ่มเติมทั้งหมดของ MySql ไม่ได้ช่วยรักษาความปลอดภัยเลยเพียง แต่ซับซ้อนและทำให้สับสนตอนนี้ง่ายกว่าในสมัยก่อนที่คุณใช้รหัสผ่านที่ยาวมาก
localhost
เพื่อ%
ให้สิทธิ์การเข้าถึงรูทไปยังเครือข่ายสาธารณะ อย่าลืมflush privileges;