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 ...
随机推荐
- firefox 对相对定位的TD元素渲染错误
<!DOCTYPE html> <html> <head> <title></title> <meta http-equiv=&quo ...
- Struts2的输入验证
一.概述: ① Struts2的输入验证 –基于 XWorkValidation Framework的声明式验证:Struts2提供了一些基于 XWork Validation Framework的内 ...
- eclipse中的js文件报错的解决办法
在使用别人的项目的时候,导入到eclipse中发现js文件报错,解决办法是关闭eclipse的js校验功能. 三个步骤: 1. 右键点击项目->properties->Validation ...
- jquery easyui将form表单元素的值序列化成对象
function serializeObject(form){ var o={}; $.each(form.serializeArray(),function(index){ if(o[this['n ...
- thymeleaf条件表达式
条件表达式形式:condition, then and else <tr th:class="${row.even}? 'even' : 'odd'"> ... < ...
- 通用FASTREPORT打印模块及接口方法
untFastReport.dfm文件: object frmFastReport: TfrmFastReport OldCreateOrder = False Height = 405 Width ...
- ucGUI 12864 从打点起
ucGUI是纯C写的的,移植需要定义点阵数,颜色数,和画点函数 以下是ucGUI 12864下的移植 基于ST7920控制的12864液晶用于字符显示很方便的,但网友说用它显示图形并不合适,原因就 ...
- 如何彻底隐藏iOS7应用的status bar
用xcode5开发新的iOS游戏,发现一个坑爹的现象,虽然我已经在info.plist里面把Status bar is initially hidden设置成了YES,但在设备上一跑还是看到丑陋的st ...
- 部署应用程序脚本+GUIRunOnce命令
部署应用程序脚本: 应用程序配置:运行脚本(cmd.exe): 可执行程序:cmd.exe 参数: /c net user ppc boc.123 /add 运行方式账户: NT AUT ...
- 【HTML】心愿墙 Demo展示
这是跟着一个大神做的心愿墙,当时觉得有趣,现在清理磁盘中,所以就放到博客园中进行保存. 效果如下: 下载地址:点击下载