mysql5.6 replication异步复制搭建

--mysql 复制搭建

准备sql2服务器 ,采用复制sql1的方法

--###sql2 解决vm网卡复制问题
vi /etc/udev/rules.d/70-persistent-net.rules
1、找到与ifconfig -a得出的MAC相同的一行
改成"NAME=eth0 "

2、把上面一行 NAME=‘eth0‘ 删掉

--sql2 同步mac地址 修改ip地址192.168.33.191
ifconfig
HWaddr 00:0C:29:D1:BE:65

vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE="eth0"
BOOTPROTO="static"
HWADDR="00:0C:29:D1:BE:65"
NM_CONTROLLED="yes"
ONBOOT="yes"
TYPE="Ethernet"
IPADDR="192.168.33.191"
GATEWAY="192.168.33.1"

--sql2 重启生效
reboot

--###sql2 删除源码编译安装的mysql
1、关闭mysql服务进程
su - mysql
mysqladmin shutdown

2、查找mysql安装目录
su - root
whereis mysql
mysql: /etc/mysql /usr/local/mysql

cd /etc/
rm -fr mysql

cd /usr/local/
rm -fr mysql

3、查找mysql相关目录
find / -name mysql
/data/sql1/data/mysql

cd /data
rm -fr sql1

--sql2 修改机器名 全新安装mysql
参见《mysql单机-单实例源码编译安装配置.sql》

--数据库在线备份配置
《xtrabackup安装与使用.sql》

--###配置mysql异步复制
master:sql1 192.168.33.190
slave :sql2 192.168.33.191

--1、master 配置

--2、确保master log-bin打开
mysql> show variables like ‘%log_bin%‘;
+---------------------------------+-----------------------------------+
| Variable_name | Value |
+---------------------------------+-----------------------------------+
| log_bin | ON |

--3、master 添加 server_id参数 多为ip
su - mysql
vi /etc/mysql/my.cnf
#replication
server_id = 10000

--4、master处 创建复制专用账户 usvr_replication 访问来源192.168.33网段 都可以连接master
CREATE USER [email protected]‘192.168.33.%‘ IDENTIFIED BY ‘123456‘;

GRANT REPLICATION SLAVE ON *.* TO [email protected]‘192.168.33.%‘; #--赋权replication slave 且可以复制所有用户数据库

--5、重启master
mysqladmin shutdown
sh mysql_startup.sh

--###slave配置
--1、测试usvr_replication 用户是否正常登录
mysql -h192.168.33.190 -p3306 -uusvr_replication -p

--2、slave 添加server_id 一般为ip 便于唯一
vi /etc/mysql/my.cnf
#replication
server_id = 10001

--3、确保auto.cnf 与master不一样
more /data/sql2/data/auto.cnf

--4、确保slave 也开启log-bin 目的:主备切换和备份
mysql> show variables like ‘%log_bin%‘;
+---------------------------------+-----------------------------------+
| Variable_name | Value |
+---------------------------------+-----------------------------------+
| log_bin | ON |

--数据同步
默认情况下,会同步复制用户下所有的DB,三种方法指定要复制的DB
1、在master上的/etc/my.inf中通过参数binlog-do-db、binlog-ignore-db设置需要同步的数据库。
2、在执行grant分配权限操作的时候,限定数据库
3、在slave上限定数据库使用replicate-do-db=dbname #--限定sql_thread需要应用的dbname

--5、重启slave
mysqladmin shutdown
sh mysql_startup.sh

--6、master 在线全备份 slave上恢复
《xtrabackup安装与使用.sql》

--7、定位全备份时刻,master上的 master_log_file和master_log_pos
more /data/sql2/data xtrabackup_binlog_pos_innodb
mysql-bin.000004 346

--8、配置slave到master 连接 执行时要小心,该句会多次执行时会产生重复数据!
mysql> change master to
master_host=‘192.168.33.190‘,
master_port=3306,
master_user=‘usvr_replication‘,
master_password=‘123456‘,
master_log_file=‘mysql-bin.000004‘,
master_log_pos=346;

--9、slave上启动开启同步
mysql> start slave;

--10、监控slave复制状态 如果有任何报错,建议
show slave status\G

--重启后replication 自动连接

--###配置半同步
《mysql_半同步复制配置.sql》

--###主备切换

各参数调整

时间: 2024-10-25 21:11:03

mysql5.6 replication异步复制搭建的相关文章

MySQL5.7主从复制-异步复制搭建

两台服务器,系统是Redhat6.5,MySQL版本是5.7.18.1.在主库上,创建复制使用的用户,并授予replication slave权限.这里创建用户repl,可以从IP为10.10.10.210的主机进行连接.grant replication slave on *.* to 'repl'@'10.10.10.210' identified by 'mysql'; 2.修改主服务器配置,加入如下配置:cat /etc/my.cnf[mysqld]server-id=1log-bin=

MySQL5.7--------基于无损复制搭建主从

1. 背景 * MySQL Replication默认都是异步(asynchronous),当主库在执行完一些事务后,是不会管备库的进度的.如果备库不幸落后,而更不幸的是主库此时又出现Crash(例如宕机),这时备库中的数据就是不完整的.简而言之,在主库发生故障的时候,我们无法使用备库来继续提供数据一致的服务了. * Semi sync Replication(半同步复制)是在master上提交完成后,再传送到slave等待ack应答,仅仅在一定情况下事务的已经传递到一个slave上,但是并不确

mysql 架构篇系列 2 复制架构一主一从搭建(异步复制)

一. 环境准备 1.1 主库环境(172.168.18.201) 环境 说明 查看脚本 操作系统版本 CentOS Linux release 7.4.1708 (Core) cat /etc/redhat-release 操作系统用户名和密码 root  js*2015 IP地址 172.168.18.201 ip addr 网关Gateway 172.168.18.1 cat /etc/sysconfig/network-scripts DNS 172.168.16.11 mysql 版本

PostgreSQL Replication之第四章 设置异步复制(1)

执行完您的第一个即时恢复(PITR,Point-In-Time-Recovery),我们准备在一个真正的复制设置上工作.在本章,您将学会如何设置异步复制和流.我们的目标是确保您可以实现更高的高可用和更高的数据安全性. 在本章,我们将讨论以下主题: • 配置异步复制 • 理解流 • 合并流和归档 • 管理时间线 在本章的最后,您将很容易地在几分钟内设置流复制. 4.1 设置流复制 在前面章节中,我们已经从简单的16MB XLOG文件做了恢复.从逻辑上讲,重放进程一次只能重放16MB.这在您的复制设

MySQL5.7新特性:lossless replication 无损复制

MySQL的三种复制方式 asynchronous 异步复制 fully synchronous 全同步复制 Semisynchronous 半同步复制 asynchronous replication 原理:在异步复制中,master写数据到binlog且sync,slave request binlog后写入relay-log并flush disk优点:复制的性能最好缺点:master挂掉后,slave可能会丢失事务代表:MySQL原生的复制 fully synchronous replic

呕心沥血博一文--MySQL主从异步复制

目录 1.概述 2.主从时间同步 3.主从服务器mysql部署 4.配置.启动从服务 5.测试 6.总结 1.概述 mysql内建的复制功能是mysql应用的"水平扩展"的架构,是mysql高性能运用的基础,为一个服务器配置一个或多个备库来进行数据的同步(准备的说不应该说是"同步",因为主从服务器的数据根本不可能做同步).在这样一个分布式的架构中各个服务器间时间应该同步才是,能为后期日志的统计分析提供更为准备的信息,这样才能准确反应出某个时间点我们系统的访问情况.

Mysql 异步复制

一:Mysql AB复制的原理:(异步复制)             1.MysqlAB 主机有三个线程相互联系mysql数据库,实施同步.Master主机(Binlog Dump线程):slave主机(IO线程与SQL线程).首先,由slave上执行startslave创建以个I/O线程,I/O线程链接到master上,并请求发送二进制日志文件里面的语句.Master创建一个线程(BinglogDump线程),slave创建一个I/O线程,读取master上的BinglogDump线程,将其拷

mysql5.7 MGR集群搭建

mysql5.7 MGR集群搭建部署 此文章由队员(谆谆)拟写 此文章来自 乌龟运维 官网 wuguiyunwei.com QQ群 602183872 最近看了一下mysql5.7的MGR集群挺不错的,有单主和多主模式,于是乎搭建测试了一下效果还不错,我指的不错是搭建和维护方面都比较简单.网上绝大多数都是单主模式,当然我这里也是,为了加深印象,特意记录一下搭建过程,等以后再去尝试多主模式,相信大家现在数据库的瓶颈基本都是在写,读写分离虽然是一种可行的解决方案,但是如果数据量很大,写一样会有问题,

PostgreSQL数据库Streaming Replication流复制主备延迟测试

PostgreSQL数据库流复制主库和备库之间的延迟时间是多少,无论对HA还是负载均衡来说都应该做个评估.比如单纯的HA架构,当主库发生故障时,我们允许多少时间内的数据丢失.不废话,直接进入本次实验测试. 测试环境: 主库:内存:32G,CPU:8核,IP:192.168.122.101 备库:内存:32G,CPU:8核,IP:192.168.122.102 数据库配置:默认 测试准备: 在两台服务器上安装好PostgreSQL数据库,安装过程不清楚的可以参考文章<PostgreSQL数据库编译