Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

ให้สิทธิ์ Replication Privilege ใน MySQL ด้วย GRANT REPLICATION SLAVE

บทความนี้สาธิตวิธีให้สิทธิ์ 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)