LinuxEye - Linux系统教程

LinuxEye - Linux系统教程

当前位置: 主页 > 数据库 >

MySQL数据同步【双主热备】

时间:2015-01-31 21:59来源:未知 编辑:linuxeye 点击:
实现效果,主库和从库CURD的操作互相时时同步 两台服务器 主库ip:192.168.1.1 从库ip:192.168.1.2 主库配置 1;编辑 my.cnf [mysqld]下添加 server-id=1 log-bin=mysql-bin relay-log=relay-bin relay-log-index=r

实现效果,主库和从库CURD的操作互相时时同步

两台服务器
主库ip:192.168.1.1
从库ip:192.168.1.2

主库配置
1;编辑 my.cnf [mysqld]下添加
server-id=1
log-bin=mysql-bin
relay-log=relay-bin
relay-log-index=relay-bin-index
replicate-do-db=devil #需要备份的数据库
slave_skip_errors = 1062 #忽略错误

#解决互相数据插入自增冲突
auto_increment_offset=1
auto_increment_increment=2

保存重启mysql


2;进入mysql控制台执行

mysql -uroot -proot

stop slave;

change master to master_host='192.168.1.2',master_user='root',master_password='root';

开启配置
start slave;

查看警告
Show warnings;

查看配置状态
show slave status\G

以下两项yes表示状态配置成功,如果error有错误根据提示解决:
Slave_IO_Running: Yes
Slave_SQL_Running: Yes

从库配置
1;编辑 my.cnf [mysqld]下添加
server-id=2
log-bin=mysql-bin
relay-log=relay-bin
relay-log-index=relay-bin-index
replicate-do-db=devil #需要备份的数据库
slave_skip_errors = 1062 #忽略错误

#解决自增冲突
auto_increment_offset=2
auto_increment_increment=2

保存重启mysql

2;进入mysql控制台执行
change master to master_host='192.168.1.1',master_user='root',master_password='root';
stop slave;
start slave;
Show warnings;
show slave status\G

以下两项yes表示状态配置成功,如果error有错误根据提示解决:
Slave_IO_Running: Yes
Slave_SQL_Running: Yes

日志冲突解决
查看所有二进制日志
SHOW MASTER LOGS;

清空所有二进制日志
RESET MASTER;

网络连接失败
Last_IO_Errno: 1130
1;一般是防火墙开启,拒绝3306端口。或者是配置错误,如用户名或密码
2;还有可能是主库备份帐号的访问权限,进入主库mysql控制台
use mysql;
select * from user where user='root';
update user set host = '%' where user ='root';
flush privileges;

转载请保留固定链接: https://linuxeye.com/database/2161.html

------分隔线----------------------------
标签:mysql
栏目列表
推荐内容