linux mysql定时备份
2018-06-18 00:40:40来源:未知 阅读 ()
项目需要定时备份数据库,以下是自己的操作笔记
1.检查磁盘空间
# df -h Filesystem Size Used Avail Use% Mounted on /dev/vda1 40G 3.6G 34G 10% / tmpfs 16G 0 16G 0% /dev/shm
这是我当前linux服务器的情况,至于为什么是这样子,我也不清楚(我是半路接过来的,无奈)
根据上面的信息,我就把备份文件放在/dev目录下面
2.创建备份目录
cd /dev mkdir backup cd backup
3.创建备份shell命令
vi bkDatabaseName.sh
输入如下内容
1 #!/bin/bash 2 mysqldump -uusername -ppassword -hmysqlIp DatabaseName > /dev/backup/DatabaseName_$(date +%Y%m%d_%H%M%S).sql
对备份进行压缩
mysqldump -uusername -ppassword -hmysqlIp DatabaseName | gzip > /dev/backup/DatabaseName_$(date +%Y%m%d_%H%M%S).sql.gz
注意:
把 username 替换为实际的用户名;
把 password 替换为实际的密码;
把mysqlIp替换mysql的IP;
把 DatabaseName 替换为实际的数据库名;
4.添加可执行权限
chmod u+x bkDatabaseName.sh
添加可执行权限之后先执行一下,看看脚本有没有错误,能不能正常使用;
./bkDatabaseName.sh
5.添加定时执行任务
1 # crontab 2 -bash: crontab: command not found
执行 crontab 命令如果报 command not found,就表明没有安装;
安装crontab请参考:http://www.cnblogs.com/dxy1451713982/p/8081569.html
添加定时任务
crontab -e
*/1 * * * * /dev/backup/bkDatabaseName.sh
表示每分钟执行一次,注:对于cron表达式,建议自己百度
6.测试任务是否执行
1 # tail -f /var/log/cron 2 Dec 21 17:33:10 iZ2318jid47Z run-parts(/etc/cron.daily)[22449]: finished makewhatis.cron 3 Dec 21 17:33:10 iZ2318jid47Z run-parts(/etc/cron.daily)[15753]: starting mlocate.cron 4 Dec 21 17:33:10 iZ2318jid47Z run-parts(/etc/cron.daily)[22460]: finished mlocate.cron 5 Dec 21 17:33:10 iZ2318jid47Z run-parts(/etc/cron.daily)[15753]: starting prelink 6 Dec 21 17:33:27 iZ2318jid47Z run-parts(/etc/cron.daily)[23799]: finished prelink 7 Dec 21 17:33:27 iZ2318jid47Z run-parts(/etc/cron.daily)[15753]: starting readahead.cron 8 Dec 21 17:33:27 iZ2318jid47Z run-parts(/etc/cron.daily)[23811]: finished readahead.cron 9 Dec 21 17:33:27 iZ2318jid47Z run-parts(/etc/cron.daily)[15753]: starting tmpwatch 10 Dec 21 17:33:27 iZ2318jid47Z run-parts(/etc/cron.daily)[23849]: finished tmpwatch 11 Dec 21 17:33:27 iZ2318jid47Z anacron[15719]: Job `cron.daily' terminated
或者去你存放备份文件的目录下查看,是否有备份文件生成;
7.备份完成后删除5天前的备份文件
find /dev/backup -name databaseName"*.sql.gz" -type f -mtime +5 -exec rm -rf {} \; > /dev/null 2>&1 find /dev/backup -name databaseName"*.sql" -type f -mtime +5 -exec rm -rf {} \; > /dev/null 2>&1
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- MySQL replace函数怎么替换字符串语句 2020-03-09
- PHP访问MySQL查询超时怎么办 2020-03-09
- mysql登录时闪退 2020-02-27
- MySQL出现1067错误号 2020-02-27
- mysql7.x如何单独安装mysql 2020-02-27
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash