my08_mysqldump+binlog server备份
备份策略描述
*******************************************
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备份的更多相关文章
- 利用binlog server及Xtrabackup备份集来恢复误删表(drop)
Preface Today I'm gonna test how to rescue a dropped table from binlog server based on a ful ...
- mysql 利用binlog增量备份,还原实例
mysql 利用binlog增量备份,还原实例 张映 发表于 2010-09-29 分类目录: mysql 标签:binlog, mysql, mysqldump, 增量备份 一,什么是增量备份 增量 ...
- MySQL binlog server
从5.6版本开始,可以利用 mysqlbinlog命令把远程机器的日志备份到本地目录,这样就更加方便快捷的实现一个binlog server. 环境介绍:192.168.56.100是备份服务器,19 ...
- MySQL BinLog Server 搭建实战
一.MySQL Binlog server 介绍 MySQL Binlog Server: 它使用 mysqlbinlog 命令以 daemon 进程的方式模拟一个 slave 的 IO 线程与主库连 ...
- MHA 的 Binlog Server & VIP 漂移
目录 Binlog Server 在 MHA 配置文件中配置 Binlog Server 创建 Binlog 存放目录 实时传输主库 Binlog 命令 重启 MHA 检验 MHA Manager 服 ...
- xtra+binlog增量备份脚本
目录 一.备份原理 innobackupex原理 binlog原理 特点 备份策略 二.环境准备 开启binlog 创建授权用户 安装innobackupex 三.添加脚本 全量备份 增量备份 bin ...
- Acronis Server备份Linux系统
Acronis Server备份Linux系统 前段时间用Acronis Disk Director Suite解决了Thinkpad笔记本在win7的分区问题(http://chenguang.bl ...
- 17、SQL Server 备份和还原
SQL Server 备份 恢复模式 SQL Server 数据恢复模式分为三种:完整恢复模式.大容量日志恢复模式.简单恢复模式. 完整恢复模式 默认的恢复模式,它会完整记录下操作数据库的每一个步骤, ...
- 第一篇——第一文 SQL Server 备份基础
原文:第一篇--第一文 SQL Server 备份基础 当看这篇文章之前,请先给你的所有重要的库做一次完整数据库备份.下面正式开始备份还原的旅程. 原文出处: http://blog.csdn.net ...
随机推荐
- java中字符串处理、串联和转换的几个常用方法,以及如果需要自己编程实现的具体实施步骤。
What? 如何分类? 如何使用? //String 类提供处理 Unicode 代码点(即字符)(TT观点:指的莫非就是对象的意思.)和 Unicode 代码单元(即 char 值)的方法.(TT观 ...
- js的学习
对于 ff的 relatedTarget 及IE的toElement fromElement DOM通过event对象的relatedTarget属性提供了相关元素的信息.这个属性只对于mou ...
- Django rest framework之序列化小结
最近在DRF的序列化上踩过了不少坑,特此结合官方文档记录下,方便日后查阅. [01]前言 serializers是什么?官网是这样的”Serializers allow complex d ...
- c++调用python引号的问题
Boost.Python向python里面传递字符串时,引号是个很关键的问题. const char* cstr="hello \\\" world" // hello ...
- 自动化打包资源混淆集成python实践----资源混淆
前面自动化打包资源混淆集成python实践----打包一文讲述了四种打包方案,以及美团打包方案.apk注释添加渠道号方案的实现.这里讲集成资源混淆. 1.资源混淆带来的好处: 1)对资源文件起一定的保 ...
- Java50道经典习题-程序43 求奇数个数
题目:求0—7所能组成的奇数个数,奇数中不包含重复数字. public class Prog43 { public static void main(String[] args) { //0-7能组成 ...
- 为PyCharm自动配置作者信息
在团队开发中,需要在代码中编写一些项目信息或个人信息,如开发者.开发时间.项目名称等信息,以利于后期对项目修改和维护.如果每次都需要手动编写,费时费力.下面介绍如何自动在代码文件中自动生成这些信息. ...
- JavsScript中JSON相关
1.JSON.parse(jsonString) JSON.parse(jsonString):将一个JSON格式的字符串字面值,转换成JSON对象,它的逆运算方法是JSON.stringify(ob ...
- Java连接Hbase异常
Exception in thread "main" org.apache.hadoop.hbase.client.RetriesExhaustedException: Faile ...
- linux影响上传文件大小的因素
主要是从三个方面 ①.php代码方面(这个无需说明) ②.php.ini配置 max_execution_time = 600 ;每个PHP页面运行的最大时间值(秒),默认30秒max_input_t ...