Inconsistent:数据是不一致的,在两个节点上(初始的完全同步前)这种状态出现后立即创建一个新的资源。此外,在同步期间(同步目标)在一个节点上出现这种状态
Outdated:数据资源是一致的,但是已经过时
DUnknown:当对等节点网络连接不可用时出现这种状态
Consistent:一个没有连接的节点数据一致,当建立连接时,它决定数据是UpToDate或是Outdated
UpToDate:一致的最新的数据状态,这个状态为正常状态
测试数据同步:
17、安装数据库,我这里用的是centos7的版本
[root@node1 ~]# yum install mariadb-server mariadb -y
[root@node2 ~]# yum install mariadb-server mariadb -y
18、把数据库的目录指向/mnt
[root@node1 ~]# cat /etc/my.cnf
[mysqld]
datadir=/mnt
.......
[root@node2 ~]# cat /etc/my.cnf
[mysqld]
datadir=/mnt
.......
19、下一步我们需要把/mnt设置拥有者为mysql
[root@node1 ~]# chown -R mysql:mysql /mnt
[root@node1 ~]# systemctl restart mariadb
[root@node2 ~]# chown -R mysql:mysql /mnt
[root@node2 ~]# systemctl restart mariadb
20、我们进入数据库创建数据库
[root@node1 ~]#mysqld_safe --skip-grant-tables &
[root@node1 ~]#mysql -u root
MariaDB [(none)]> create database xiaozhang;
Query OK, 1 row affected (0.12 sec)
#创建一个叫xiaozhang的数据库
[root@node2 ~]# mysqld_safe --skip-grant-tables & #进入mariadb安全模式
21、切换主备节点:
先关掉node1的mariadb
[root@node1 /]# systemctl stop mariadb
1、先把主结点降为从结点(先卸载才能变为从):
[root@node1 /]# umount /mnt
[root@node1 /]# drbdadm secondary mysql ##降为从
[root@node1 /]# drbd-overview
NOTE: drbd-overview will be deprecated soon.
Please consider using drbdtop.
1:mysql/0 Connected Secondary/Secondary UpToDate/UpToDate
可以看到node1已经降为从了
2在node2:
[root@node2 ~]# drbdadm primary mysql
You have new mail in /var/spool/mail/root
[root@node2 ~]# drbd-overview
NOTE: drbd-overview will be deprecated soon.
Please consider using drbdtop.
1:mysql/0 Connected Primary/Secondary UpToDate/UpToDate
可以看到经把node2,升为主了
3、然后我们挂载试一下:
[root@node2 ~]# mount /dev/drbd1 /mnt
重启mariadb
4、检测
进入mariadb数据库
[root@node2 ~]#mysql -u root
MariaDB [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
| xiaozhang |
+--------------------+
5 rows in set (0.07 sec)
我们可以看到数据已经同步了,在node2上已经可以看到在node1创的数据库了。