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

企鹅博客
企鹅博客
企鹅博客
25193
文章
0
评论
2019年10月1日01:51:39 评论 108 views
广告也精彩

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

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

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

系统环境: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

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

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

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

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

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

企鹅博客
  • 本文由 发表于 2019年10月1日01:51:39
  • 转载请务必保留本文链接:https://www.qieseo.com/187820.html
NUMA导致的Oracle性能问题 Linux-数据库

NUMA导致的Oracle性能问题

背景简介: Oracle版本:11.2.0.4   OS 版本:OEL5.8 在一次Oracle的Dataguard正常switchover过程中,遇到了一个极其诡异的问题,一条主业务的SQL语句在新...
Oracle中IP地址和掩码转换成CIDR格式 Linux-数据库

Oracle中IP地址和掩码转换成CIDR格式

遇到的问题如下:数据库中存储了IP地址,以及IP地址掩码,需要将他们转化成CIDR格式的,并且不仅仅是将掩码转化成CIDR对应的数字的问题,需要将原有的IP地址转化成对应的网络地址,例如IP地址是58...

发表评论