Linux 定时任务 - MySQL数据库备份
Linux 定时任务 - MySQL数据库备份
1.查看系统磁盘空间
定时任务需要选一个充足的磁盘空间,避免出现因空间不足而导致的备份失败。
[root@localhost lyky]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/centos-root 50G 3.9G 47G 8% / devtmpfs 7.8G 0 7.8G 0% /dev tmpfs 7.8G 0 7.8G 0% /dev/shm tmpfs 7.8G 8.5M 7.8G 1% /run tmpfs 7.8G 0 7.8G 0% /sys/fs/cgroup /dev/sda1 497M 169M 329M 34% /boot /dev/mapper/centos-home 442G 314M 442G 1% /home tmpfs 1.6G 0 1.6G 0% /run/user/1000 |
2.创建备份文目录
上面我们使用命令看出/home下空间比较充足,所以可以考虑在/home保存备份文件
创建目录data和shell,分别用来存放脚本和备份的数据
[root@localhost lyky]# cd /home [root@localhost home]# mkdir backupData [root@localhost home]# cd backupData/ [root@localhost backupData]# mkdir data [root@localhost backupData]# mkdir shell |
3.创建备份shell脚本
[root@localhost lyky]# cd /home/shell [root@localhost shell]# vi backupShell.sh |
备份文件:
mysqldump -uusername -ppassword dbname > /home/backupData/dbname_$(date +%Y%m%d_%H%M%S).sql |
备份压缩文件:
mysqldump -uusername -ppassword dbname | gzip > /home/backupData/dbname_$(date +%Y%m%d_%H%M%S).sql.gz |
修改username,password,dbname后:wq保存退出
4.添加可执行权限
[root@localhost lyky]# cd /home [root@localhost lyky]# chmod -R 777 backupData |
添加执行权限后,脚本试运行,看能否正常使用
[root@localhost shell]# ./backuplms.sh |
6.添加定时任务
[root@localhost shell]# vi /etc/crontab |
SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root # For details see man 4 crontabs # Example of job definition: # .---------------- minute (0 - 59) # | .------------- hour (0 - 23) # | | .---------- day of month (1 - 31) # | | | .------- month (1 - 12) OR jan,feb,mar,apr ... # | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat # | | | | | # * * * * * user-name command to be executed 0 */1 * * * root /home/backupData/shell/backuplms.sh |
最后一行含义是:每小时执行一次shell脚本命令
至于命令格式,可以参照:Linux定时任务 - crontab命令格式详解
5.查看任务是否执行
[root@localhost shell]# tail -f /var/log/cron Jan 12 08:01:01 localhost run-parts(/etc/cron.hourly)[13357]: finished 0anacron Jan 12 09:00:01 localhost CROND[13376]: (root) CMD (/backupData/shell/backuplms.sh) Jan 12 09:01:01 localhost CROND[13389]: (root) CMD (run-parts /etc/cron.hourly) Jan 12 09:01:01 localhost run-parts(/etc/cron.hourly)[13389]: starting 0anacron Jan 12 09:01:01 localhost run-parts(/etc/cron.hourly)[13398]: finished 0anacron Jan 12 09:49:01 localhost crond[732]: (*system*) RELOAD (/etc/crontab) Jan 12 10:00:01 localhost CROND[13505]: (root) CMD (/home/backupData/shell/backuplms.sh) |
相关推荐
表格的现在还是较为常用的一种标签,但不是用来布局,常见处理、显示表格式数据。在HTML网页中,要想创建表格,就需要使用表格相关的标签。<table> <tr> <td>单元格内的文字</td> ...