ความเป็นมา : ฉันมีการติดตั้งเซิร์ฟเวอร์ MySQL 5.1 สองตัวในการจำลองแบบแถวตามแถวต้นแบบ (Master-Master-replication) (RBR) ตามแนวทางที่ยอดเยี่ยมนี้ ฉันต้องการให้จำลองฐานข้อมูลทั้งหมดและจะเพิ่มฐานข้อมูลใหม่เป็นประจำ
เป้าหมาย : ฉันต้องการเพิ่มฐานข้อมูลใหม่ลงในการจำลองแบบโดยเพิ่ม DB ไปยังหนึ่งในเซิร์ฟเวอร์ โดยไม่ต้องหยุดทั้งทาสเปลี่ยนไฟล์กำหนดค่ารีสตาร์ทเซิร์ฟเวอร์ MySQL และเริ่มทาสอีกครั้ง
คำถาม : จากสิ่งที่ฉันได้อ่านฉันคิดว่าฉันสามารถทำเช่นนี้โดยเพียงแค่การละเว้นใด ๆbinlog-do-db
, binlog-ignore-db
, replicate-do-db
และreplicate-ignore-db
การตั้งค่าในการกำหนดค่าเซิร์ฟเวอร์แต่ละ แต่ฉันไม่สามารถตรวจสอบ เอกสารของ MySQL เกี่ยวกับวิธีการประเมินตัวเลือกการจำลองแบบฐานข้อมูลและระดับตารางทำให้ฉันคิดว่าอาจจะไม่มีทางทำสิ่งนี้ให้สำเร็จได้
บางส่วนของ/etc/mysql/my.cnf
ไฟล์ที่เกี่ยวข้องจะถูกคัดลอกด้านล่าง ฉันกำลังติดตามใช่ไหม? เป็นสิ่งที่ฉันต้องการแม้เป็นไปได้?
ปรมาจารย์ 1 :
[mysqld]
binlog-format = row
server-id = 1
replicate-same-server-id = 0
auto-increment-increment = 2
auto-increment-offset = 1
master-host = <master2_ip>
master-user = slave_user
master-password = <password>
master-connect-retry = 60
log-bin = /var/log/mysql/mysql-bin.log
relay-log = /var/lib/mysql/slave-relay.log
relay-log-index = /var/lib/mysql/slave-relay-log.index
expire_logs_days = 14
max_binlog_size = 2048M
ปรมาจารย์ 2 :
[mysqld]
binlog-format = row
server-id = 2
replicate-same-server-id = 0
auto-increment-increment = 2
auto-increment-offset = 2
master-host = <master1_ip>
master-user = slave_user
master-password = <password>
master-connect-retry = 60
log-bin = /var/log/mysql/mysql-bin.log
relay-log = /var/lib/mysql/slave-relay.log
relay-log-index = /var/lib/mysql/slave-relay-log.index
expire_logs_days = 14
max_binlog_size = 2048M