mysql主从搭建
环境准备centos6两台
关闭防火墙,降低标准
service iptables stop
setenforce 0
安装/启动mysql
yum -y install mysql mysql-server
service mysqld start
主上修改配置文件vim /my.cnf
6行添加内容
server-id=1
log_bin=mysql-bin
重启服务
service mysqld restart
登录mysql,给从用户授权
reset master;
删除二进制日志 【有环境慎用】
grant replication slave on *.* to ‘tom’@'192.168.1.102’ identified by ‘123’
ip也可写"%",但获取速度会相对慢一点
字段解析
授权 --响应 --从 --在–全--局 --用户 --ip --密码是
flush privileges;
刷新数据库
show master status;
查看主服务器状态
【记住日志文件名和位置,备用】
查看二进制日志是否开启
on是开启,off是关闭
去从上执行相同的安装/启动操作
开启中继日志:
vim /my.cnf
编辑配置文件
6行添加内容
server-id=2
relay_log=mysql-relay
service mysqld restart
重启服务
登录mysql执行同步操作
stop slave;
停止从同步
配置从服务器:
change master to
master_host=’192.168.1.101’ , 【master的ip地址】
master_user=’tom’ , 【登录主使用的用户】
master_password=’123’ , 【登录主使用的密码】
master_log_file=’mysql-bin.000001’ , 【当前写入的二进制日志文件】
master_log_pos=331;【位置】
start slave ;
开启从同步
查看是否成功开启
show slave status \G;
注意Slave_IO_Running和Slave_SQL_Running 是否为Yes,如果都是Yes的话,已经说明你配置成功了
在master主机上创建一个数据库,然后去Slave查看是否同步,若同步则成功!
拓展:多主多从的架构
除了一主多从的架构之后,还有双主双从或者多主多从,较常见的复制架构有“一主一从”、“一主多从”、“双主”、“多级复制”和“多主环形机构”等
IO状态显示错误【No】:
1.防火墙的问题
2.登录master的用户或密码不正确,再者未授权
3.ip地址不正确
4.二进制日志文件名【file】位置【position】错误
5.二进制日志索引导致的,reset master;【慎用】