前言:
最近这几天给弄了2台机器,部署centlos7.5,除了公司的一些模块外,给2台机器做了下主主备份。
其实网上资料一大堆,但是感觉按照别人的思路不如自己的舒服,虽然这玩意思路差不多,但是还是在此坐下总结吧。
首先普及下主从备份原理,面试出现几率比较大
主服务器创建同步用户,用户向主服务器发起建立数据库aa的请求(create database aa),主服务器通过应用线程把请求转发给i/o守护线程,主服务器i/o守护线程生成数据库同时生成二进制日志bin.000001和bin.000001.index,然后主服务器主动推送二进制日志到从服务器,并唤醒从服务器的i/o守护线程和sql守护线程,从服务器i/o守护线程将日志转存为relay-bin.000001和relay-bin.000001.index,sql守护线程将日志翻译成真正的数据,完成工作后,从服务器的i/o守护线程和sql守护线程进入休眠状态,等待新的操作唤醒!
主从步骤
环境:centos7.5 mysql5.7
步骤:1、首先安装好环境(上一篇中有操作步骤)
2、修改配置文件/etc/my.cnf(主、从都需要修改) ,[mysqld]中添加log_bin=mysql-bin server-id=1(主从不要相同,数字即可)
3、systemctl restart mysqld.server 重启使配置文件生效
4、进入主服务器数据库
grant all on *.* to 'slave'@'从服务器ip地址' identified by '给slave创建密码'; #创建的从服务器用户授予允许访问所有数据库的权限
5、查看主服务器二进制文件名及大小
show master status;
6、从服务器设置
change master to master_host='192.168.10.10',master_user='slave',master_password='123',master_log_file='mysql-bin.000001',master_log_pos=106;
成功后会再/var/lib/mysql下生成一个master-info的文件
7、查看从服务器同步状态
show slave statusG; 开启状态
start slave; 如果同步状态如上满一样是no表明没有开启,使用此命令开启即可
8、验证
主服务器创建库、表、添加数据
从服务器查看