前言
在生产环境中单机MySQL的安全性得不到保证,主从复制可以很好解决安全性并且还能缓解MySQL压力,那么如何实现简单的MySQL主从复制,详细讲一下步骤和需要注意的要点。
主节点配置
在文件 /etc/my.cnf.d/mysql-server.cnf 中完成以下设置
启用二进制日志
log_bin=/data/logbin/mysql-bin
为当前节点设置一个全局惟一的ID号
server-id=#
为二进制日志的存放地址创建目录并且把目录所有者和所有组给MySQL
mkdir -p /data/logbinchown -R mysql.mysql /data/logbin/
重启mysql
systemctl restart mysqld
查看二进制日志的当前文件以及位置开始编号
show master status;
创建一个有复制权限的账号给从节点授权使用
create user ycyaw@\'192.168.2.%\' identified by \'123456\';grant replication slave on *.* to ycyaw@\'192.168.2.%\';
如果你不是mysql8那么这个步骤可以用一行命令就行
GRANT REPLICATION SLAVE ON *.* TO \'ycyaw\'@\'HOST\' IDENTIFIED BY \'123456\';
从节点配置
在文件 /etc/my.cnf.d/mysql-server.cnf 中完成以下设置
中继日志开启
server_id=2log-binread_only=ONrelay_log=relay-logrelay_log_index=relay-log.index
连接并启动
CHANGE MASTER TO MASTER_HOST=\'192.168.2.8\', MASTER_USER=\'ycyaw\', MASTER_PASSWORD=\'123456\', MASTER_LOG_FILE=\'mysql-bin.000001\', MASTER_LOG_POS=156;
开启线程
start slave
查看状态
show slave status\\G
常见问题
error connecting to master \'ycyaw@192.168.2.8:3306\' - retry-time: 60 retries: 2 message: Can\'t connect to MySQL server on \'192.168.2.8:3306\' (113)
mysqld: File \'/data/logbin/mysql-bin.index\' not found (OS errno 13 - Permission denied)
暂无评论内容