實驗環境: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的雙主複製就已經可以工作了