配置mysql主从同步
mysql主从同步
问题描述:
项目开发中已经做了读写分离了,主数据库用来写数据,从数据库用来读数据,我们要保证数据库的数据一致,配置的读写分离才有意义。
原因描述:
项目配置了读写分离,必须进行数据同步
需求描述:
采用mysql 的主从同步,对数据库数据进行实时同步
解决方案:
配置mysql的主从数据同步进行数据的同步
解决方式:
准备条件:准备两个不同地址的数据库,要同步的数据库为master。
我的服务器版本信息: centsos7.3 mysql 5.7.13
地址1: 114.159.73.xx 主服务器
地址2: 46.98.164.xx 从服务器
第一步:修改主服务器数据库配置:
a. 将数据库服务器停止,或者锁表
Shell>systemctl stop mysqld (停止服务器)
b. 编辑数据库配置文件
Shell>vi /etc/my.cnf
在[mysqld]下面增加如下配置:
c. 重启数据库:
Shell>systemctl restart mysqld
d. 登录数据库
Shell>mysql –uroot –p
e.创建可供同步使用的账号(这里用户名是:slave_account密码是:123456)
Mysql>grant replication slave on *.* to 'slave_account'@'%' identifiedby '123456'
f. 刷新缓存
Mysql>flush privileges;
g:查看master状态
Mysql>show master status\G;
第二步:配置从服务器
a. 将数据库服务器停止,或者锁表
Shell>systemctl stop mysqld (停止服务器)
b.编辑数据库配置文件
Shell>vi /etc/my.cnf
在[mysqld]下面增加如下配置:
c.配置从数据库同步信息
mysql>change master to master_host='114.159.73.xxx',master_user='slave_account',master_password='123456',master_log_file='mysql-bin.000003',master_log_pos=2087; (请注意参数部分要和截图匹配)
d. 开启同步功能
mysql> start slave;
e查看从数据库状态:
mysql>show slave status\G;
结果:
在主数据库中增加数据,刷新从数据库,结果成功同步