美文网首页
mysql主从复制

mysql主从复制

作者: 油多坏不了菜 | 来源:发表于2019-01-03 11:05 被阅读0次

原理

主从复制的具体原理可以参考其他理论博客

具体步骤

  • 主库和从库初同步(复制)
    对于线上的mysql服务器主从配置,可以用xtrabackup复制一个初始版本(并记录当前版本包含的最后一条数据位置pos, 以后插入的数据的pos都比当前pos大),然后在从库完全拷贝这么一个初始版本(datadir目录为空);而对于未上线的mysql配置,可以直接用mysqldump一个初始版本进行同步即可。
  • 主库新建可用于复制的用户
    grant REPLICATION SLAVE ON *.* to repl@'192.10.13.111' identified by 'iambeautiful'
  • 主库配置文件参考
[mysql]
default-character-set=utf8 
[mysqld]
port = 3306 
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
log-bin=binlog  ##开启log-bin
binlog_format=mixed ##日志格式
skip_name_resolve=ON
innodb_file_per_table=ON
character_set_server=utf8
server-id=1   ##server id
binlog-do-db=jhzf_prod_db ##复制的库
binlog-ignore-db=mysql ##不复制的库
  • 从库配置
[mysqld]
user=zfwg
#replication about
server_id=2
datadir=/usr/local/mysql/data
binlog-ignore-db=mysql
log-bin=binlog
binlog_format=mixed
skip_name_resolve=ON
innodb_file_per_table=ON
replicate-do-db=jhzf_prod_db
replicate-ignore-db=mysql
slave-skip-errors=1007,1008,1053,1062,1213,1158,1159
relay-log=relay-bin              ##中继日志
relay-log-index=relay-bin.index
relay-log-info-file=relay-log.info
[mysql]
auto-rehash
default-character-set=utf8
  • 设置从库复制主库
change master to   
master_host='192.10.13.112',
master_user='repl',
master_password='iambeautiful',
master_log_file='binlog.000002',  
##logfile与log_pos的获取,可在主库上 show master status(未使用库);
##或者通过xtrabackup 复制的话,为xtrabackup备份文件里的log_file与log_pos.
master_log_pos=795; 
  • 从库开启复制
    start slave;
  • 查看复制是否成功
show slave status\G; 
## 
 Slave_IO_State: Waiting for master to send event
 Master_Host: 192.10.13.112
 Master_User: repl
 Master_Port: 3306
 Connect_Retry: 60
 Master_Log_File: binlog.000002
 Read_Master_Log_Pos: 1116   ##已经复制到的log_pos
 Relay_Log_File: relay-bin.000002
 Relay_Log_Pos: 638
 Relay_Master_Log_File: binlog.000002
 Slave_IO_Running: Yes  ## IO和SQL都为YES时代表正常,如果不正常,可以查看mysql错误日志,进行定位。
 Slave_SQL_Running: Yes
 Replicate_Do_DB: jhzf_prod_db
 Replicate_Ignore_DB: mysql

tips

  • 主库 3306端口防火墙策略。
  • 通过数据库错误日志,进行问题定位。

相关文章

  • MySQL如何配置主从复制,如何修复主从复制出现的异常?

    MySQL如何配置主从复制,如何修复主从复制出现的异常? 一、什么是Mysql主从复制 MySQL主从复制是其最重...

  • MySQL-主从复制&读写分离

    零、本文纲要 一、MySQL主从复制 主从复制 主从复制过程 配置主从复制 二、MySQL读写分离 读写分离 Sh...

  • Mysql 主从复制

    Mysql 主从复制 MySQL Replication 主从复制(也称 AB 复制)允许将来自一个MySQL数据...

  • 主从复制 & MHA

    一,mysql主从复制 (1)场景一(主从复制 _ 全新环境下) (2)场景二(主从复制 _ mysql已经使用一...

  • mysql主从复制

    构建MySQL主从复制 MySQL的主从复制和mysql的读写分离两者有着紧密联系,数据的读写分离实在主从复制的基...

  • Spring Data JPA 使用主从数据源

    Mysql 配置主从复制 参考:Mysql主从复制-半同步复制[https://www.jianshu.com/p...

  • MySQL集群篇

    1 集群之主从复制 1.1 主从复制概述 MySQL主从复制也可以称为MySQL主从同步,它是构建数据库高可用集群...

  • 深度探索MySQL主从复制原理

    概要 MySQL Replication (MySQL 主从复制) 是什么? 为什么要主从复制以及它的实现原理是什...

  • 【转】MySQL 8.0复制改进

    1 - MySQL主从复制模型 我们从最基本的主从复制模型开始说起,下图是最经典的MySQL主从复制架构图: My...

  • mysql主从代理

    mysql主从复制+读写分离 环境: mysql主:193.168.1.1 mysql从:193.168.1.2 ...

网友评论

      本文标题:mysql主从复制

      本文链接:https://www.haomeiwen.com/subject/xcwalqtx.html