MySQL 5.7 延遲復制環境搭建和測試
阿新 • • 發佈:2018-11-16
uic glibc tin sed quic -s triggers def lee 安裝主從 MySQL 5.7
# 主 MySQL5.7 cd /usr/local tar -xvf mysql-5.7.23-linux-glibc2.12-x86_64.tar.gz mv mysql-5.7.23-linux-glibc2.12-x86_64/ mysql cd mysql mkdir data conf vim conf/my.cnf ------------------------------------------- [mysqld] basedir=/usr/local/mysql datadir=/usr/local/mysql/data socket=/usr/local/mysql/data/mysql.sock symbolic-links=0 log-error=/tmp/mysqld.log pid-file=/usr/local/mysql/data/mysqld.pid server-id=10 port=3366 gtid_mode=on enforce_gtid_consistency=on log_bin binlog_format=row ------------------------------------------- export PATH=$PATH:/usr/local/mysql/bin mysqld --defaults-file=/usr/local/mysql/conf/my.cnf --initialize --user=mysql mysqld_safe --defaults-file=/usr/local/mysql/conf/my.cnf --user=mysql & # 從 MySQL5.7 cd /usr/local tar -xvf mysql-5.7.23-linux-glibc2.12-x86_64.tar.gz mv mysql-5.7.23-linux-glibc2.12-x86_64/ mysql cd mysql mkdir data conf vim conf/my.cnf ------------------------------------------- [mysqld] basedir=/usr/local/mysql datadir=/usr/local/mysql/data socket=/usr/local/mysql/data/mysql.sock symbolic-links=0 log-error=/tmp/mysqld.log pid-file=/usr/local/mysql/data/mysqld.pid server-id=20 port=3366 gtid_mode=on enforce_gtid_consistency=on log_bin binlog_format=row ------------------------------------------- export PATH=$PATH:/usr/local/mysql/bin mysqld --defaults-file=/usr/local/mysql/conf/my.cnf --initialize --user=mysql mysqld_safe --defaults-file=/usr/local/mysql/conf/my.cnf --user=mysql &
主從節點更改 root@‘localhost‘ 密碼和創建復制賬號
set sql_log_bin=0;
alter user root@‘localhost‘ identified by ‘MySQL5.7‘;
create user root@‘%‘ identified by ‘MySQL5.7‘;
grant all on *.* to root@‘%‘;
flush privileges;
set sql_log_bin=1;
將主節點的數據傳到從節點
mysqldump -S /usr/local/mysql/data/mysql.sock -u root -pMySQL5.7 --all-databases --triggers --routines --events --single-transaction --quick | mysql -h 192.168.1.226 -P 3366 -u root -pMySQL5.7
將從服務器指定到主服務器
change master to master_host=‘192.168.1.225‘,master_port=3366,master_user=‘root‘,master_password=‘MySQL5.7‘,master_auto_position=1,MASTER_DELAY=120;
start slave;
show slave status\G
在主服務器使用以下腳本插入數據
shell> cat mysql.sh #!/bin/bash while true do mysql -S /usr/local/mysql/data/mysql.sock -u root -pMySQL5.7 -e "insert into testdb.dt values(now())"; sleep 1 done
結果:從服務器的數據延時120秒生成,主服務器停機後2分鐘,從服務器持續更新2分鐘
MySQL 5.7 延遲復制環境搭建和測試