实验环境: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的双主复制就已经可以工作了