• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

CentOS 6.3下MySQL主主互备架构配置

mysql 搞代码 4年前 (2022-01-09) 16次浏览 已收录 0个评论

MySQL主主互备结构是基于mysql增量日志基础上的,区别于主从复制结构.在主主复制结构中,两台服务器的任何一台上面的数据库存发生

MySQL主主互备结构是基于mysql增量日志基础上的,区别于主从复制结构.

在主主复制结构中,两台服务器的任何一台上面的数据库存发生了改变都会同步到另一台服务器上,这个改变是基于sql语句的改变,如果删除系统数据库源文件或删除后新创建同名MYSQL表实现同步则无效。这样两台服务器互为主从,并且都能向外提供服务,这就比使用主从复制具有更

本文来源gaodai.ma#com搞##代!^码@网*

好的性能.

接下来我将使用两个相同的环境来实现这个效果:

系统环境:CentOS6.3

数据库: mysql-5.6.10

安装配置mysql(略)

1.主1 mysql配置:(192.168.7.201)

删除之前遗留bin日志

# rm -rf /usr/local/mysql/log/bin*

修改mysql配置文件:

# vi /etc/my.cnf

添加:

—————–

# Replication Master Server 1

# bin日志路径

log-bin = /usr/local/mysql/log/bin.log

# 服务器ID号

server-id = 1

# 忽略mysql数据库复制

binlog-ignore-db=mysql

# 每次增长2

auto-increment-increment = 2

# 设置自动增长的字段的偏移量,即初始值为2

auto-increment-offset = 1

————

# mysql -u root -p123456

在主1上为主2添加同步帐号

> grant replication slave on *.* to ‘slave’@’192.168.7.249’ identified by ‘123456’;

将主1的数据库表全部备份,并发送到主2服务器上。

# /usr/local/mysql/bin/mysqldump -u root -p123456 –opt –skip-lock-tables –flush-logs –all-database > /root/allbak.sql

# cd ~

# scp allbak.sql [email protected]:/root

重启服务

# service mysqld restart

# mysql -u root -p123456;

配置连接到主2服务器(注意这步一定要在主2添加账户后执行)

> stop slave;

> change master to master_host=’192.168.7.249′,master_user=’slave’,master_password=’123456′;

> start slave;

2.主2 mysql配置(192.168.7.249)

删除之前遗留bin日志

# rm -rf /usr/local/mysql/log/bin*

修改mysql配置文件:

# vi /etc/my.cnf

添加:

——————–

# Replication Master Server 2

# bin日志路径

log-bin = /usr/local/mysql/log/bin.log

server-id=2

# 忽略mysql数据库复制

replicate-ignore-db=mysql

# 每次增长2

auto-increment-increment = 2

# 设置自动增长的字段的偏移量,即初始值为2

auto-increment-offset = 2

———————

# mysql -u root -p123456

在主2上为主1添加同步帐号

> grant replication slave on *.* to ‘slave’@’192.168.7.201’ identified by ‘123456’;

恢复主1的数据库到主2

#/usr/local/mysql/bin/mysql -u root -p123456 < /root/allbak.sql

重启服务

# service mysqld restart

# mysql -u root -p123456;

配置连接到主1服务器

> stop slave;

> change master to master_host=’192.168.7.201′,master_user=’slave’,master_password=’123456′;

> start slave;

最后分别登陆两台服务器mysql后台查看主主备份连接状态

# mysql -u root -p123456;

> show slave status\G;

搜索这三行,如下则主主互备配置成功

Slave_IO_State: Waiting for master to send event

Slave_IO_Running: Yes

Slave_SQL_Running: Yes

当主1的数据库增加,删除,改变数据时,,主2也会同步更新。

当主2的数据库增加,删除,改变数据时,主1也会同步更新。

这样就可以配合keepalived实现数据库双机热备+数据同步互备,大大提高了MYSQL的可靠性和安全性。

Keepalived+MySQL互备


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:CentOS 6.3下MySQL主主互备架构配置

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址