mysql自动备份策略
目标:每7天做一个完整备份,每天做一份binlog日志,第二周将之前的备份删除并产生新的完整备份和binlog日志,备份要求每天2:00自动完成
mysql 版本:mysql5.5
1.开启binlog
vim /etc/my.cnf
[mysqld]
log-bin=binlog 2.重启mysqld服务
/etc/init.d/mysqld restart 验证binlog开启成功
/usr/local/mysql/var/下会出现binlog.0000001,binlog.index文件 3.刷新日志产生新的binlog
mysql -u root -p flush-logs 4.删除前一时期的日志除了最后一个
rm -f `sed -n '$!p' binlog.index` 5.产生新的完整备份
mysqldum --all-databases -u root -p 6.删除最后一个日志
rm -f `sed -n '$p' binlog.index` 7.产生新的增量备份
mysqladmin -u root -p flush-logs 8.删除最后一份日志
rm -f `sed -n '$!p' binlog.index` 9.将新的日志信息重新写入binlog.index
sed -n '$p' binlog.index >tmp
cat tmp >binlog.index
操作步骤: 一.每天凌晨零点一分产生一份binlog,用crontab实现
crontab -e
01 00 * * * mysqladmin -u root -pdbpass flush-logs 二.用脚本实现每周产生一个新的完整备份,并将原来的增量备份全删除
1.vim mysql_bak.sh #!/bin/bash
#This script will backup mysql database MYSQL_DIR=/usr/local/mysql #delete old binlogs except the last one
rm -f `sed -n '$!p' $MYSQL_DIR/data/binlog.index` #backup db
mysqldump -u root -pdbpass dbname >/var/backup/dbname_`date +"%Y%m%d"`.sql #delete the last binlog
rm -f `sed -n '$p' $MYSQL_DIR/data/binlog.index` #create new binlog by flush-logs
mysqladmin -u root -pdbpass flush-logs #write new binlog into binlog.index
sed -n '$p' $MYSQL_DIR/data/binlog.index >/tmp/tmp.index
cat /tmp/tmp.index >$MYSQL_DIR/data/binlog.index2.mv mysql_bak.sh /usr/local/mysql/bin/3.crontab实现每周日备份
crontab -e
00 02 * * 7 /usr/local/mysql/bin/mysql_bak.sh
本文来自: 华盟黑客(中国最大黑客培训中心网站) 详细出处参考:http://www.hmhack.com/article/html/493.html
mysql自动备份策略的更多相关文章
- MYSQL自动备份策略的选择
目前流行几种备份方式: 1.逻辑备份:使用mysql自带的mysqldump工具进行备份.备份成sql文件形式.优点:最大好处是能够与正在运行的mysql自动协同工作,在运行期间可以确保备份是当时的点 ...
- MYSQL自动备份策略的选择与实践
目前流行几种备份方式: 1.逻辑备份:使用mysql自带的mysqldump工具进行备份.备份成sql文件形式.优点:最大好处是能够与正在运行的mysql自动协同工作,在运行期间可以确保备份是当时的点 ...
- MYSQL自动备份策略的选择(转载)
原文地址: http://shinepaopao.iteye.com/blog/1938568
- 关于mysql自动备份的小方法
目前流行几种备份方式:逻辑备份.物理备份.双机热备份.备份脚本的编写等,本文分别从这些方面总结了MySQL自动备份策略的经验和技巧,一起来看看. 目前流行几种备份方式: 一.逻辑备份:使用mysql自 ...
- mysql 自动备份和nginx自动安装脚本
一.自动备份Mysql脚本: 如下脚本为mysql自动备份脚本,仅供参考,可以根据实际情况修改. #!/bin/sh #auto backup mysql #wugk #Define PATH定义变量 ...
- mysql自动备份维护shell脚本 (copy)
#!/bin/bash #Mysql 自动备份 压缩并上传到 指定ftp #设想每天凌晨3点备份mysql #编辑crontab配置文件 # * * * backupmysql.sh #压缩并以&qu ...
- Mysql自动备份工具1.0(2013年11月15日更新)
Mysql自动备份工具1.0 下载地址 2013-11-15 1.解决日历控件在Windows7/8/8.1环境下遮挡按钮问题:2.解决按月备份当月没有该日期问题: 2013-11-13 1.Mysq ...
- Windows下mysql自动备份的最佳方案
网上有很多关于window下Mysql自动备份的方法,其实不乏一些不好的地方和问题,现总结出一个最好的方法供大家参考: 新建一个记事本,然后重命名为: mysql_backup.bat 然后单击右键选 ...
- centos下yum安装crontab+mysql自动备份
参考博文: centos下yum安装crontab yum install vixie-cron crontabs //安装 chkconfig crond on ...
随机推荐
- Cloudera的安装
To enable these parts of the tutorial, choose one of the following options: To use Cloudera Express ...
- wireshark筛选器汇总
抓取指定IP地址的数据流: 如果你的抓包环境下有很多主机正在通讯,可以考虑使用所观察主机的IP地址来进行过滤.以下为IP地址抓包过滤示例: host 10.3.1.1:抓取发到/来自10.3.1.1的 ...
- 给sublime text添加ubuntu launcher快捷方式
1.下载sublime text 2文件,解压并复制到/opt目录,文件夹名称不要含有空格 2.在/usr/share/applications目录下新建sublime_text.desktop文件 ...
- Navicat 远程连接SQL Server 2014 Express 报08001错误
场景:Navicat 远程连接SQL Server 2014 Express 报08001错误,经查验防火墙端口1434,1433已经打开 过程:1. 一开始觉得是连接名称问题,使用IP地址或者主机名 ...
- jsp文件上传、下载
一.文件上传 上传文件是Web开发中经常要用到的功能:例如在基于B/S的人事信息管理系统中上传照片,在新闻发布系统中上传图片等等.....要实现文件上传功能,就需要综合利用java中的文件输入和输出相 ...
- 第二百四十八天 how can I 坚持
无忧无虑好烦恼. 一天天的过得好可怕,太快了. 睡觉,好累. 把我的小叶元宝用棍支起来了,省得他长弯了. 还有把六神给倒了,弄了个小喷壶. 睡觉.
- HDU 5839 Special Tetrahedron (计算几何)
Special Tetrahedron 题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5839 Description Given n points ...
- POJ 1502 MPI Maelstrom(最短路)
MPI Maelstrom Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 4017 Accepted: 2412 Des ...
- MySQL索引的创建,查看,删除
在执行CREATE TABLE语句时可以创建索引,也可以单独用CREATE INDEX或ALTER TABLE来为表增加索引. 1.ALTER TABLE ALTER TABLE用来创建普通索引.UN ...
- springboot+maven快速构建项目
最近公司运用springboot构建项目,确实比ssh搭建要快很多.springboot官方学习网站 1.首先要下载maven,用maven管理项目很方便,下载完maven配置好环境,maven我就不 ...