-------------------------------------------------------------------------------主从复制------------------------------------------------------------------------------

1.主节点设置

#配置文件设置

server-id=#

log-bin

#创建复制权限账号(针对mariadb的10版本,mysql的8版本需授权和创建账号分两步)

GRANT REPLICATION SLAVE ON *.* TO 'repluser'@'HOST' IDENTIFIED BY 'replpass';

#查看记录二进制日志文件名和位置(从此位置传送给从节点,从此位置开始同步)

SHOW MASTER LOG;

2.从节点设置

#配置文件设置

server-id=#

read_only=ON

relay_log=relay-log (可选)

relay_log_index=relay-log.index (可选)

#使用有复制权限的用户账号连接至主服务器,并启动复制线程

CHANGE MASTER TO MASTER_HOST='masterhost',
MASTER_USER='repluser',
MASTER_PASSWORD='replpass',
MASTER_LOG_FILE='mariadb-bin.xxxxxx',
MASTER_LOG_POS=#;
START SLAVE [IO_THREAD|SQL_THREAD];
SHOW SLAVE STATUS;

-------------------------------------------------------------------------------级联复制------------------------------------------------------------------------------

1.主节点设置

#配置文件设置

server-id=#
log-bin

#创建复制权限账号

grant replication slave on *.* to repluser@'用户IP'

#备份数据库

mysqldump -A -F --single-transaction --master-data=1 > /backup.sql

2.级联从节点设置

#配置文件设置

server-id=#
log-bin
read-only
log_slave_updates

#编辑备份文件

vim /backup.sql
CHANGE MASTER TO
MASTER_HOST='master节点的iP',
MASTER_USER='repluser',
MASTER_PASSWORD='centos',
MASTER_PORT=3306,
MASTER_LOG_FILE='mysql-bin.000004',
MASTER_LOG_POS=523;

#还原备份文件

set sql_log_bin=0;
source /backup.sql
show master logs; (记录二进制位置,给第三个节点使用)
set sql_log_bin=1;
 start slave;

3.第三节点设置

#配置文件设置

server-id=#
read-only

#编辑备份文件

vim /backup.sql

CHANGE MASTER TO
MASTER_HOST='中间节点的IP',
MASTER_USER='repluser',
MASTER_PASSWORD='magedu',
MASTER_PORT=3306,
MASTER_LOG_FILE='mariadb-bin.000002', MASTER_LOG_POS=344;

#还原备份文件

set sql_log_bin=0;
source /backup.sql
set sql_log_bin=1;
 start slave;

------------------------------------------------------------------------------主主复制------------------------------------------------------------------------------

1.第一个主节点设置

server-id=#
log-bin

show master logs;

grant replication slave on *.* to repluser@'第二个主节点IP'  identified by 'password';(授权在二进制日志记录点后,第二节点会复制本条命令不用配置)

2.第二个主节点设置

server-id=#
log-bin

CHANGE MASTER TO
MASTER_HOST='第一主节点的IP',
MASTER_USER='repluser',
MASTER_PASSWORD='password',
MASTER_PORT=3306,
MASTER_LOG_FILE='mariadb-bin.000002',

MASTER_LOG_POS=344;

start slave;

show master logs;

3.第一个主节点设置

CHANGE MASTER TO

MASTER_HOST='第二主节点的IP',
MASTER_USER='repluser',
MASTER_PASSWORD='password',
MASTER_PORT=3306,
MASTER_LOG_FILE='mariadb-bin.000002',

MASTER_LOG_POS=344;

start slave;

------------------------------------------------------------------------------半同步复制------------------------------------------------------------------------------

1.主节点设置(针对mariadb10版本后,本设置是建立主从设置成功基础上)

server-id=#
log-bin

plugin-load-add = semisync_master
rpl_semi_sync_master_enabled=ON
rpl_semi_sync_master_timeout=3000(设置同步等待时间)

SHOW GLOBAL VARIABLES LIKE '%semi%';(查看半同步变量)

SHOW GLOBAL STATUS LIKE '%semi%';(查看半同步变量状态)

2.从节点设置

server-id=#

plugin_load_add = semisync_slave
rpl_semi_sync_slave_enabled=ON

mysql主从复制,主主复制,级联复制,半同步复制的更多相关文章

  1. 深入MySQL复制(三):半同步复制

    1.半同步复制 半同步复制官方手册:https://dev.mysql.com/doc/refman/5.7/en/replication-semisync.html 默认情况下,MySQL的复制是异 ...

  2. MySQL 5.7 新特性之增强半同步复制

    1. 背景介绍 半同步复制 普通的replication,即mysql的异步复制,依靠mysql二进制日志也即binary log进行数据复制.比如两台机器,一台主机(master),另外一台是从机( ...

  3. MySQL高可用方案 MHA之四 keepalived 半同步复制

    主从架构(开启5.7的增强半同步模式)master: 10.150.20.90   ed3jrdba90slave: 10.150.20.97    ed3jrdba97 10.150.20.132 ...

  4. mysql数据库备份,主从复制及半同步复制

    1.使用mysqldump备份数据库并通过备份及二进制日志还原数据(备份完后再写入数据,然后再删库) mysqldump -A --single-transaction -F --master-dat ...

  5. MySQL 5.7 基于GTID主从复制+并行复制+半同步复制

    环境准备 IP HOSTNAME SERVICE SYSTEM 192.168.131.129 mysql-master1 mysql CentOS7.6 192.168.131.130 mysql- ...

  6. MySQL主从复制半同步复制原理及搭建

    在MySQL5.5之前的版本中,MySQL的复制是异步复制,主库和从库的数据之间存在一定的延迟,比如网络故障等各种原因,这样子容易存在隐患就是:当在主库写入一个事务成功后并提交了,但是由于从库延迟没有 ...

  7. MySQL 半同步复制+MMM架构

    200 ? "200px" : this.width)!important;} --> 介绍 上篇文章介绍了MMM架构的实现方法,但是上篇文章的MMM方案的复制是异步复制,异 ...

  8. mysql配置为半同步复制

    mysql 半同步插件是由谷歌提供,具体位置/usr/local/mysql/lib/plugin/下,一个是 master用的 semisync_master.so,一个是 slave 用的 sem ...

  9. Mysql半同步复制模式说明及配置示例 - 运维小结

    MySQL主从复制包括异步模式.半同步模式.GTID模式以及多源复制模式,默认是异步模式 (如之前详细介绍的mysql主从复制).所谓异步模式指的是MySQL 主服务器上I/O thread 线程将二 ...

  10. Centos7.5部署MySQL5.7基于GTID主从复制+并行复制+半同步复制+读写分离(ProxySQL) 环境- 运维笔记 (完整版)

    之前已经详细介绍了Mysql基于GTID主从复制的概念,原理和配置,下面整体记录下MySQL5.7基于GTID主从复制+并行复制+增强半同步复制+读写分离环境的实现过程,以便加深对mysql新特性GT ...

随机推荐

  1. shell脚本的使用该熟练起来了,你说呢?(篇三)

    继续前一篇的文章: shell脚本的使用该熟练起来了,你说呢?(篇一) shell脚本的使用该熟练起来了,你说呢?(篇二) 文章里面测试的命令脚本文件,大家关注我公众号后,可以私信我领取文件. 作者: ...

  2. python内置常量是什么?

    摘要:学习Python的过程中,我们会从变量常量开始学习,那么python内置的常量你知道吗? 一个新产品,想熟悉它,最好的办法就是查看说明书! 没错,Python也给我们准备了这样的说明书--Pyt ...

  3. ACwing 258. 石头剪子布

    258. 石头剪子布 题目传送门 题意挺好理解,但是当我看样例的时候就傻了.不是说好的只有一个裁判的吗?出现矛盾的时候该怎么判定裁判? 分析 观察这个数据量就会发觉是有猫腻的,直接从正面求出裁判并不是 ...

  4. CF - 392 C. Yet Another Number Sequence (矩阵快速幂)

    CF - 392 C. Yet Another Number Sequence 题目传送门 这个题看了十几分钟直接看题解了,然后恍然大悟,发现纸笔难于描述于是乎用Tex把初始矩阵以及转移矩阵都敲了出来 ...

  5. 2019牛客暑期多校训练营(第五场)I.three points 1(暴力几何)

    题意:现在给你一个矩形边框 一个三角形的三边长 现在问你能否把三角形放入矩阵边框中 并且输出三个点的坐标 思路:我们可以发现如果一定有解 我们就可以让一个点在左下角(0,0)处 还有一个点在矩形边上 ...

  6. Codeforces Round #241 (Div. 2) B. Art Union (DP)

    题意:有\(n\)个画家,\(m\)幅画,每个画家负责\(m\)幅画,只有前一个画家画完时,后面一个画家才能接着画,一个画家画完某幅画的任务后,可以开始画下一幅画的任务,问每幅画最后一个任务完成时的时 ...

  7. Codeforces Round #666 (Div. 2) C. Multiples of Length (贪心)

    题意:给你一个由\(0,1,?\)组成的字符串,你可以将\(?\)任意改成\(0\)或\(1\),问你操作后能否使得该字符串的任意长度为\(k\)的区间中的\(0\)和$1的个数相等. 题解:我们首先 ...

  8. Codeforces Round #529 (Div. 3) F. Make It Connected (贪心,最小生成树)

    题意:给你\(n\)个点,每个点都有权值,现在要在这\(n\)个点中连一颗最小树,每两个点连一条边的边权为两个点的点权,现在还另外给了你几条边和边权,求最小权重. 题解:对于刚开始所给的\(n\)个点 ...

  9. echart关系图平分节点删除时自动平衡问题

    项目场景: 项目场景:Echarts关系图中(不是力图)一个节点x,y是固定的,为了同一列能居中显示,规定:当前列有奇数个元素新节点往下放,有偶数个节点时新节点往上放. 问题描述: 删除中间节点会有空 ...

  10. Leetcode(82)-删除排序链表中的重复元素 II

    给定一个排序链表,删除所有含有重复数字的节点,只保留原始链表中 没有重复出现 的数字. 示例 1: 输入: 1->2->3->3->4->4->5 输出: 1-&g ...