mysql备份以及我的备份文档
来源:互联网 发布:linux while跳出循环 编辑:程序博客网 时间:2024/06/13 02:01
做数据库都喜欢数据,但是数据备份是保存数据的方法,下面分享下我的备份文件
备份分为增量备份(即二进制备份bin日志)和全量备份,对于生产数据库是都要启动的但是我建议测试数据库也要使用相同的备份要求。
增量备份:
开启增量备份在my.cnf(我的my.cnf文件在/etc下linux环境下,可以使用find / -name my.cnf查找)加入log-bin=mysql-bin即可,生成的日志名就是mysql-bin.*(linux下的位置也可以用find / -name mysql-bin*查找).
全量备份:
使用mysqldump,命令是mysqldump -u***** -p******** 数据库名 | gzip > /备份数据库的文件夹/数据库名(可以是任意的,但是最好是与要备份的数据库同名)`date +%Y-%m-%d_%H%M%S`.sql.gz,这样就可以将备份的数据库生成压缩文件,如果不需要压缩文件只需要mysqldump -u***** -p******** 数据库名 > 数据库名.sql
下面是我用于备份的文件
#!/bin/sh
echo "---Today is--$(date +"%Y-%m-%d %H:%M:%S")-----start backup---" >> /mysqlbackup/mysqldb_backup.log
mysqldump -u***** -p******** ***** | gzip > /mysqlbackup/******`date +%Y-%m-%d_%H%M%S`.sql.gz
insert_sql1="insert into c_userinfo_his (create_time,update_time,appid,openid,nickname,sex,province,city,country,headimgurl,unionid,shark_no,log1) select create_time,update_time,appid,openid,nickname,sex,province,city,country,headimgurl,unionid,shark_no,log1 from c_userinfo"
delete_sql1="truncate table c_userinfo"
call_xprocedure="call insert_xtotal()"
exit_sql="exit"
mysql -u***** -p******** ***** -e "${insert_sql1}"
mysql -u***** -p******** ***** -e "${delete_sql1}"
#mysql -u***** -p******** ***** -e "${call_xprocedure}"
mysql -u***** -p******** ***** -e "${exit_sql}"
cd /mysqlbackup
echo $(date +"%Y-%m-%d_%H:%M:%S") >> /mysqlbackup/mysqldb_backup.log
echo "---today is--$(date +"%Y-%m-%d %H:%M:%S")---backup success-----" >> /mysqlbackup/mysqldb_backup.log
由于业务需要所以每天要删除有些表并且将数据放到历史表里,call insert_xtotal()这个是mysql的存储过程。
之后将这个这个脚本放到任务管理器中(在linux中命令crontab -e),进入编辑输入
00 01 * * * source /etc/profile && /mysqlbackup/backup.sh >> /mysqlbackup/mysqldb_backup.log 2>&1
* * * * *
分 时 日 月 周
第1列表示分钟1~59 每分钟用*或者 */1表示
第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列表示月份1~12
第5列标识号星期0~6(0表示星期天)
我是每晚1点备份
source /etc/profile是引用环境变量,防止定时任务无效(很重要)
mysqlbackup/backup.sh表示我的脚本名是backup.sh并且在mysqlbackup文件夹下,mysqldb_backup.log是备份的日志名。
下一篇是怎样恢复数据利用增量备份和全量备份
- mysql备份以及我的备份文档
- 我的MySQL备份脚本
- MYSQL备份文档
- mysql 备份以及导入
- mysql的备份、导入、以及导出命令
- Mysql备份以及定期清理备份
- mysql数据备份以及恢复
- [mysql]数据库备份以及还原
- [mysql]数据库备份以及还原
- 我的收藏夹备份
- 我的备份一
- 我的备份二
- 我的备份三
- 我的.vimrc备份
- 完全备份、差异备份以及增量备份的区别
- 完全备份、差异备份以及增量备份的区别
- 完全备份、差异备份以及增量备份的区别
- 完全备份、差异备份以及增量备份的区别
- Qt连接Sql server错误ConnectionOpen (Connect()). QODBC3: Unable to connect"
- 奖学金文章连载一 49期刘慧
- 关于stringWithFormat:
- 20150716的一些感想
- PHP 使用GD库生成验证码 在图像上绘制汉字
- mysql备份以及我的备份文档
- 研究row_number和rank分析函数的区别
- 深入理解JavaScript系列(43):设计模式之状态模式
- umask命令
- 深入理解JavaScript系列(42):设计模式之原型模式
- 深入理解JavaScript系列(46):代码复用模式(推荐篇)
- LeetCode 234: Palindrome Linked List (回文链表)
- 深入理解JavaScript系列(41):设计模式之模板方法
- VS2010安装boost