Linux 定时任务命令的介绍:
命令:crontab
常用参数:
-l 列出当前用户所有的定时任务。
-e 编辑当前用户定时任务
-d 删除当前用户的定时任务
[oracle@dblan ~]$ crontab -l
0,15,30,45 * * * * /home/oracle/app/oracle/product/11.2.0/dbhome_1/ccr/bin/emCCR -cron -silent start
0 3 * * 0 /oradata/rmanbak/script/bak_inc0.sh
0 3 * * 3 /oradata/rmanbak/script/bak_inc1.sh
0 3 * * 1,2,4,5,6 /oradata/rmanbak/script/bak_inc2.sh
0 23 * * 6 /home/oracle/dbback/dbback.sh
定时任务列表内容解析:
* * * * * command
分 时 日 月 周 想要执行的命令
第1列表示分钟1~59 每分钟用*或者 */1表示
第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列表示月份1~12
第5列标识号星期0~6(0表示星期天)
第6列要运行的命令
例子:
0 23 * * 6 /home/oracle/dbback/dbback.sh
每周六 23 点 执行备份的命令
*表示时间的列可以有多个值 例如:
30 12 1,10,22 * * /home/oracle/dbback/dbback.sh
每月1、10、22日 12:30 执行备份任务
命令介绍到此为止************************************************
编写导出脚本
#!/bin/sh if [ -f ~/.bash_profile ]; then . ~/.bash_profile fi rq=`date '+%Y%m%d%H%M'` exp "username/password@orcl file=/home/oracle/dbback/$rq.dmp log=/home/oracle/dbback/$rq.log" zip -m /home/oracle/dbback/$rq.zip /home/oracle/dbback/$rq.dmp /home/oracle/dbback/$rq.log
导出后进行了dmp和log压缩成一个文件(不保留原文件)
将脚本标记为可执行
chmod +x dbback.sh
编辑定时任务(注意当前用户)
用 crontab -e命令 进行编辑(如果原本就有别的任务,新起一行增加)
[oracle@localhost backup]$ crontab -e
30 23 * * * /home/oracle/dbback/dbback.sh
这样就添加了一个计划,在每天的23点30分运行
大功告成,祝你好运