AIX下配置DB2定时任务
1. 编写sql脚本编写DB2需要执行的sql执行脚本,并存放到AIX服务器上。
示例如下crontest.sql:
connect to tem user db2admin using db2admin;call P_TEST();
2. 编写sh执行文件
编写sh文件,并存放到AIX服务器上,并修改sh文件为可执。
示例如下crontest.sh:
PATH=/usr/bin:/etc:/usr/sbin:/usr/ucb:$HOME/bin:/usr/bin/X11:/sbin:.export PATHif [ -s "$MAIL" ] # This is at Shell startup. In normalthen echo "$MAILMSG" # operation, the Shell checksfi # periodically.# The following three lines have been added by UDB DB2.if [ -f /home/db2admin/das/dasprofile ]; then ./home/db2admin/das/dasprofilefi# The following three lines have been added by UDB DB2.if [ -f /home/db2admin/sqllib/db2profile ]; then ./home/db2admin/sqllib/db2profilefi#execute sql scriptdb2 -svtf /home/db2admin/task/crontest.sql -z /home/db2admin/task/crontest.log
注:sh文件的第一部分为设置db2执行需要的环境变量(必须设置),可以根据具体的实际情况进行修改,或直接将db2admin的.profile文件中的变量直接复制过来。
#修改sh文件的属性chmod 777 crontest.sh
3. 配置crontab
用db2admin用户登陆AIX系统,使用crontab –e命令进行定时任务设定。crontab的具体命令参见附注中的说明。
示例如下:
# 设置每天02:00分定时执行crontest.sh脚本00 02 * * * /home/db2admin/task/crontest.sh
存盘退出即可。
附注
1.crontab
crontab命令的一般形式为: crontab [-u user] -e -l -r
其中:
• -u 用户名。如果使用自己的名字登录,就不用使用-u选项。
• -e 编辑crontab文件。不带-u选项可以编辑自己的crontab文件。
• -l 列出crontab文件中的内容。不带-u选项可以列出自己的crontab文件的内容。
• -r 删除crontab文件。小心使用哦。
crontab文件(各个用户的这个文件放在/var/spool/cron/crontab/目录中,以用户名来区别。) 每个条目中各个域的意义和格式如下:
下面就是这些域:
• 第1列分钟1~59
• 第2列小时1~23(0表示子夜)
• 第3列日1~31
• 第4列月1~12
• 第5列星期0~6(0表示星期天)
• 第6列要运行的命令
# 表示每晚的21:30运行/apps/bin目录下的cleanup.sh30 21* * * /apps/bin/cleanup.sh# 表示每月1、10、22日的4:45运行/apps/bin目录下的backup.sh45 4 1,10,22 * * /apps/bin/backup.sh# 表示每周六、周日的1:10运行一个find命令10 1 * * 6,0 /bin/find -name "core" -exec rm {} \;# 表示在每天18:00至23:00之间每隔30分钟运行/apps/bin目录下的dbcheck.sh0,30 18-23 * * * /apps/bin/dbcheck.sh# 表示每星期六的11:00pm运行/apps/bin目录下的qtrend.sh 0 23 * * 6 /apps/bin/qtrend.sh
2.DB2参数
DB2命令参数如下:
参数说明默认值-a显示 SQLCAOFF-c自动落实ON-e显示 SQLCODE/SQLSTATEOFF-f读取输入文件OFF-l将命令记录到历史文件中OFF-n除去换行字符OFF-o显示输出ON-p显示交互式输入提示ON-r将输出保存到报告文件OFF-s在命令出错时停止执行OFF-t设置语句终止字符OFF-v回送当前命令OFF-w显示 FETCH/SELECT 警告信息ON-x不打印列标题OFF-z将所有输出保存到输出文件OFF
页:
[1]