mysql双主复制模型

时间:2022-09-15 08:30:26

实验环境:centos6.6 mariaDB 10.0.10二进制安装

这里不再说明安装过程直接开始配置主从节点

节点1:172.16.30.1

[root@node1 ~]# vim /etc/mysql/my.cnf
thread_concurrency = 4
datadir = /mydata/data  #数据库存放目录
innodb_file_per_table = 1 ##innodb引擎单表单文件
log-bin=/mydata/binlogs/mysql-bin ##二进制文件存放目录
relay-log=/mydata/relaylogs/relay-mysql ##中继日志
server-id       = 1     ##server id 用来区分每个mysql服务器
auto-increment-offset = 2 ## 自动增长的数据类型的步长
auto-increment-increment = 1 ##起始值

节点2:172.16.30.2  只有两点与上面不同

server-id       = 1auto-increment-increment = 2

两主机分别授权:只是授予了复制权限

节点1给节点2授权:

MariaDB [(none)]> GRANT REPLICATION SLAVE,REPLICATION CLIENT ON *.* TO ‘mysql’@’172.16.30.2′ IDENTIFIED BY “112613”;

显示二进制日志单前位置

MariaDB [(none)]> SHOW MASTER STATUS;+――――――+―――-+――――�C+――――――+| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |+――――――+―――-+――――�C+――――――+| mysql-bin.000006 |      536 |              |                  |+――――――+―――-+――――�C+――――――+1 row in set (0.01 sec)

节点2给节点1授权:

MariaDB [(none)]> GRANT REPLICATION SLAVE,REPLICATION CLIENT ON *.* TO ‘mysql’@’172.16.30.1′ IDENTIFIED BY “112613”;

显示二进制日志当前位置

MariaDB [(none)]> SHOW MASTER STATUS;+――――――+―――-+――――�C+――――――+| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |+――――――+―――-+――――�C+――――――+| mysql-bin.000003 |      541 |              |                  |+――――――+―――-+――――�C+――――――+1 row in set (0.01 sec)

节点1连接节点2:

MariaDB [(none)]> CHANGE MASTER TO MASTER_HOST=’172.16.30.2′,MASTER_USER=’mysql’,MASTER_PASSWORD=’112613′,MASTER_LOG_FILE=’mysql-bin.000003′,MASTER_LOG_POS=541; ##这里是节点2的二进制日志文件的位置

节点2连接节点1:

MariaDB [(none)]> CHANGE MASTER TO MASTER_HOST=’172.16.30.2′,MASTER_USER=’mysql’,MASTER_PASSWORD=’112613′,MASTER_LOG_FILE=’mysql-bin.000006′,MASTER_LOG_POS=536;##这里是节点1的二进制的日志文件的位置

在节点1开启复制线程,并查看

 mysql双主复制模型

在节点2开启复制线程,并查看:

mysql双主复制模型

现在节点1和节点2已经开始同步了

在节点1上创建数据库和表:

MariaDB [(none)]> CREATE DATABASE linux;Query OK, 1 row affected (0.07 sec)MariaDB [(none)]> USE linux;Database changedMariaDB [linux]> CREATE TABLE des(id INT UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT,year VARCHAR(30));Query OK, 0 rows affected (0.14 sec)

在节点2查看:

MariaDB [(none)]> SHOW DATABASES;+――――――�C+| Database           |+――――――�C+| information_schema || linux              || mysql              || performance_schema || test               |+――――――�C+5 rows in set (0.01 sec)MariaDB [(none)]> USE linux;Database changedMariaDB [linux]> SHOW TABLES;+―――――�C+| Tables_in_linux |+―――――�C+| des             |+―――――�C+1 row in set (0.01 sec)

已经同步过来了

在节点2创建表并插入数据

MariaDB [linux]> CREATE TABLE centos(id INT UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT,ver VARCHAR(20));Query OK, 0 rows affected (0.17 sec)MariaDB [linux]> INSERT INTO centos (ver) VALUES(‘6.6′),(‘7.0′);Query OK, 2 rows affected (0.07 sec)Records: 2  Duplicates: 0  Warnings: 0MariaDB [linux]> SHOW TABLES;+―――――�C+| Tables_in_linux |+―――――�C+| centos          || des             |+―――――�C+2 rows in set (0.01 sec)

在节点1查看:

MariaDB [linux]> SHOW TABLES;+―――――�C+| Tables_in_linux |+―――――�C+| centos          || des             |+―――――�C+2 rows in set (0.00 sec)MariaDB [linux]> SELECT * FROM centos;+―-+――+| id | ver  |+―-+――+|  2 | 6.6  ||  4 | 7.0  |+―-+――+2 rows in set (0.00 sec)

已经同步过来了

这样关于mariadb的双主复制就已经可以工作了


本文出自 “LINUXU” 博客,请务必保留此出处http://linuxu.blog.51cto.com/9471357/1613486