บทความนี้สาธิตวิธีให้สิทธิ์ Replication (สำหรับ Slave Server) แก่ User ใน MySQL โดยใช้คำสั่ง GRANT REPLICATION SLAVE ON *.* TO 'user'@'host'
ตรวจสอบ User ที่มีอยู่
mysql> SELECT user, host FROM mysql.user;
ให้สิทธิ์ Replication แก่ Mike@localhost
mysql> GRANT REPLICATION SLAVE ON *.* TO 'Mike'@'localhost';
Query OK, 0 rows affected (0.20 sec)
ตรวจสอบสิทธิ์ที่ได้รับ
mysql> SHOW GRANTS FOR 'Mike'@'localhost';
+------------------------------------------------------+
| Grants for Mike@localhost |
+------------------------------------------------------+
| GRANT REPLICATION SLAVE ON *.* TO `Mike`@`localhost` |
+------------------------------------------------------+
คำอธิบาย:
REPLICATION SLAVE- สิทธิ์สำหรับ Slave Server อ่าน Binary Log จาก Master*.*- ทุก Database และทุก Table- สิทธิ์นี้จำเป็นสำหรับการตั้งค่า Master-Slave Replication
- ควรสร้าง User เฉพาะสำหรับ Replication ไม่ควรใช้ Root
- หลังให้สิทธิ์แล้ว ควร
FLUSH PRIVILEGES(ในบางเวอร์ชันทำอัตโนมัติ)
ความปลอดภัย: จำกัด Host ให้เฉพาะ IP ของ Slave Server ไม่ควรใช้ '%' (ทุก Host)