MySQL备份与恢复实战案例及生产方案
按天备份
按周备份
mysql的mysqldump备份什么时候能派上用场
1,迁移或者升级数据库时
2,增加从库的时候
3,如果因为硬件或特殊情况,主库或者从库宕机,主从可以互相切换,无需备份
4,人为的DDL,DML语句,主从库没办法了,所有库都会执行,因此需要备份
5,跨机房
增量恢复
一般有人为(或程序)逻辑的方式在数据库执行的SQL语句等误操作,才需要增量恢复,因为此时,所有的从库也执行了误操作语句
MySQL增量恢复的必备条件
1)开启MySQL的log-bin日志功能(主从库都需要开启binlog记录功能;存在一份全备加上全备之后的试看看到出问题时刻的所以增量binlog文件备份)
2)存在MySQL数据库全备
a:生产环境mysqldump备份命令,在凌晨某一时刻进行数据全备(生产环境一般通过定时任务每日凌晨执行),备份命令如下
mysqldump -uroot -p123qwe --default-character-set=gbk --single-transaction -F -B oldboy |gzip > /tmp/aaaaa/aa.sql.gz
b:innodb引擎备份:
mysqldump -uroot -p123qwe -S -F --single-transaction -A -B|gzip
c:myisam引擎备份
mysqldump -uroot -p123qwe -S -F -A -B --lock-all-tables|gzip
恢复全过程(重点):
通过防火墙禁止web等应用向主库写数据或锁表,让主库暂时停止更新,然后在进行恢复;
1)检查全备
2)检查增量备份binlog
1,停止一个从库,然后在主库刷新binlog,把mysql-bin 恢复成bin.sql(去掉drop语句)
2,把全备bak.sql及十点前的增量bin.sql恢复到从库
3,数据丢多少?10:10分刷新binlog以后的数据,mysql-bin.000015
4.停止主库,把mysql-bin.000015解析为sql,恢复到从库,切换到从库提供服务
MySQL备份与恢复实战案例及生产方案的更多相关文章
- 项目实战6—Mysql实现企业级日志管理、备份与恢复实战
Mysql实现企业级日志管理.备份与恢复实战 环境背景:随着业务的发展,公司业务和规模不断扩大,网站积累了大量的用户信息和数据,对于一家互联网公司来说,用户和业务数据是根基.一旦公司的数据错乱或者丢失 ...
- shell脚本编程——生产实战案例
生产实战案例 在日常的生产环境中,可能会遇到需要批量检查内网目前在线的主机IP地址有哪些,还可能需要检查这些在线的主机哪些端口是开放状态,因此依靠手工来检查是可以实现,但比较费时费力,所以需要 ...
- Mysql之MGR高可用实战案例
MGR高可用实战案例 1.环境准备 node1 rocky8.6 10.0.0.8 node2 rocky8.6 10.0.0.18 node3 rocky8.6 10.0.0.28 2.所有节点更改 ...
- 企业Shell面试题及企业运维实战案例(三)
1.企业Shell面试题1:批量生成随机字符文件名案例 使用for循环在/oldboy目录下批量创建10个html文件,其中每个文件需要包含10个随机小写字母加固定字符串oldboy,名称示例如下: ...
- linux运维、架构之路-MySQL备份与恢复(四)
一.备份方式 ①逻辑备份(文件表示:SQL语句) ②物理备份(数据文件的二进制副本) ③基于快照的备份 ④基于复制的备份 二.备份工具 ①mysqldump:原生自带的逻辑备份工具 ②mysqlbin ...
- SQL注入(SQL Injection)案例和防御方案
sql注入(SQL Injection):就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令. SQL注入攻击的主要危害包括:非法读取.篡 ...
- (转)linux route命令深入浅出与实战案例精讲
linux route命令深入浅出与实战案例精讲 http://blog.51cto.com/oldboy/1119453 深入浅出之-route命令实战使用指南 http://blog.51cto. ...
- 基于SpringCloud的Microservices架构实战案例-架构拆解
自第一篇< 基于SpringCloud的Microservices架构实战案例-序篇>发表出来后,差不多有半年时间了,一直也没有接着拆分完,有如读本书一样,也是需要契机的,还是要把未完成的 ...
- Flume实战案例运维篇
Flume实战案例运维篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Flume概述 1>.什么是Flume Flume是一个分布式.可靠.高可用的海量日志聚合系统,支 ...
随机推荐
- docker中制作自己的JDK+tomcat镜像
方式一 首先,准备好想要的jdk和tomcat,另外,我们需要创建一个Dockerfile文件.下面展示一个Dockerfile文件的完整内容: FROM ubuntu:14.10 MAINTAINE ...
- git发布代码到github过程和常见错误
在对git有了基本了解之后,并且常常看到很多人在github上发布代码和开源项目时,就会想如何也把自己的代码发布到github上,并能够不断的跟踪版本变化. 现在就有几个想要做的事. 一.如何把自己已 ...
- Angular学习笔记—基础(转载)
创建简单组件 新建组件 $ ng generate component simple-form --inline-template --inline-style # Or $ ng g c simpl ...
- SAP 后台job
SAP 如何定义后台job 有两种方 1是se38执行可执行程序后,菜单栏‘程序’--->'后台执行',输入输出设备,ENTER两次后,选择开始时间(立刻执行,或定义日期时间,也可周期执行..) ...
- Myeclipse中文乱码解决方式
我们刚刚安装的Myeclipse有可能使用的是GBK的编码方式,而通常我们的程序都是使用的是UTF-8的编码方式,所以当我们导入一个项目的时候,会产生乱码,解决方式如下: 一.将整个project设置 ...
- virtualenv使用
virtualenv安装不同版本的python 来自为知笔记(Wiz)
- samba、nginx服务
一.部署samba Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成,Samba主要用于Linux或UNIX和Windows系统之间的文件共享. SMB( ...
- Python:virtualenv介绍
virtualenv 在开发Python应用程序的时候,系统安装的Python3只有一个版本:3.4.所有第三方的包都会被pip安装到Python3的site-packages目录下. 如果我们要同时 ...
- java实现简单邮件的发送以及常见问题
java实现简单邮件的发送以及常见问题 最近遇到个需求需要实现发送邮件的功能,以前做发送邮件功能都是有邮箱用户名密码,通过用户名密码连接对应的SMTP服务器来实现邮件的发送.但是这次用公司内部的邮箱, ...
- CSS 中文字体 Unicode 编码表
CSS 中文字体 Unicode 编码表 在 CSS 中设置字体名称,直接写中文是可以的.但是在文件编码(GB2312.UTF-8 等)不匹配时会产生乱码的错误. 为此,在 CSS 直接使用 Unic ...