1. 程式人生 > >linux下使用crontab和儲存過程定期刪除db2的表

linux下使用crontab和儲存過程定期刪除db2的表

1.建立儲存過程DelData_day()


--設定指向的資料庫


SET SCHEMA = PSMS;


--設定當前的路徑


SET CURRENT PATH = 


"SYSIBM","SYSFUN","SYSPROC","SYSIBMADM","PSMS";


--建立儲存過程


CREATE PROCEDURE "PSMS".DelData_day()


Begin 


--刪除本地化零件(009)相關的資料


delete from temp;


end




--測試儲存過程是否建立成功


call "PSMS".DelData_day()


 


2.建立shell指令碼(DelData_day.sh)


#! /bin/sh


[註釋:注意#打頭什麼的都去掉,這是干擾crontab執行指令碼的重要原因!]


 


DB2_HOME=/opt/ibm/db2/V9.7


PATH=$DB2_HOME/bin:$PATH


export $DB2_HOME


export $PATH


[註釋:必須要設定匯出一下相關命令(DB2)的環境變數,否則crontab無法正常識別執行]


Tips:其實這個可以寫在etc資料夾中的profile檔案中的,然後匯入profile檔案,但是眾所周知,profile檔案中配置整個系統中一系列的環境變數的,如果配置在這個檔案中那麼所有的使用者都可以使用到該環境變數,從安全性這方面考慮呢,還是最好就將需要使用的命令的環境變數配置在指令碼中即可。


 


startTime=`date +%Y%m%d%H%M%S`


echo $startTime


echo "開始執行指令碼"


db2 connect to STSUPM2 user PSMS using PSMS


[註釋:注意不僅要連線到資料庫還要連線到儲存過程所在例項名]


echo "連線上資料庫,開始執行指令碼"


db2 "call DelData_day()"


endTime=`date +%Y%m%d%H%M%S`


echo $endTime


echo "指令碼執行完畢!關閉資料庫連線"


db2 terminate


 


附:指令碼中包含一些時間或者文字記錄,有利於跟蹤指令碼的執行




3.使用crontab建立定時任務


1) 建立定時任務


在etc資料夾下面找到crondtab檔案,在其最後一行加上


*/10 * * * * root /opt/DelData_day.sh>>/opt/DelData_day.log


格式註釋:分鐘 小時 日 月 星期 使用者 指令碼絕對路徑>>日誌檔案所在絕對路徑


表示每10分鐘執行一次指令碼檔案DelData_day.sh,並將列印資訊輸出在


DelData_day.log檔案中


2) 重啟crond服務


[
[email protected]
~]# /etc/init.d/crond restart


如果讓crond在開機時執行,應該改變其執行級別


[[email protected] ~]# chkconfig --levels 35 crond on

相關推薦

linux使用crontab儲存過程定期刪除db2

1.建立儲存過程DelData_day() --設定指向的資料庫 SET SCHEMA = PSMS; --設定當前的路徑 SET CURRENT PATH =  "SYSIBM","SYSFUN","SYSPROC","SYSIBMADM","PSMS"; --建立儲存過

MySQL任務排程儲存過程實現實時修改中欄位值

DELIMITER $$USE `wqd_zw_platform`$$DROP PROCEDURE IF EXISTS `update_activity_state`$$CREATE DEFINER=`root`@`localhost` PROCEDURE `update_activity_state`()B

linuxcrontab的原理用法

amp %d 檢查 pos 時間 運行時間 tor mman body linux 系統則是由 cron (crond) 這個系統服務來控制的。Linux 系統上面原本就有非常多的計劃性工作,因此這個系統服務是默認啟動的。另 外, 由於使用者自己也可以設置計劃任務,所以,

Linuxat crontab的基本運用以及臨時檔案基本管理

一、at的基本運用 在終端輸入watch -n 1 ls -R /mnt/           //監控檔案每秒檢視一次並以第歸的方式列出來 使用at命令制定延時任務 

LinuxNVIDIA GPU安裝過程中遇到的NouveauKernel-source問題總結

剛開始覆蓋安裝的時候,會提示禁用Nouveau顯示卡驅動,這時候採取的步驟如下所示: 1)即關閉Nouveau:把驅動加入黑名單中: /etc/modprobe.d/blacklist.conf  在後面加入: blacklist nouveau 2) 使用 dracut重新建立&

linux crontab -e 命令插入及儲存

網上雖然是這麼說的, ======================================= root身份登入到命令列 輸入crontab -e 按下a鍵進入到編輯模式 輸入 0 */1 * * * /home/work/start-service.sh 同時按

Linux建立刪除使用者

在Linux下建立使用者和刪除使用者,必須在root使用者下,如果你當前不是用根使用者登入,你可以開啟終端,輸入"su root"命令,再輸入根口令,就可以進入root使用者模式下,如下所示: 建立使用者(useradd): (1)用useradd命令建立使用者建立使用者: 語法: useradd

刪除指定SQL資料庫所有儲存過程

原理就是根據 sysobjects 系統表裡面查到每張表名,然後drop掉,同理可以一次性drop所有儲存過程 --刪所有資料表 USE [資料庫名] DECLARE @tableName VARCH

sqlserver 自定義、刪除、執行 函式儲存過程

自定義儲存過程: if (object_id('p_wm_get_dynstore', 'P') is not null) drop proc p_wm_get_dynstore go create procedure p_wm_get_dynstore( @s

linux bash_profilebashrc區別

bash_profile和bashrc區別【.bash_profile 與 .bashrc 的區別】.bash_profile is executed for login shells, while .bashrc is executed for interactive non-login shells.【l

Linuxcrontab的使用

為什麽 bin es2017 技術分享 星期 roo spool def 變量 之前一直在Linux上使用crontab,今天換到了Ubuntu上踩了不少小坑,今天總結一下。 默認情況下Ubuntu裏都裝好了crontab,我們直接使用crontab來編輯命令: 結果

linux修改rm命令防止誤刪除

寫上 linu rm -rf 目錄權限 執行權限 一個 remove 但是 bsp 前言:相信很多朋友都遇到過在linux下用rm命令誤刪除文件的時候,此刻的心中仿佛有無數的羊駝在奔騰。那麽怎麽防止這種情況發生呢?當然是有方法的,我們可以寫一個shell腳本,改變一下rm命

解決Linux serverclient 通過TCP通訊:accept成功接收卻報錯的問題

ipv4 socket error 實例代碼 ... lis col argc 例子   今天在寫簡單的TCP通訊例子的時候,遇到了一個問題:server 和client能夠連接成功,並且client也能夠正常發送,但server就是接收不到,在網上搜索一番後,終於解決了問

Linux安裝卸載軟件

20180324一、安裝方法:rpm工具、yum工具、源碼包 1、rpm工具:由redhat公司開發; yum工具:是由Python開發的; 源碼包:由C語言開發,C語言是Linux上最標準的程序語言。 二、rpm工具的使用1、在虛擬機上掛載一CD到/mnt/目錄下: mount /dev/cdrom /m

Linux系統開機啟動過程

linu 系統初始化 mark src 初始化 text 令行 圖形界面 圖形 提起操作系統這個詞,想必大家並不陌生,有電腦端操作系統和手機端操作系統。電腦端操作系統較為熟悉的就是微軟開發的windows操作系統,還有一種就是大家稍微陌生的linux操作系統,而手機端的操作

linux 添加,修改,刪除路由

pts 開始 轉發 網絡 scrip 防火墻 scripts ble iptables 在日常生活中,或者在服務器中,有多個網卡配置多個地址,訪問不同的網絡段,這種情況是非常常見的現象,這個時候我們就需要添加多個路由來實現多網絡段的通行。 一、設置當前終端路由(再開機就沒效

Unix / Linux nohup & 的區別

http app 後來 gts -s 周期 能夠 不同 history 聲明:本文首發 簡單教程,網址為 https://www.twle.cn/t/332#reply0 就在剛剛回家的路上,被前同事奪命三連 call 呼喚解決一個問題:為啥放在 crontab 裏的命

惠州學院-資料庫實驗6-觸發器儲存過程

    計算機科學系實驗報告(首頁) 課程名稱 資料庫系統概論 班級 14計科2班 實驗名稱 觸發器和儲存過程

linux 用find rm進行批量刪除

find ./ -name _NA | xargs rm -rf 用 find 檢索出相應檔案(包括當下資料夾下面的檔案也能一併檢索出來), 然後將檢索結果通過管道命令導向到引數 xargs 然後用rm命令進行刪除, -rf為刪除命令rm的引數, r表示遞迴刪除,f表示不需要確認 也可以

linux新建(mkdir)、刪除(rmdir)資料夾

mkdir: 該命令:mkdir  ./folder2/folder3                   ./