备份策略描述

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

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. Python03 字符串类型、强制类型转化、列表、元组、字典、集合

    1 字符串类型 在python中字符串类型用str表示,字符串的连接用 + 1.1 创建字符串对象 ·创建一个字符串对象有两种方式,一种方式是直接用字符串进行赋值,另外一种是利用str类实例化对象:具 ...

  2. OpenGL超级宝典完整源码(第五版)

    链接:https://pan.baidu.com/s/1dGQkk4T 密码:wu44 Visual Studio 2017配置OpenGL https://blog.csdn.net/qiangbi ...

  3. 【摘自lvs官网】lvs介绍

    Linux Virtual Server项目的目标 :使用集群技术和Linux操作系统实现一个高性能.高可用的服务器,它具有很好的可伸缩性(Scalability).可靠性(Reliability)和 ...

  4. 最短路径Dijkstar算法和Floyd算法详解(c语言版)

    博客转载自:https://blog.csdn.net/crescent__moon/article/details/16986765 先说说Dijkstra吧,这种算法只能求单源最短路径,那么什么是 ...

  5. 自定义select样式

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  6. Cyber-Ark spring mvc @autowired

    我们帮助中国平安改进他们重要系统的特权帐号密码管理,提供给他们一个“统一的,集中的,安全的”特权帐号密码管理解决方案.完全满足平安信息安全部对“特权帐号生命周期管理”的理解和需求,而且关键组件的高可用 ...

  7. C#用GDI+解析Json文件绘制Chart

    using System.Collections.Generic; namespace Chart { public class Program { static void Main(string[] ...

  8. HBase - 伪分布式安装过程

    环境 - hadoop - 没有zookeeper(用hbase自带的zookeeper,当然后期我会改用独立的zookeeper) HBase介绍 参考:hbase是什么? hbase下载 地址:h ...

  9. vtk-py求3d模型表面积

    模型格式:.obj 环境:python3.6+vtk7.1 vtk版: import vtk filename = "XXXX.obj" reader = vtk.vtkOBJRe ...

  10. MongoDB初识篇

    前言 一直听说MongonDB,却没有机会接触它,于是决定先从表面上认识它.MongoDB(分布式文档存储数据库)是一种介于关系型数据库和非关系型数据库之间的数据库,而且它是非关系数据库中最像关系型数 ...