MySQL主从复制环境搭建
环境条件
虚拟机两台,其中一台搭建为主库,另一台搭建为从库环境。(建议设置一下静态ip地址,我下面的例子中主库为...100,从库为...101)
主库环境搭建
修改MySQL的配置文件/etc/my.cnf,在文件开头[mysqld]下编辑下面的两行:
[mysqld]
log-bin=mysql-bin # 启用二进制日志
server-id=100 # 服务器唯一ID
重启服务
systemctl restart mysqld
登录mysql数据库,授权slave用户相应的权限,以便正常使用复制功能,用户的名称为:xiaoming,密码为Root@123456
GRANT REPLICATION SLAVE ON *.* to 'xiaoming'@'%' identified by 'Root@123456';
使用下面的命令查看主库的状态
show master status;

记住上面框住的两个值,待会配置从库要用到的(得自己查一下的,每台机子的状态都不一样的,而且,查了之后如果对数据库进行增删改,按道理需要重新再获取一次的,总之,到时候配置到从库中的这两个值,必须的最新的。)
从库环境搭建
修改MySQL配置文件/etc/my.cnf
[mysqld]
server-id=101
重启服务
systemctl restart mysqld
登录MySQL,执行命令
change master to
master_host='*.*.*.100',master_user='xiaoming',master_password='Root@123456',master_log_file='mysql-bin.000002',master_log_pos=154;
start slave;
看后面两个配置,一个master_log_file,一个master_log_pos就是前面主库配置最后查询内容中,红色方框框出来的部分。最后查看下是否配置完成了,在从机上执行
show slave status \G
如果是下面这个样子,两个Yes的话就成功了。Slave_IO_Running的话可能是数据库UUID没配置:Slave_IO_Running为No的解决方法


浙公网安备 33010602011771号