- 上一篇讲了在CentOS7使用yum在线安装MySQL5.7,接下来开始配置MySQL的主从备份.
环境
- CentOS7,MySQL5.7
- 两台机器,master为192.168.226.130,slave为192.168.226.131
配置主MySQL
- 首先,登录MySQL,创建一个同步账号,用于从服务器访问主服务器
create user 'repl'@'%' identified by '密码';
可能会遇到提示密码过于简单的问题,可以去上一篇文章看解决办法
- 授予该账号REPLICATION SLAVE权限
GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%';
- 配置主从同步,要在主服务器开启二进制日志,也就是binlog,并配置要同步或不同步哪些数据库.这需要修改my.cnf配置文件
vim /etc/my.cnf
- 在其中依照实际情况添加或修改如下内容:
#此参数表示启用binlog并指定日志文件路径
log_bin=master-bin
#此参数指定二进制索引文件路径
log_bin_index=master-bin.index
#配置服务器的唯一标识,和其他服务器的唯一标识必须不同,从服务器通过该标识找到主服务器
server-id=4
#指定范围日期内的binlog日志,过期的日志会被清除
expire-logs-days=7
#配置不记录binlog日志的数据库,没有binlog日志的数据库则不会被同步
binlog_ignore_db=mysql
#配置记录binlog日志的数据库,有binlog日志的数据库会被同步
binlog_do_db=lidbjs0308
#这些数据库都是mysql系统数据库
binlog_ignore_db=information_schema
binlog_ignore_db=performation_schema
binlog_ignore_db=sys
- 配置完成后,重启mysql服务
service mysqld restart
登录mysql,查看master状态
记录下File和Position这两个值,一会会用到
配置从MySQL
- 修改从数据库的my.cnf
#服务器唯一标识
server-id = 2
#启动中继日志服务并设置地址,中继日志就是存储主库过来的binlog日志
relay-log = slave-relay-bin
#中继日志二进制文件索引地址
relay-log-index = slave-relay-bin.index
- 重启mysql服务,然后登陆从服务器的mysql,配置主服务器相关设置
change master to master_host='192.168.226.130', master_port=3306, master_user='repl',
master_password='密码', master_log_file='master-bin.000003', master_log_pos=154;
- 然后启动SLAVE
start slave;
- 查看主从状态
show slave status\G
Slave_IO_Running和Slave_SQL_Running都为Yes,表示成功,测试一波;
- 在主数据库同步的数据库里创建一张表
create table test(
name varvhar(20),
age int(3)
);
此时查看从数据库,已经有这张表了;在主库中向表里插入数据
insert into test(name,age) values('大黄',30);
查看从数据库
- 至此,简单的CentOS7配置MySQL5.7主从备份完工了,想要实际使用,还需要做很多配置优化,后续会继续研究的