mariadb数据库
本次实验用三台服务器做测试
1.主用数据库(master):192.168.1.65
2.备用数据库(slave):192.168.1.66
3.备用数据库(slave):192.168.1.67
首先确保服务器时间一致
配置时间服务器
centos8 编辑 vim /etc/chrony.conf加入:
> pool 2.centos.pool.ntp.org iburst
> server 210.72.145.44 iburst
重启服务
> systemctl restart chronyd.service
centos7在vim /etc/ntp.conf 加入
> server 210.72.145.44 iburst
重启服务
> systemctl restart ntpd
安装完成数据库并初始化后启动起来;
安装数据库:
yum install mariadb-server
初始化数据库:
mysql_secure_installation
启动数据库:
systemctl start mariadb
##查看数据库端口##
netstat -anpt | grep 3306
给主数据库做相关配置
在数据库的配置文件中[mysqld]下加入
加入:
server-id = 111 #唯一的标识id
log-bin = master-bin #启动二进制文件
binlog-do-db = test_db #表示只同步test_db数据库;默认全部同步
log-slave-updates=true
然后重启mariadb
systemctl restart mariadb
登录到数据库中给两个从服务器授权
grant replication slave on *. * to ‘myslave’@‘192.168.1.66’ identified by ‘123456’;
grant replication slave on *. * to ‘myslave’@‘192.168.1.67’ identified by ‘123456’;
查看主服务器的position值
MariaDB [(none)]> show master status\G;
*************************** 1. row ***************************
File: master-bin.000007
Position: 18974
Binlog_Do_DB:
Binlog_Ignore_DB:
可以看到position值为18974;最好多看几遍看看是否发生更改,若数据发生变化说明数据库有数据传输,先停止传输主从复制成功后再恢复;
给从服务器做相关配置
在从数据库配置文件中添加
server-id = 110 #唯一的标识id
relay-log=relay-log-bin
relay-log-index=slave-relay-bin.index
进入从数据库后
change master to
master_host=‘192.168.1.65’,
master_user=‘myslave’,
master_password=‘123456’,
master_log_file=‘master_bin.000007’, #主数据库中master的file值
master_log_pos=18974; #主数据库中master的position值
数据库中启动slave
start slave;
查看slave状态,确保以下两个值为yes
show slave status\G;
如果配置步骤没错还是出错请参考
https://blog.csdn.net/weixin_47561724/article/details/117741522