共计 1953 个字符,预计需要花费 5 分钟才能阅读完成。
一. 安装环境
1、系统环境
系统 | IP | 主机名 | 说明 | server_id |
---|---|---|---|---|
CentOS6.7 | 192.168.0.173 | master | 数据库:主 | 173 |
centos6.7 | 192.168.0.174 | slave | 数据库:从 | 174 |
2、管理账号
linux 服务器账号 / 密码 | 数据库管理员账号密码 | 主从复制账号 |
---|---|---|
root/zxfly | zxfly/zxfly | zxfly_slave/zxfly |
3、检查 MySQL 环境需求
mysql 安装:http://www.linuxidc.com/Linux/2017-11/148266.htm
1)主库需要开启 binlog 参数
# 主库上查看
cat /etc/my.cnf|grep ‘log_bin’
log_bin=mysql_bin
2)确保服务器的 server_id 的值唯一
#MySQL-master
cat /etc/my.cnf|grep ‘server-id’
server-id=173
#MySQL-slave
cat /etc/my.cnf|grep ‘server-id’
server-id=173
3)确保服务器正常运行
# 监测方法有
ps -ef|grep mysql
ss -lntup|grep 3306
service mysqld status
二. 部署过程
#master 上的操作
登录 mysql 以 root 用户登录:
mysql -uroot -pup366.com
1、添加并授权主从复制账号
mysql>grant replication slave on *.* to ‘zxfly_slave’@’192.168.0.%’ identified by ‘zxfly’;
mysql>flush privileges;
2、查看数据库当前的位置点信息
# 查看到的位置点要记录,下面会用到
mysql>show master status;
## 如果主从不是新部署的环境,请执行以下操作。否则跳过
3、全备数据库
mysqldump -uroot -pzxfly -A -B -R –master-data=2 –events –single-transaction >/root/all.sql
4、将全备发送到从库
scp /root/all.sql 192.168.0.174:/root/
#slave 上的操作
# 主从非新部署环境请执行步骤 1 的操作,否则跳过。
1、导入全备,将主库的全备导入从库的数据库中。
mysql –uroot –pzxfly </root/all.sql
2、登陆从库的数据库执行同步信息的账号位置点的录入
change master to
master_host=’192.168.0.173′, #主库所在主机 IP
master_port=3306, #主库端口
master_user=’zxfly_slave’, #授权的同步账号
master_password=’zxfly’, #授权账号的密码
MASTER_LOG_FILE=’mysql_bin.000001′, #在主库上查看的最新的 binlog
MASTER_LOG_POS=120; #在主库上查看的最新的位置点
3、开始同步
mysql>start slave;
三. 验证
1、从库执行
mysql -uroot -p -e “show slave status\G”|egrep ‘Slave_IO_Running:|Slave_SQL_Running:’
# 过滤出来如果是两个 yes 及为同步成功
2、可以对主库进行测试,主要为增删改操作看从库是否同步。
3、报错信息一览
错误代码:
2003 #检查主从复制账号是否输入错误,防火墙是否允许通过
1045 #查看账号权限是否正常
1236 #查看 binlog 位置点是否错误,binlog 日志名字是否错误
MySQL5.6 主从复制搭建基于日志(binlog)http://www.linuxidc.com/Linux/2017-05/144162.htm
MySQL 主从配置图文详解 http://www.linuxidc.com/Linux/2017-04/143211.htm
Linux 环境下 MySQL 数据库主从同步配置 http://www.linuxidc.com/Linux/2017-04/143017.htm
MySQL 主从复制部署 http://www.linuxidc.com/Linux/2017-09/146728.htm
Ubuntu 16.04 下实现 MySQL 主从复制 http://www.linuxidc.com/Linux/2017-08/146624.htm
MySQL 主从复制详解 http://www.linuxidc.com/Linux/2017-10/147550.htm
本文永久更新链接地址 :http://www.linuxidc.com/Linux/2017-11/148267.htm