mysql双主复制模型

实验环境: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       = 1
auto-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;
+——————+———-+————–+——————+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+——————+———-+————–+——————+
| mysql-bin.000006 |      536 |              |                  |
+——————+———-+————–+——————+
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;
+——————+———-+————–+——————+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+——————+———-+————–+——————+
| mysql-bin.000003 |      541 |              |                  |
+——————+———-+————–+——————+
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开启复制线程,并查看

 技术分享

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

技术分享

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

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

MariaDB [(none)]> CREATE DATABASE linux;
Query OK, 1 row affected (0.07 sec)
MariaDB [(none)]> USE linux;
Database changed
MariaDB [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;
+——————–+
| Database           |
+——————–+
| information_schema |
| linux              |
| mysql              |
| performance_schema |
| test               |
+——————–+
5 rows in set (0.01 sec)
MariaDB [(none)]> USE linux;
Database changed
MariaDB [linux]> SHOW TABLES;
+—————–+
| Tables_in_linux |
+—————–+
| des             |
+—————–+
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: 0
MariaDB [linux]> SHOW TABLES;
+—————–+
| Tables_in_linux |
+—————–+
| centos          |
| des             |
+—————–+
2 rows in set (0.01 sec)

在节点1查看:

MariaDB [linux]> SHOW TABLES;
+—————–+
| Tables_in_linux |
+—————–+
| centos          |
| des             |
+—————–+
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

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。