Welcome 微信登录

首页 / 数据库 / MySQL / Linux下MySQL定时按日期备份数据

一、使用mysql内置命令 mysqldumpUsage:
mysqldump [OPTIONS] database [tables]
mysqldump [OPTIONS] --databases [OPTIONS] DB1 [DB2 DB3...]
mysqldump [OPTIONS] --all-databases [OPTIONS]可以看到能备份全部的数据库,指定的数据库,指定数据库中的表mysqldump -uUsername -pPassword Database > /var/backup/mysql/database.sql
二、按日期备份mysqldump -uUsername -pPassword Database > /var/backup/mysql/database-`date +%Y%m%d`.sql
`date +%Y%m%d` 利用了shell的知识,先执行,得到格式化的日期
vim /var/backup/backup-mysql.sh把上面的内容存到文件中chmod +x backup-mysql.sh加上可执行权限
三、定时备份使用系统的crontabcrontab -e# m h  dom mon dow   command
0 3 * * * /var/backup/backup-mysql.sh

时间的格式是分 时 日 月 周上面的例子是指定每天3点备份一次数据库
提高:当然,还可以加上一些更好的功能,如备份后的文件压缩一下,这个很简单只保留最近xx天的备份文件,这个要稍微复杂一点点使用mysql二进制增量备份……2012/03/15日更新 【Linux公社 http://www.linuxidc.com 】 以下是shell脚本:
  1. JIRA_FILE_NAME=jira-`date +%Y%m%d`;  
  2. BBS_FILE_NAME=bbs-`date +%Y%m%d`;  
  3. MANTIS_FILE_NAME=mantis-`date +%Y%m%d`;  
  4.   
  5. cd /var/backup/mysql/  
  6. mysqldump -ujira -pjira jira > ${JIRA_FILE_NAME}.sql  
  7. tar -zcvf ${JIRA_FILE_NAME}.sql.tar.gz ${JIRA_FILE_NAME}.sql  
  8. rm -rf ${JIRA_FILE_NAME}.sql  
  9.   
  10. mysqldump -ubbs -pbbs bbs > ${BBS_FILE_NAME}.sql  
  11. tar -zcvf ${BBS_FILE_NAME}.sql.tar.gz ${BBS_FILE_NAME}.sql  
  12. rm -rf ${BBS_FILE_NAME}.sql  
  13.   
  14. mysqldump -umantis -pmantis mantis > ${MANTIS_FILE_NAME}.sql  
  15. tar -zcvf ${MANTIS_FILE_NAME}.sql.tar.gz ${MANTIS_FILE_NAME}.sql  
  16. rm -rf ${MANTIS_FILE_NAME}.sql  
RHEL5开启和关闭Oracle实例以及自启动Oracle Apps(EBS)模块名称 & SAP模块名称相关资讯      MySQL数据库教程 
  • MySQL 处理非法数据  (04/09/2013 08:06:28)
  • MySQL关于timestamp和mysqldump的  (12/16/2012 13:25:41)
  • MySQL保证数据完整性  (12/16/2012 12:00:35)
  • ERROR 1130: mysql 1130连接错误的  (12/16/2012 13:29:08)
  • MySQL数据库教程:管理数据库和表(  (12/16/2012 12:47:02)
  • MySQL快速插入大批量数据存储过程  (11/05/2012 19:04:04)
本文评论 查看全部评论 (0)
表情: 姓名: 字数