您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關MYSQL的架構中主從異步復制是怎么進行的,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。
/ | 主服務器 | 從服務器 |
Ip | 192.168.31,79 | 192.168.31.188 |
hostname | mysql | mysql2 |
mysql-version | 5.7.23 | 5.7.23 |
server-id | 0ac92118-59f9-11ea-8806-080027c1c1ff | 2516faba-65f4-11ea-82b6-080027b0e953 |
[root@mysql soft]# vi /etc/my.cnf
添加內容如下:
server-id=79 #設置主服務器的ID(不能和別的服務器重復,隨意)
innodb_flush_log_at_trx_commit=2 #可以配置的值:0/1/2; 0、效率最高,最不安全;1、最安全,但是效率最低;2、安全和效率平衡的取舍,在服務器系統掛掉的情況下會丟失數據;
sync_binlog=1 #,值可設置 1、500、1000;可自己根據測試性能配置
log-bin=mysql-bin #binlog日志文件名
binlog-ignore-db=mysql # 表示不同步mysql庫
binlog-ignore-db=information_schema
binlog-ignore-db=oggmysql
binlog-ignore-db=sys
binlog-ignore-db=performance_schema
binlog-do-db=TEST # 表示同步TEST庫
[root@mysql ~]# mysql -uroot -p
mysql> create user 'sync'@'%' identified by 'Oracle123'
mysql> grant FILe on *.* to 'sync'@'192.168.31.188' identified by 'Oracle123';
#賦予FILE權限,允許從從庫ip訪問主庫
mysql> grant replication slave on *.* to 'sync'@'192.168.31.188' identified by 'Oracle123';
#賦予主從同步權限
mysql> flush privileges;
[root@mysql ~]# service mysqld stop
[root@mysql ~]# service mysqld start
[root@mysql ~]# mysql -uroot -p
mysql> show master status;
注:以上截圖中的FILE,POSTTION在備庫配置時需要使用到
[root@mysql soft]# mysqldump --single-transaction -uroot -pOracle123 TEST > TEST_20200310.sql
mysql> create database TEST;
[root@mysql2 soft]# mysql -uroot -pOracle123 TEST < TEST_20200310.sql
[root@mysql2 mysql]# vi /etc/my.cnf
添加內容如下:
server-id=188
#log-bin=mysql-bin #從庫提高性能可以不開bin-log日志
replicate-ignore-db=mysql
binlog-ignore-db=information_schema
binlog-ignore-db=oggmysql
binlog-ignore-db=sys
binlog-ignore-db=performance_schema
binlog-do-db=TEST
innodb_flush_log_at_trx_commit=2 # 可以配置的值:0/1/2; 0、效率最高,最不安全;1、最安全,但是效率最低;2、安全和效率平衡的取舍,在服務器系統掛掉的情況下會丟失數據;
sync_binlog=1000 # 每進行n次事務提交之后,MySQL將binlog_cache中的數據強制寫入磁盤。
slave_parallel_workers=4 #根據實際情況決定開啟多少個線程用于主從復制
slave_parallel_type=logical_clock #基于組提交的并行復制方式
master_info_repository=TABLE
relay_log_info_repository=TABLE
relay_log_recovery=ON
[root@mysql2 data]# service mysql stop
[root@mysql2 data]# service mysql start
mysql> stop slave;
mysql> change master to master_host='192.168.31.79', master_user='sync',master_password='Oracle123', master_log_file='mysql-bin.00001' ,master_log_pos=154;
mysql> start slave;
mysql> show slave status \G;
1)主庫插入數據
mysql> insert into TEST values (7,'liuqi');
2)備庫查詢
mysql> select * from TEST;
關于MYSQL的架構中主從異步復制是怎么進行的就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。