基础环境:   主库 从库 服务器IP地址 192.168.10.11 192.168.10.12 版本 5.7.24 5.7.24 已存在的数据库 mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | lijiamandb | | mysql | | performance_schema | | sys | | testdb | +--…
相比传统的MySQL复制,gtid复制无论是配置还是维护都要轻松的多.本文对gtid复制稍作介绍. MySQL基于GTID复制官方手册:https://dev.mysql.com/doc/refman/5.7/en/replication-gtids.html 1.gtid基本概念 传统的基于binlog position复制的方式有个严重的缺点:如果slave连接master时指定的binlog文件错误或者position错误,会造成遗漏或者重复,很多时候前后数据是有依赖性的,这样就会出错而导…
通常只有即将执行完毕的语句才会写入到二进制日志中.但是一些特殊情况:语句附加的信息或直接代替语句被写入. 二进制日志记录的内容 作用:记录数据库中表的更变,用于复制和PITP(即时恢复) 基于语句SBR中复制的动作观察: [root@localhost][(none)]> use boss; Database changed [root@localhost][boss]> create table tb1(text text); Query OK, rows affected (0.32 se…
1. 准备工作 首先要准备2台机器,分别安装mysql 我这里的版本是5.1.73,mysql数据库安装请参考:http://www.cnblogs.com/tangyanbo/p/4289753.html linux系统为centos 机器分别为: Master: 192.168.1.227 Slave:192.168.1.225 场景:master和slave都是刚创建的数据库,即数据是一致的场景下 2. 配置复制 大致步骤如下: 1) 在每个服务器上创建一个复制账号 2) 配置Master…
(一)什么是二进制日志 二进制日志(binlog)记录了数据库中所有的DDL和DML操作,但是不包括select语句,语句以"事件"的形式保存,记录了数据库的更改变化,在主从复制(replication)和数据恢复中起着重要的作用.对比来看,MySQL的二进制日志作用相当于Oracle数据库的redo log + archive log. (二)开启二进制日志及参数配置 二进制日志开启需要在配置文件里面配置相关参数,然后重启数据库,或者开启数据库的时候添加相关参数.主要参数如下: (2…
(4.5)mysql备份还原——深入解析二进制日志(binlog) 关键词:二进制日志,binlog日志 0.建议 (1)不建议随便去修改binlog格式(数据库级别) (2)binlog日志的清理 [2.1]过期日志天数:show variables like 'expire_logs_days'; [2.2]手工切换成新的日志文件:flush log; (3)手工直接清除:purge binary log to 'bin-log.00003'     详细参考:https://www.cnb…
1. 打开/etc下的my.cnf文件 2. 编辑它,添加内容: log_bin=binary-log   #二进制日志的文件名 server_id=1  #必须指定server_id,这是MySQL 5.7.3以后的要求 binlog-do-db=yrld   #备份的数据库名,可以是多个 binlog-do-db=website binlog-do-db=yrldgold  完整内容:------------------------------------------------------…
开启查询日志: 配置文件my.cnf: log=/usr/local/mysql/var/log.log 开启慢查询: 配置文件my.cnf: log-slow-queries=/usr/local/mysql/var/slow.log #注意减号或者下划线 long_query_time=2 更新日志: 配置文件my.cnf: log-update=/usr/local/mysql/var/update.log 错误日志: 配置文件my.cnf: log-error=/usr/local/my…
前言:SQL线程应用中继日志,在binlog_format是row格式的时候,是居于主键更新,下面结合一张图来证明 1.从一个大神那边得到一张图片,SQL线程应用中继日志流程,下面就实验验证一下:(PS,我个人认为这张图binlog_format为ROW格式是正确的) 2.验证有PK表情况 在主库创建表结构 CREATE TABLE `table_pk` (`id`  int(11) NOT NULL ,`name`  varchar(20) NOT NULL ,`age`  tinyint N…
配置MySQL复制 基于日志点的复制配置步骤 设置简单密码(可以选择不需要) set GLOBAL validate_password_length=6; set global validate_password_policy=0; 在主DB服务器上建立复制账号 CREATE user repl@'192.168.%.%' IDENTIFIED by '123456'; 权限: grant replication slave ON *.* to repl@'192.168.%.%'; 基于日志点…