转载-Mysql主主复制架构配置

Mysql主主复制架构配置

转载:原始出处 http://luoweiro.blog.51cto.com/2186161/658550
MySQL主主复制结构区别于主从复制结构。在主主复制结构中,两台服务器的任
何一台上面的数据库存发生了改变都会同步到另一台服务器上,这样两台服务器
互为主从,并且都能向外提供服务。 这就比使用主从复制具有更好的性能。
接下来我将使用两个同样的服务器来实现这个效果:
具体Mysql的安装我就省略了,在上一篇的Mysql的主从架构的配置中有详细介绍
server1_mysql:192.168.1.108
server2_mysql: 192.168.1.110
拓扑结构:
server1_mysql-------server2_mysql

1.创建用户并授权
server1:
mysql> GRANT REPLICATION SLAVE ON *.* TO ‘server2‘@‘192.168.1.110‘
IDENTIFIED BY ‘server2‘;
server2:
mysql> GRANT REPLICATION SLAVE ON *.* TO ‘server1‘@‘192.168.1.108‘
IDENTIFIED BY ‘server1‘;

2.修改Mysql的主配置文件
server1:
[mysqld]
server-id = 10
log-bin = mysql-bin
replicate-do-db = mydb
auto-increment-increment = 2 //每次增长2
auto-increment-offset = 1 //设置自动增长的字段的偏移量,即初始值为2
启动Mysql服务:
# service mysqld restart
server2:
[mysqld]
server-id = 20
log-bin = mysql-bin
replicate-do-db = mydb
auto-increment-increment = 2 //每次增长2
auto-increment-offset = 2 //设置自动增长的字段的偏移量,即初始值为2
启动Mysql服务:
# service mysqld restart
注:二都只有server-id不同和 auto-increment- offset不同
auto-increment-increment的值应设为整个结构中服务器的总数,本案例用到两
台服务器,所以值设为2。
3.重新启动两个服务器
# service mysqld restart
4.为了让两个数据库一样,我们备份其中一个数据库,然后在另一个数据库上恢
复,这样是两个数据库一开始都是一样的。
在server1上操作:
# mysqldump --databases luowei > /tmp/luowei.sql
在server2上操作:
创建一个与mydb同名的空数据库
# mysql
> CREATE DATABASE mydb;
>\q
# scp 192.168.1.108:/tmp/mydb.sql ./
# mysql -uroot -p mydb < /tmp/luowei.sql
5.然后两个服务器相互通告二进制日志的位置并启动复制功能:
在server1上:
# mysql
> CHANGE MASTER TO
> MASTER_HOST=‘192.168.1.110‘,
> MASTER_USER=‘server2‘,
> MASTER_PASSWORD=‘server2‘;
mysql > START SLAVE;
在server2上:
# mysql
> CHANGE MASTER TO
> MASTER_HOST=‘192.168.1.108‘,
> MASTER_USER=‘server1‘,
> MASTER_PASSWORD=‘server1‘;
mysql > START SLAVE;
6.查看,并验证:
分别在两个数据库服务器上查看
mysql > SHOW SLAVE STATUS\G;
然后查看数据库和表,你会发现内容是一样的,这样就是整个主主Mysql的架构
的配置过程。

时间: 2024-12-24 02:11:17

转载-Mysql主主复制架构配置的相关文章

Mysql主从同步(Mysql A B复制)配置

Mysql主从同步(Mysql A B复制)配置 Mysql主从同步(Mysql AB复制)功能是自动备份数据 vim/var/lib/mysql/auto.cnf  数值不能一样 master主               slave从 192.168.1.1        192.168.1.2 1.主从环境配置:    mysql_5.6版本 servicemysql start         ping通         service iptablesstop         sete

MySQL建立双向主备复制server配置方法

1.环境描写叙述 serverA(主) 192.85.1.175 serverB(从) 192.85.1.176 Mysql版本号:5.1.61 系统版本号:System OS:ubuntu 10.10 X86 (系统安装及数据环境搭建,省略) 2. 创建同步用户: 在服务B命令行运行 : grant replication slave on *.* to 'replication'@'%' identified by 'mysqlsync'; flush privileges; grant F

MySQL主从同步(复制)的配置

1.主从复制的原理: *Master,记录数据更改操作 - 启用binlog记录模式 - 允许Slave读取binlog日志 *Slave运行2个同步线程 - Slave_IO:负责连接Master,复制其binlog日志文件到本机的relay-log文件 - Slave_SQL:执行本机relay-log文件里的SQL语句,重现Master的数据操作 2.基本构建思路: 1)初始化现有库:将主库导入从库,确保数据一致性 2)配置Master,主服务器:调整运行参数,授权一个同步用户 3)配置S

MySQL半同步复制原理配置与介绍详解

环境介绍: Ubuntu Server 16.04.2+MySQL 5.7.17 Community Server (GPL) MySQL安装 通过APT的方式安装,官方指导文档地址: https://dev.mysql.com/downloads/repo/apt/ 1.下载mysql-apt-config_0.8.3-1_all.deb 2.安装deb A Quick Guide to Using the MySQL APT Repository: https://dev.mysql.com

Linux服务篇之七:MySQL主从原理及架构配置

Linux服务篇之七:MySQL引擎了解.主从原理及架构配置 一.MySQL引擎了解 MyISAM引擎 默认表类型,它是基于传统的ISAM类型,ISAM是IndexedSequential Access Method (有索引的顺序访问方法) 的缩写,它是存储记录和文件的标准方法.不是事务安全的,而且不支持外键,如果执行大量的select, MyISAM比较适合. InnoDB引擎 支持事务安全的引擎,支持外键.行锁.事务是他的最大特点.Innodb最初是由innobase Oy公司开发,200

Linux下MySQL主从同步复制详细配置

注:主服务器:192.168.100.245      从服务器:192.168.100.246 一.检查系统是否安装MySQL服务 1.1 rpm -qa |grep -i mysql 二.安装MySQL服务器 2.1 rpm -ivh MySQL-server-5.5.16-1.rhel4.i386.rpm MySQL-client-5.5.16-1.rhel4.i386.rpm MySQL-devel-5.5.16-1.rhel4.i386.rpm 三.启动MySQL服务 3.1 serv

MySql --主从复制 主主复制

MySql 复制 系统的扩展方式有:scale up [向上扩展或是垂直扩展]  scale out:[向外扩展或是水平扩展] Mysql的复制就是为了实现mysql的水平扩展 为什么要实现水平扩展 当前端节点很少时可以用垂直扩展的方式进行换更好的硬件,但是这会有上限当达到一定的程度后就无法在继续扩展,同时这种扩展的方式成本会很高. 因此更好的办法还是进行水平扩展.来应对前方的压力.但是这对于mysql水平扩展有一个问题就是数据共享的问题. 共享存储的解决方案有NAS SAN 假设使用的是NAS

mysql主备复制搭建(使用mysqld_muti)

这里我使用单台服务器上的两个mysql实例进行搭建,主要用到了mysql自带的mysqld_multi 一.复制原理 开始搭建前有个mysql复制原理的基础知识需要补充: mysql进行主备复制使用到了三个线程: 1.主库上的转存储线程: 会将mysql server提交的事务写入到二进制文件中,这个二进制文件就叫做binlog. 2.备库上的连接线程: 备库启动后,负责和主库通信,读取binlog,同时,将binlog存储进自己的一个叫中继日志的relaylog中. 3.备库上的relaylo

Master-Master MySQL 复制安装配置试验

一.  架构 二.  安装Mysql server 下面以在DB1(192.168.0.10)的配置为例,DB2的配置基本一样,只要修改my.cnf中的server_id =2 1.        安装mysql-server db1# apt-get install mysql-server 注: ?  如果安装有问题,执行apt-getupdate更新源后再重试 ?  安装过程中需要输入root密码,设置后记住(123456) 2.        验证数据库安装 db1# mysql -p