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

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

最新文章

  1. RF Firefox Profile
  2. 关于shell脚本时遇value too great for base (error token is "08")
  3. c中static作用
  4. 测试URL有效性
  5. 解决Android拍照保存在系统相册不显示的问题
  6. c++ 学习笔记(常见问题与困惑)(转载)
  7. stack smashing detect错误修正
  8. python语言学习6——python基础
  9. 自定义TextView跑马灯
  10. GPS服务端(上)-Socket服务端(golang)
  11. centos7之openvpn搭建
  12. 理解java容器:iterator与collection,容器的起源
  13. CAS跳转流程
  14. BZOJ1969 航线规划
  15. 《linux就该这么学》第六节,计划任务和用户身份管理!
  16. odoo权限管理
  17. jmap打dump异常
  18. <数据挖掘导论>读书笔记9聚类分析
  19. windows操作系统下载tomcat,并与eclipse进行整合
  20. Sqlmap用法小结

热门文章

  1. git的几种实用操作(合并代码与暂存复原代码)
  2. Codeforces Round #496 (Div. 3) D. Polycarp and Div 3 (数论)
  3. Codeforces Round #494 (Div. 3) D. Coins and Queries (贪心,数学)
  4. PowerShell随笔2---初始命令
  5. SQL Server的嵌套存储过程中使用同名的临时表怪像浅析
  6. 004、Python xlsxwriter模块
  7. spring再学习之AOP准备
  8. _.shuffle、_.debounce中下划线对象的理解
  9. 属于我的md5sum程序
  10. for-in循环等