linuxdb2sql脚本
Linux环境下DB2数据库的备份和恢复的实际应用代码如下:
DB2数据库备份脚本:
. /home/db2admin/sqllib/db2profile
db2 backup db datedb online to /dbbackup/date include logs
cd /dbbackup/datetoday=`date +”%Y%m%d”`
file1=”*$today*”
ftpfile=`ls $file1`
echo $ftpfile
lftp -c “open ftp地址;user用户名密码@\$0;put $ftpfile”
find /dbbackup/date -ctime +15 -exec rm {} \;
恢复命令:
通过root命令登录到服务器上后切换到数据库用户名下用su – db2admin命令。
进入到备份文件存放目录
执行如下命令
[db2admin@localhost db2back]$ db2 restore db datedb from /hom
⑵ DB2数据库定时自动清理表数据的脚本语句
这个根据数据量来的:
若数据不大:
用crontab 写个脚本语言,先获取当前时间 比如php 为$day=inter(date("d",time()));//获取当前日期
if($day=1){//判断是否是月初
do{//数据大分页删除;根据时间取
$return = delData(time<strtotime(“-3 month”));
}while($total >(page-1)*每页数量);
}
2.定时存储过程
CREATE EVENT `e_call` ON SCHEDULE EVERY 3 MONTH eENDS 'time' ON COMPLETION NOT PRESERVE ENABLE DO call p_chk();
⑶ 请教高手:DB2 SQL脚本批量执行如何保存日志问题
可以在命令编辑器或者Windows 的DB2 命令窗口或者 Linux 的shell 中执行SQL 脚本。在windows 的DB2 命令窗口或者 linux 的shell 中执行SQL语句,可以使用下面的命令执行script1.sql脚本:
db2 -t -v -f script1.sql -z script1.log
或者:
db2 –tvf script1.sql –z script1.log
在上面的命令中,
-t 表示语句使用默认的语句终结符——分号;
-v 表示使用冗长模式,这样 DB2 会显示每一条正在执行命令的信息;
-f 表示其后就是脚本文件;
-z 表示其后的信息记录文件用于记录屏幕的输出,方便以后的分析(这是可选的,但我们建议使用该选项)。
当使用了-t选项而没有标明语句终结符,则分号(;)会默认为语句的终结符。有时可能会出现使用另外的终结符的情况,例如用SQL PL 编写的的脚本使用其它的符号而不是默认的分号,因为分号在SQL PL 是用于定义数据库对象过程中的语句结束。
⑷ linux执行db2数据库执行sql脚本为什么乱码
检查一下sql文件的编码是否和db2的编码一致~
⑸ 想请教下各路大神,linux下每天定时给db2数据库做一个全库压缩备份的脚本,应该怎么写呢
备份命令的栗子:db2 backup db tt online to /db2home/db2 compress include logs
然后命令挂到crontab里面就行了
db2一备份数据库就几乎不动了,慎重哈~(其实一周备份一次就差不多了)