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

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. Pytest(6)重复运行用例pytest-repeat

    前言 平常在做功能测试的时候,经常会遇到某个模块不稳定,偶然会出现一些bug,对于这种问题我们会针对此用例反复执行多次,最终复现出问题来. 自动化运行用例时候,也会出现偶然的bug,可以针对单个用例, ...

  2. HDU 1565 方格取数 状压dp

    题目: 给你一个n*n的格子的棋盘,每个格子里面有一个非负数. 从中取出若干个数,使得任意的两个数所在的格子没有公共边,就是说所取的数所在的2个格子不能相邻,并且取出的数的和最大. Input 包括多 ...

  3. hdu4291 A Short problem

    Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission ...

  4. C++快读

    写在前面: 一个小专题 完全非原创,不知道原来是谁提出的 诈尸 http://thepingaslord.deviantart.com/art/The-Evening-Prior-312446336 ...

  5. 加密算法——RSA算法(c++简单实现)

    RSA算法原理转自:https://www.cnblogs.com/idreamo/p/9411265.html C++代码实现部分为本文新加 RSA算法简介 RSA是最流行的非对称加密算法之一.也被 ...

  6. .net core 更换yum源 / “No package libgdiplus-devel available.” 错误解决方法

    安装 libgdiplus-devel yum install libgdiplus-devel 如果出现错误 No package libgdiplus-devel available. 原因可能是 ...

  7. CF1474-A. Puzzle From the Future

    CF1474-A. Puzzle From the Future 题意: 有两个由\(0,1\)组成的.长度相等字符串\(a, b\),两个字符串按位相加得到一个新的字符串\(s\),对\(s\)取\ ...

  8. VScode 相关

    1.F5运行py文件,打开terminal终端的时候总是弹出Powershell窗口,只能在powershell窗口中用命令行运行程序,实在很不方便. 解法:右键Powershell属性,取消使用旧版 ...

  9. 图解算法——恢复一棵二叉搜索树(BST)

    题目来源 基础:给你二叉搜索树的根节点 root ,该树中的两个节点被错误地交换.请在不改变其结构的情况下,恢复这棵树. 进阶:使用 O(n) 空间复杂度的解法很容易实现.你能想出一个只使用常数空间的 ...

  10. zzuli-2259 matrix

    题目描述 在麦克雷的面前有N个数,以及一个R*C的矩阵.现在他的任务是从N个数中取出 R*C 个,并填入这个矩阵中.矩阵每一行的法值为本行最大值与最小值的差,而整个矩阵的法值为每一行的法值的最大值.现 ...