备份策略描述

*******************************************

mysqldump备份适用于小数据量的备份,比如100G以下的数据量,就可以使用逻辑备份

举例两个逻辑备份用时的例子,6G库用时30秒(比较快的),45G库用时9分钟(比较慢的),按慢的速度计算,100G的库逻辑备份用时约20分钟,可以接受。

数据库通常采用innodb+row+gtid格式,开启binlog并使用binlog server对binlog也进行备份

mysqldump则至少要加上single-transaction和master-data参数,比如

/usr/local/mysql/bin/mysqldump -h$host -uautomng -pAutomng_123 -P$port --log-error=$bkdir/$today_bklog --set-gtid-purged=OFF --add-drop-database --add-drop-table  --flush-logs --single-transaction --triggers --routines --events --flush-privileges --master-data=2 --default-character-set=$charset $db_name > $bkdir/$today_bkfile

binlog server,从mysql-bin.000010开始备份

mkdir -p /data0/backup_binlog/bakdb/

# mysqlbinlog --no-defaults -h192.168.56.201 -P3318 -uautomng -pAutomng_123 -R --raw --stop-never mysql-bin.000010 -r /data0/backup_binlog/bakdb/ &

-R | --read-from-remote-server 表示开启binlog备份,在对应的主节点上请求binlog到本地

--raw 被复制过来的binlog以二进制的格式存放,如果不加该参数则为text格式。

-r | --result-file 指定目录或文件名:
若指定了--raw参数,-r的值指定binlog的存放目录和文件名前缀;若没有指定--raw参数,-r的值指定文本存放的目录和文件名。

-t 这个选项代表从指定的binlog开始拉取,直到当前主节点上binlog的最后一个。

--stop-never 持续连续从主节点拉取binlog,持续备份到当前最后一个,并继续下去。该参数包含-t

--stop-never-slave-server-id 默认值65535,用于在多个mysqlbinlog进程或者从服务器的情况下,避免ID冲突。

mysqlbinlog开启备份后,直到连接关闭或者被强制kill才会结束。可通过ps查看到已经开启的备份进程。

备份策略

备份脚本以远程的方式将数据备份到本地后,立即恢复一份。这样遇到问题需要恢复某个表的数据时,可以节省掉全库的恢复时间,已经有了一个全备恢复的起点。同时开启binlog备份。

binlog server搭建示例

******************************************************************

连接测试

mysql -uautomng -pAutomng_123 -P3318 -hmysql01

mysql -uautomng -pAutomng_123 -P3306 -hbak

创建binlog存放目录

mkdir -p /data0/backup_binlog/mysql01
mkdir -p /data0/backup_binlog/bak

确认从哪个binlog开始复制后,以后台方式执行命令

# ps -ef | grep binlog
root : pts/ :: mysqlbinlog --no-defaults -hmysql01 -P3318 -uautomng -px xxxxxxxxx -R --raw --stop-never --stop-never-slave-server-id= mysql-bin. -r /data0/backup_binlog/mysql01/
root : pts/ :: mysqlbinlog --no-defaults -hbak -P3306 -uautomng -px xxxxxxxxx -R --raw --stop-never --stop-never-slave-server-id= mysql-bin. -r /data0/backup_binlog/bak/

目前(2018-07-31)binlog server不支持mysql8.0.11,会报以下错误

ERROR: Could not find server version: Master reported unrecognized MySQL version '8.0.11'.

备份多个实例

mysqlbinlog --no-defaults -h192.168.10. -P3308 -uautomng -px xxxxxxxxx -R --raw --stop-never mysql-bin. -r /data0/backup_binlog/bak3/ --stop-never-slave-server-id= &
mysqlbinlog --no-defaults -h192.168.10. -P3366 -uautomng -px xxxxxxxxx -R --raw --stop-never mysql-bin. -r /data0/backup_binlog/bak2/ --stop-never-slave-server-id= &

my08_mysqldump+binlog server备份的更多相关文章

  1. 利用binlog server及Xtrabackup备份集来恢复误删表(drop)

      Preface       Today I'm gonna test how to rescue a dropped table from binlog server based on a ful ...

  2. mysql 利用binlog增量备份,还原实例

    mysql 利用binlog增量备份,还原实例 张映 发表于 2010-09-29 分类目录: mysql 标签:binlog, mysql, mysqldump, 增量备份 一,什么是增量备份 增量 ...

  3. MySQL binlog server

    从5.6版本开始,可以利用 mysqlbinlog命令把远程机器的日志备份到本地目录,这样就更加方便快捷的实现一个binlog server. 环境介绍:192.168.56.100是备份服务器,19 ...

  4. MySQL BinLog Server 搭建实战

    一.MySQL Binlog server 介绍 MySQL Binlog Server: 它使用 mysqlbinlog 命令以 daemon 进程的方式模拟一个 slave 的 IO 线程与主库连 ...

  5. MHA 的 Binlog Server & VIP 漂移

    目录 Binlog Server 在 MHA 配置文件中配置 Binlog Server 创建 Binlog 存放目录 实时传输主库 Binlog 命令 重启 MHA 检验 MHA Manager 服 ...

  6. xtra+binlog增量备份脚本

    目录 一.备份原理 innobackupex原理 binlog原理 特点 备份策略 二.环境准备 开启binlog 创建授权用户 安装innobackupex 三.添加脚本 全量备份 增量备份 bin ...

  7. Acronis Server备份Linux系统

    Acronis Server备份Linux系统 前段时间用Acronis Disk Director Suite解决了Thinkpad笔记本在win7的分区问题(http://chenguang.bl ...

  8. 17、SQL Server 备份和还原

    SQL Server 备份 恢复模式 SQL Server 数据恢复模式分为三种:完整恢复模式.大容量日志恢复模式.简单恢复模式. 完整恢复模式 默认的恢复模式,它会完整记录下操作数据库的每一个步骤, ...

  9. 第一篇——第一文 SQL Server 备份基础

    原文:第一篇--第一文 SQL Server 备份基础 当看这篇文章之前,请先给你的所有重要的库做一次完整数据库备份.下面正式开始备份还原的旅程. 原文出处: http://blog.csdn.net ...

随机推荐

  1. Angular04 组件动态地从外部接收值、在组件中使用组件

    一.组件从外部接收值 1 修改组件的ts文件,让组件的属性可以从外部接收值 1.1 导入Input注解对象 1.2 在属性变量前面添加 @Input() 注解 1.3 去掉构造器中的属性变量赋值语句 ...

  2. SpringMVC内容略多 有用 熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器、过滤器等Web组件以及MVC架构模式进行Java Web项目开发的经验。

    熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器.过滤器等Web组件以及MVC架构 ...

  3. Python Matplotlib.plot Update image Questions

    1. 最近在测试一款设备,采集了一些设备后需要一帧一帧显示图像,经常使用Python,所以选用了Matplotlib进行图像操作 数据结构: timesatamp polar_distance hor ...

  4. 《Spring实战》-1

    1.Spring的主要特性:依赖注入DI和面向切面编程AOP. 2.关键策略: 轻量级和最小侵入性编程:POJO 松耦合:DI和AOP 声明式编程:切面和惯例 减少样板式代码:切面和模板 3.Spri ...

  5. PL/SQL与SQL(Oracle)Case语句

    (使用scott账户下的表) 1.Oracle SQL语句的case语句写法: --sql中的case用于分支判断并返回某个值. select empno , ename, deptno , case ...

  6. sqlserver 时间差转换为天时分秒

    DECLARE @starttime DATETIME = '2016-12-01' , @endtime DATETIME = '2016-12-02 14:56:39.927'; DECLARE ...

  7. String类-小用

    字符串-string (1)string在Java中是一个引用类型,string变量可引用一个字符串对象 (2) 例1: s0,s1,s2引用同一个对象 New创建的两个string是不同的对象只是内 ...

  8. git rm 与 git reset

    https://www.cnblogs.com/sunshine-xin/articles/3521481.html 1. git rm --cached file will remove the f ...

  9. IDEA mybatis-generator 逆向工程

    1.在maven工程中的resource中创建generatorConfig.xml 2.配置generatorConfig.xml <?xml version="1.0" ...

  10. 「FJ2014集训」采药人的路径

    啦啦啦 来写一篇题解 洛谷链接: P4930 「FJ2014集训」采药人的路径 统计路径?嗯往点分治上想. 把0和1转化为-1和1,求和完dis为0的路径就是阴阳平衡的路径了. 如果题目没有限制要有中 ...