mysql 异步复制建立过程_mysql生产环境高可用---基于GTID异步复制项目实施
客戶需求:
客戶需要上線一個(gè)門戶網(wǎng)站,初期業(yè)務(wù)量非常小,數(shù)據(jù)量10個(gè)G,后臺需要使用msyql 數(shù)據(jù)庫,需要建設(shè)一個(gè)數(shù)據(jù)庫環(huán)境
項(xiàng)目技術(shù):
操作系統(tǒng):兩臺linux系統(tǒng) 紅帽6.5
數(shù)據(jù)庫版本:msyql 5.7.22
數(shù)據(jù)庫架構(gòu):主從復(fù)制,主庫用于生產(chǎn),從庫用于數(shù)據(jù)容災(zāi)和主庫備機(jī),采用GTID+mysqlreplicate+異步復(fù)制技術(shù)。
主庫ip: 192.168.1.51 3306
從庫ip ; 192.168.1.52 3306
工具:
mysql-utilities-1.6.5.tar.gz
cd /soft
tar zxvf mysql-utilities-1.6.5.tar.gz
cd mysql-utilities-1.6.5.
python setup.py build
python setup.py install
編譯–安裝
查看是否按照成功
mysqlreplicate --help
主庫上操作:
1.創(chuàng)建復(fù)制用戶 【主庫和從庫都要?jiǎng)?chuàng)建】
mysql -uroot -proot
create user ‘repuser’@’%’ identified by ‘repuser123’;
grant replication slave on . to ‘repuser’@’%’;
flush privileges;
select user,host from mysql.user;
exit;
vi /mysql/data/3306/my.cnf
#master add parameter
log_bin=/mysql/log/3306/binlog/itpuxdb-binlog
log_bin_index=/mysql/log/3306/binlog/itpuxdb-binlog.index
binlog_format=row
binlog_rows_query_log_events=on
#master modify parameter
bind-address=0.0.0.0
server_id=513306
skip_name_resolve = on
expire_logs_days = 7
innodb_support_xa =1
binlog_cache_size = 1M
max_binlog_size = 2048M
log_bin_trust_function_creators = 1
innodb_flush_log_at_trx_commit =1
sync_binlog = 1
transaction-isolation = read-committed
gtid_mode = on
enforce_gtid_consistency = 1
log-slave-updates = 1
binlog_gtid_simple_recovery=1
2.從庫上操作
vi /mysql/data/3306/my.cnf
#slave add parameter
log_bin=/mysql/log/3306/binlog/itpuxdb-binlog
log_bin_index=/mysql/log/3306/binlog/itpuxdb-binlog.index
binlog_format=row
binlog_rows_query_log_events=on
#slave modify parameter
bind-address=0.0.0.0
server_id=523306
skip_name_resolve = on
expire_logs_days = 7
innodb_support_xa =1
binlog_cache_size = 1M
max_binlog_size = 2048M
log_bin_trust_function_creators = 1
innodb_flush_log_at_trx_commit =1
sync_binlog = 1
transaction-isolation = read-committed
gtid_mode = on
enforce_gtid_consistency = 1
log-slave-updates = 1
binlog_gtid_simple_recovery=1
#slave parameter
relay_log = /mysql/log/3306/relaylog/itpuxdb-relay.log
read_only=1
slave-parallel-type=LOGICAL_CLOCK
slave-parallel-workers=4
master_info_repository=table
relay_log_info_repository=table
relay_log_recovery=1
slave_skip_errors = ddl_exist_errors
slave_preserve_commit_order=1
3.配置了以上操作之后,重啟兩臺mysql
4.在主庫上查看binlog
mysql -uroot -proot
show master status;
5.在從庫上使slave 與 master 建立連接,從而同步。
主庫上操作:
mysqlreplicate --master=root:root@192.168.1.51:3306 --slave=root:root@192.168.1.52:3306 --rpl-user=repuser:repuser123 -b
檢查
mysqlreplicate --master=root:root@192.168.1.51:3306 --slave=root:root@192.168.1.52:3306 --rpl-user=repuser:repuser123 --test-db=testdb
檢查從庫
mysqlrplcheck --master=root:root@192.168.1.51:3306 --slave=root:root@192.168.1.52:3306 -s
驗(yàn)證數(shù)據(jù)是否一致
mysqlrplsync --master=root:root@192.168.1.51:3306 --slave=root:root@192.168.1.52:3306
6.主從驗(yàn)證
在主庫創(chuàng)建數(shù)據(jù)庫 數(shù)據(jù)表 插入數(shù)據(jù) 創(chuàng)建用戶
在從庫用 主庫創(chuàng)建的用戶登錄,并查看數(shù)據(jù)
總結(jié)
以上是生活随笔為你收集整理的mysql 异步复制建立过程_mysql生产环境高可用---基于GTID异步复制项目实施的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 查看某个分区之前所有的数据_腾讯大数据面
- 下一篇: linux模式匹配运算符,linux之正