LVS+MYCAT读写分离+MYSQL同步部署+故障自动转移

本文详细介绍了如何配置MySQL主备同步和主主同步,包括配置主数据库和备用数据库,设置同步账户,使用Navicat进行数据同步,以及通过GTID进行同步。此外,还涉及到MYCAT的安装与配置,以及使用MYCAT实现主从策略和分片策略,确保故障自动转移和读写分离。
摘要由CSDN通过智能技术生成

1      配置MYSQL主备同步

1.1    测试环境

mysql版本:5.6.24;

操作系统内核版本:Linux-3.13-0-32

主数据库IP:192.168.10.3;

主数据库名:db351353;

备用数据库IP:192.168.10.4;

备用数据库名:db351353。

1.2    配置主数据库

1.2.1   编辑my.cnf文件

#服务器唯一ID,一般取IP最后一段

server_id = 3

#启用二进制日志

log_bin=mysql_bin

#需要备份的数据库名  多个库以逗号分隔

Binlog_do_db =db351353

#若涉及及同步函数或者存储过程需要配置,否则主备会产生异常不能同步

log_bin_trust_function_creators=TRUE

1.2.2   重启数据库

# service myql.server restart

1.3    锁定主数据库DDL操作

mysql> flush tables with read lock;

1.4    主备已有数据同步

用navicat for mysql将主数据库数据同步到备数据库

 

1.5    停止从服务

mysql>stop slave;

1.6    配置备用数据库

1.6.1   编辑my.cnf文件

#服务器唯一ID,一般取IP最后一段

server_id = 4

1.6.2登录主数据库查看master状态

mysql>show master status;

1

1.6.3       执行change master to系列命令

mysql> change master to

master_host=’192.168.10.3′,

master_user=’iom’,–该用户要有Repl_slave_priv权限,没有可用grant replication slave on *.* to ‘iom’@’%’ identified by ‘xf4851213’授权

master_password=’123’,

master_log_file=’mysql_bin.000005’, –根据主服务器show master status出来的File结果填写

master_log_pos=1192; –根据主服务器show master status出来的Position结果填写

1.7    重启从服务

mysql>start slave;

1.8    解锁主数据库

mysql> unlock tables;

 

1.9    验证主从同步

在备份数据库上执行

mysql>show slave status;

2

slave_IO_running和slave_SQL_running 为yes。

主数据库新建一个表,往表里插入几条数据,备份数据库可以同步过来表和表中的数据。

2      配置MYSQL主主同步

2.1    测试环境

mysql版本:5.6.24;

操作系统内核版本:Linux-3.13-0-32

数据库A IP:192.168.10.3;

数据库B IP:192.168.10.4;

要同步的数据库名:db351353;db352354

2.2    编辑配置文件

2.2.1   A机配置文件

 

# vi my.cnf

 

#服务器唯一ID,一般取IP最后一段

server_id = 3

#启用二进制日志

log_bin=mysql_bin

#需要备份的数据库名

binlog_do_db =db351353

binlog_do_db =db352354

binlog_ignore_db=mysql

#若涉及同步函数或者存储过程需要配置,否则主备会产生异常不能同步

log_bin_trust_function_creators=TRUE

#同步参数:
#保证slave挂在任何一台master上都会接收到另一个master的写入信息

log_slave_updates
sync_binlog=1

# auto_increment_offset表示自增长字段从哪个数开始,两主机应一个奇数一个偶数。

auto_increment_offset=1

#auto_increment_increment表示自增长字段每次增长几位数,两主机应该一模一样

auto_increment_increment=2

#过滤掉一些没啥大问题的错误

slave_skip_errors=all

#需要进行同步的数据库.如果有多个数据库可使用多个replicate_do_db选项

replicate_do_db = db351353

replicate_do_db = db352354

#不需要同步的数据库.如果有多个数据库可使用多个replicate_ignore_db选项

replicate_ignore_db = mysql

replicate_ignore_db = information_schema

 

 

2.2.2   B机配置文件

# vi my.cnf

 

server_id = 4

log_bin=mysql_bin

binlog_do_db = db351353

binlog_do_db = db352354

binlog_ignore_db=mysql

replicate_do_db = db351353

replicate_do_db = db352354

log_bin_trust_function_creators=TRUE

 

replicate_ignore_db = mysql

replicate_ignore_db = information_schema

 

log_slave_updates

sync_binlog=1

auto_increment_offset=2  –此处与另一台机子不同

auto_increment_increment=2

slave_skip_errors=all

2.2.3   配置好my.cnf后,重启数据库A和B。

mysql>service mysql.server restart

 

2.3    执行配置命令

2.3.1   设置同步帐户

创建帐户并赋权

A机执行:

mysql> grant replication slave on *.* to ‘iomsync’@’192.168.10.4’ identified by ‘123’;

B机执行:

mysql> grant replication slave on *.* to ‘iomsync’@’192.168.10.3’ identified by ‘123’;

2.3.2   锁定数据库,查看主机服务状态

分别在A,B上执行:

mysql>flush tables with read lock;#防止进入新的数据

mysql>show master status;#查看主机服务状态

2.3.3   同步已有数据

使用navicat的数据传输功能同步数据,把源和目标两属性填写正确,左下角的数据库对象选择全选,点开始。

注意:同步时目标mysql必须先建好要同步的数据库。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值