Mysql 資料庫主庫,備庫實時同步配置
背景: mysql 主庫伺服器server1(192.168.71.37) mysql 備庫伺服器server2(192.168.71.38) 主庫,備庫版本同為5.5.31.
第一步:建立複製賬號
主庫: GRANT REPLICATION SLAVE,REPLICATION CLIENT ON *.* TO username@'192.168.71.38' INDENTIFIED BY 'password';
在主庫和備庫都建立該賬號, 備庫只需要修改對應的主庫IP即可。
第二步:配置主庫和備庫
在主庫的my.cnf 增加或修改如下內容:
log_bin = mysql-bin
server_id = 7137 (必須明確地指定一個唯一的伺服器ID 此處去伺服器Ip的最後兩個段)
如果之前沒有在mysql 的配置檔案中指定log_bin 就需要重新啟動Mysql。 為了確認二進位制日誌檔案是否已經在主庫上建立,使用:SHOW MASTER STATUS進行檢視
備庫上也需要做同樣的配置,並重啟資料庫
log_bin = mysql-bin
server_id = 7138
relay_log = /var/lib/mysql/mysql-relay-bin (指定中繼日誌的位置和命名)
log_slave_updates = 1 (允許備庫將其重放的事件也記錄到自身的二進位制日誌)
read_only = 1
第三步:啟動複製
在備庫上執行以下命令
CHANGE MASTER TO MASTER_HOST='192.168.71.37',
MASTER_USER='username',
MASTER_PASSWORD='password',
MASTER_LOG_FILE = 'mysql-bin.000015',
MASTER_LOG_POS=0;
設定MASTER_LOG_POS=0是要從日誌的開頭讀取。
透過SHOW SLAVE STATUS;命令檢視配置資訊。
執行命令START SLAVE;開啟複製。
透過SHOW SLAVE STATUS;再次檢視
透過SHOW PROCESSLIST;可以看到一個I/O執行緒,和一個SQL執行緒
四:推薦的複製配置
在主庫上二進位制日誌最重要的選項是: sync_binlog =1
如果開啟該選項,mysql每次在提交事物請會將二進位制日誌同步到磁碟上,保證在伺服器崩潰的時候不會丟失事件。
如果使用InnoDB 強烈推薦設定如下選項:
innodb_flush_logs_at_trx_commit
innodb_support_xa=1
innodb_safe_binlog
如果正在使用mysql 5.5 ,最好設定以下選項:
sync_master_info = 1
sync_replay_log = 1
sync_relay_long_info =1
第一步:建立複製賬號
主庫: GRANT REPLICATION SLAVE,REPLICATION CLIENT ON *.* TO username@'192.168.71.38' INDENTIFIED BY 'password';
在主庫和備庫都建立該賬號, 備庫只需要修改對應的主庫IP即可。
第二步:配置主庫和備庫
在主庫的my.cnf 增加或修改如下內容:
log_bin = mysql-bin
server_id = 7137 (必須明確地指定一個唯一的伺服器ID 此處去伺服器Ip的最後兩個段)
如果之前沒有在mysql 的配置檔案中指定log_bin 就需要重新啟動Mysql。 為了確認二進位制日誌檔案是否已經在主庫上建立,使用:SHOW MASTER STATUS進行檢視
備庫上也需要做同樣的配置,並重啟資料庫
log_bin = mysql-bin
server_id = 7138
relay_log = /var/lib/mysql/mysql-relay-bin (指定中繼日誌的位置和命名)
log_slave_updates = 1 (允許備庫將其重放的事件也記錄到自身的二進位制日誌)
read_only = 1
第三步:啟動複製
在備庫上執行以下命令
CHANGE MASTER TO MASTER_HOST='192.168.71.37',
MASTER_USER='username',
MASTER_PASSWORD='password',
MASTER_LOG_FILE = 'mysql-bin.000015',
MASTER_LOG_POS=0;
設定MASTER_LOG_POS=0是要從日誌的開頭讀取。
透過SHOW SLAVE STATUS;命令檢視配置資訊。
執行命令START SLAVE;開啟複製。
透過SHOW SLAVE STATUS;再次檢視
透過SHOW PROCESSLIST;可以看到一個I/O執行緒,和一個SQL執行緒
四:推薦的複製配置
在主庫上二進位制日誌最重要的選項是: sync_binlog =1
如果開啟該選項,mysql每次在提交事物請會將二進位制日誌同步到磁碟上,保證在伺服器崩潰的時候不會丟失事件。
如果使用InnoDB 強烈推薦設定如下選項:
innodb_flush_logs_at_trx_commit
innodb_support_xa=1
innodb_safe_binlog
如果正在使用mysql 5.5 ,最好設定以下選項:
sync_master_info = 1
sync_replay_log = 1
sync_relay_long_info =1
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28624388/viewspace-1063901/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- [資料庫]MYSQL主從同步資料庫MySql主從同步
- mysql伺服器主從資料庫同步配置MySql伺服器資料庫
- mysql主從資料庫配置MySql資料庫
- mysql資料庫資料同步/主從複製的配置方法MySql資料庫
- Linux下mysql資料庫一主一從同步配置LinuxMySql資料庫
- 8、MySQL主從資料庫配置MySql資料庫
- MySQL資料庫時區配置MySql資料庫
- 實現MySQL資料庫的實時備份MySql資料庫
- MYSQL資料庫主從同步(一主一從)MySql資料庫主從同步
- 配置xtrabackup備份mysql資料庫MySql資料庫
- mysql 的資料庫同步怎麼配置?MySql資料庫
- 阿里 Canal 實時同步 MySQL 增量資料至 ClickHouse 資料庫阿里MySql資料庫
- dataguard主庫停監聽後還會把資料同步到備庫
- CentOS7.1下MySQL資料庫主從同步CentOSMySql資料庫主從同步
- Mysql資料庫單向同步(一主兩從)MySql資料庫
- mysql主庫清理資料,從庫保留MySql
- [資料庫] Navicat for MySQL定時備份資料庫及資料恢復資料庫MySql資料恢復
- 使用 Docker 完成 MySQL 資料庫主從配置DockerMySql資料庫
- linux下mysql主從複製,實現資料庫同步LinuxMySql資料庫
- Mysql主主同步-配置資料同步MySql
- Mysql 資料庫雙機熱備的配置MySql資料庫
- MySQL 5.7 主庫崩潰切備庫MySql
- DataX將MySql資料庫資料同步到Oracle資料庫MySql資料庫Oracle
- mysql 資料庫 備份MySql資料庫
- mysql 資料庫備份MySql資料庫
- SQL Server 資料庫同步配置SQLServer資料庫
- golang實現mysql資料庫備份GolangMySql資料庫
- 實時資料庫與時序資料庫資料庫
- NoSQL 資料庫的主主備份SQL資料庫
- mysql資料庫互為主從配置方法分享MySql資料庫
- 資料庫同步利器 otter 雙A同步配置資料庫
- django 配置mysql資料庫DjangoMySql資料庫
- django配置mysql資料庫DjangoMySql資料庫
- mysql資料庫實現主從複製MySql資料庫
- BMMySQL定時備份資料庫(全庫備份)的實現meuMySql資料庫
- (7)資料庫讀寫分離,主從同步實現方法(資料庫設定)資料庫主從同步
- 達夢資料庫主備實時叢集搭建和維護資料庫
- innobackupex 備份MySQL資料庫MySql資料庫