linux脚本调用db2存储过程,LINUX定时执行含有DB2存储过程的SHELL脚本

2023-11-09

《LINUX定时执行含有DB2存储过程的SHELL脚本》由会员分享,可在线阅读,更多相关《LINUX定时执行含有DB2存储过程的SHELL脚本(6页珍藏版)》请在人人文库网上搜索。

1、LINUX下定时执行含有DB2存储过程的SHELL脚本最近项目要求将某些表中的数据转移到历史数据表中,并将成功转移后的数据在生产系统中删除,并且要求每天凌晨1:00定时执行脚本。这是我第一次写这样的脚本程序,现将整个编写过程或步骤记录如下,希望能对有类似需求的人所有帮助,由于本人也是刚接触DB2数据库和shell脚本,错误之处还请见谅。测试服务器的操作系统是Redhat,数据库产品:DB2(10.1版本),转移数据是在DB2存储过程中实现的,下面分几个步骤进行叙述。1、 编写DB2存储过程1编写存储过程具体代码见表格1,将其中的代码形成一个sql文件,文件名为dataHandle.sqlCRE。

2、ATE OR REPLACE PROCEDURE test_schema.dataHandle(in t_Id INT)-in表示输入参数RESULT SETS 1 -返回结果为1个LANGUAGE SQLP1: BEGIN ATOMIC -ATOMIC为了使P1和END P1之间形成一个事务,要么同时成功,要么同时失败declare tIdINT; -声明变量set tId=t_Id; -赋值变量IF tId 0 THEN -判断insert into TEST_SCHEMA.TEST_HISTORY(t_Id,t_name)select t_Id,t_namefrom TEST_SCHEM。

3、A.TM_ASM_FLTSCH where where t_Id=tId; -转移数据delete from TEST_SCHEMA.TM_ASM_FLTSCH where t_Id=tId; -删除数据END IF;END P1 -这里是必须的表12部署存储过程到指定数据库a) 连接数据库切换到数据库用户下执行命令:db2 connect to Dbname或者不切换用户执行命令:db2 connect to Dbname user Username using *b) 部署1中写好的存储过程执行命令:db2 -td -vf dataHandle.sql或者使用datastudio进行部署,。

4、具体流程如下:最后点击Finish即可。2、 编写SHELL脚本该脚本的代码见表2,主要功能是:将表test中90天之前的数据转移到test_history表中,并将表test中已被转移的数据删除掉,并对表test,test_history进行重组,使表中的索引及时生效。脚本文件名为cronTransData.sh,其中获取主键值时,是将符合查询条件的所有主键都输出到文件re.txt中,之后逐行读取该文件中的主键值,并在循环中逐个处理(循环调用存储过程)。#!/bin/sh#load db2 environment variables. /home/db2inst1/.profile #加载D。

5、B2 数据的环境变量 startTime=date +%s #获取当前时间戳#transfer data(90 days before) to history tableoutDate=date -d -90day +%Y-%m-%d #获取当前日期90天之前的日期db2 connect to Dbname #连接数据库#fetch the primary key values of transfered data into re.txt file.db2 select t_Id from test_schema.test where to_date re.txt; #将90天之前的数据的主键。

6、值输出到文件re.txt中db2 terminate #终止数据库连接,释放链接资源#read re.txt file to fetch fltschIds valuecat re.txt|grep s0-9s$|while read tId #从上面的输出文件中提取只含数字和空格的行(只读取主键值)do #循环执行db2 connect to seat#call store procefure to complete data transferdb2 call test_schema.dataHandle($tId) #调用上面部署成功的存储过程db2 terminate;donerunst。

7、ats on table test_schema.test and index all; #整理一下表runstats on table test_schema.test_history and index all; endTime=date +%s #运行结束时间spendTime=$(endTime-startTime) #整个过程消耗的时间echo Spent total time:$spendTime s #打印总消耗,时间单位为秒表23、 编写crontab定时脚本编写定时脚本,脚本名为db2inst1,脚本中的内容为:* 1 * * * . /opt/yourdir/cronTransData.sh/opt/yourdir/tranLog在crontab脚本所在的目录下,执行crontab db2inst1(crontab脚本名),即可。总结,上面的脚本稍作改动即可在AIX(unix)系统上运行,希望能帮助看到此文档的同学,我这里只是一个比较简单的定时脚本,抛砖引玉吧,后期还会进行丰富和更新。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

linux脚本调用db2存储过程,LINUX定时执行含有DB2存储过程的SHELL脚本 的相关文章

  • 力扣第45天----第392题、第115题

    力扣第45天 第392题 第115题 文章目录 一 第392题 判断子序列 二 第115题 不同的子序列 一 第392题 判断子序列 挺简单的 思路跟以前的都差不多 class Solution public bool isSubseque
  • Go解析yaml和yml文件

    Go解析yaml和yml文件 文章目录 Go解析yaml和yml文件 1 yaml概述 2 功能 3 示例 4 语言的构成元素 1 清单 数组 2 关系数组 3 区块的字符 4 保留换行 Newlines preserved 5 折叠换行
  • 英文期刊催稿信模板_SCI投稿委婉催稿信模板

    SCI投稿委婉催稿信模板1 Dear editor I m not sure if it is the right time to contact you to inquire about the status of my submitte
  • 34种ArcGIS常用操作技巧大汇总

    概述 ArcGIS产品线为用户提供一个可伸缩的 全面的GIS平台 ArcObjects包含了许多的可编程组件 从细粒度的对象 例如单个的几何对象 到粗粒度的对象 例如与现有ArcMap文档交互的地图对象 涉及面极广 这些对象为开发者集成了全
  • Burpsuite2022.1详细安装步骤包含证书安装

    burpsuite安装 burpsuite2022 1 https pan baidu com s 1k46tVXOKfdSwxOha UNeyQ 提取码 6954 将 burp suite 压缩包解压到英文目录下 这里我解压到了 E Bu
  • matlab图像滤波

    转自 http hi baidu com wang 5Fpw blog item 36354a637ac87b48eaf8f879 html clc clear all I imread eight tif 用中值滤波 多维滤波 使用中心为
  • zipkin学习--01--理论

    一 介绍 是分布式跟踪系统 Distributed Tracking System 监控微服务各个服务的调用情况 举例 一个请求A 需要先后调用f1 f2 f3等微服务单元的接口 我们可以通过链路追踪查看f1 f2 f3对应接口的耗时 主要
  • CLIP:Contrastive Language-Image Pre-Training

    参考博客 CLIP论文阅读 Learning Transferable Visual Models From Natural Language Supervision CLIP Connecting Text and Images 引言 在
  • Imageview 图片的自动适配 Togglebutton 点击事件

    Imageview 图片控件 主要属性src background 图片的自动适配 Android开发图片https www easyicon net iconsearch android 素材网址 Togglebutton 开合关的两种状
  • STL-常用算法(一.遍历 查找 排序)

    目录 常用遍历算法 for each和transform函数示例 常用查找算法 find函数示例 find if函数示例 adjacent find示例 binary search函数示例 count函数示例 count if函数示例 常用
  • DataGuard(一主一备一级联之failover)

    fail over 1 failover介绍 failover转换 主要考虑的是如何减少数据量的丢失 如果可以允许数据丢失 可以直接切换备库为主库 不必在进行下面的讨论 减少数据的丢失 实际就是弥补日志数据没有传递的问题 在11g中 推出了
  • vite.config.js 配置全局src别名“@“

    编辑vite config js文件 import defineConfig from vite import vue from vitejs plugin vue import path from path 关键代码 https vite
  • ChatGPT助力代码编辑

    如今 在软件开发领域 人工智能和机器学习的运用已越来越普遍 于是 开发者转向利用类似OpenAI的ChatGPT之类的工具 以使工作更简便 效率更高 ChatGPT是OpenAI培训的一款庞大语言模型 本文将向您演示如何借助ChatGPT协
  • 小米miui adb删除自带软件

    小米miui adb删除自带软件 1 下载安装ADB软件驱动 2 配置环境变量 3 连接手机 4 使用ADB命令删除系统应用 1 下载安装ADB软件驱动 2 配置环境变量 打开 我的电脑一属性一系统高级设置 环境变量 编辑Path变量 将a
  • 盛大云业务重点转向自服务

    原文地址 http www csdn net article 2013 04 01 2814731 Grandcloud focus self services CSDN报道 今天上午 盛大旗下视频网站酷6网宣布 任命盛大云计算CEO刘文博
  • CP2102修改设备serial、PID、VID的值

    在实际的应用场景中我们总希望串口设备的serial PID和VID值是唯一的这样才会方便设置设备别名 下面就介绍一下怎么修改设备的serial和PID VID还有驱动的方法 推荐使用修改设备serial的方式 修改PID VID有一定的风险
  • 一篇文章带你搞定Spring的面试题

    目录 一 SpringAOC 二 SpringIOC篇 三 SpringMVC 四 Spring和SpringMVC的常用注解 一 SpringAOP 1 什么是AOPAOP Aspect Oriented Programming 是一种面
  • ssh怎么修改了文件然后保存起来呢?

    用vi ssh之后命令流程如下 之中代表你要输入的命令 cd 你要修改的文件所在目录 比如 cd usr local etc trafficserver vi 你需要修改的文件名 这之后你就会进入vi编辑界面 vi records conf
  • 使用CocoaPod导入Swift第三方库报错

    在使用cocoapod导入swift第三方时出现这样的错误 Pods written in Swift can only be integrated as frameworks add use frameworks to your Podf

随机推荐

  • 【Unity】Unity中获得碰撞体碰撞的位置

    有时间的直接看sprite slicer这个插件的代码 原理也是发射线检测 代码逻辑什么的比下面的文章来的好的多 如果有空我也可以整理一下 在纯物理环境中 为了获得碰撞体碰撞的位置 我们可以使用Collider2D OnCollisionE
  • 2分钟用ChatGPT写一篇高质量文章

    一 文章结构剖析 如果我们经常去写文章或者是去看别人的文章 你会发现文章分为以下几部分 标题 大纲 前言 导语 正文 不同的结构 结尾 呼吁 当然了 如果我们去问 ChatGPT 也会得到类似的答案 发送给ChatGPT 文章分为哪几个部分
  • sqli-labs第二十四关(二阶注入)

    进入第二十四关 这关叫二阶注入 二阶注入个人感觉和存储型xss有些类似 大致分为以下几步 攻击者在HTTP请求中提交恶意代码 可以是sql js脚本等 应用将输存储在数据库以便后面使用并响应请求 攻击者提交其他请求 为处理其他请求 应用会检
  • 怎么在mysql模拟优化实践_MySQL性能优化 — 实践篇2

    本文作者 何建辉 公众号 org yijiaoqian 点赞再看 养成习惯 微信搜一搜 一角钱小助手 关注更多原创技术文章 本文 GitHub org hejianhui JavaStudy 已收录 有我的系列文章 前言 上一篇 MySQL
  • 2023华为OD机试真题【二元组个数/哈希表】

    题目描述 给定两个数组a b 若a i b j 则称 i j 为一个二元组 求在给定的两个数组中 二元组的个数 输入描述 第一行输入 m 第二行输入m个数 表示第一个数组 第三行输入 n 第四行输入n个数 表示第二个数组 输出描述 二元组个
  • 软件测试是干什么的?它为什么需要这个岗位?

    目录 一 软件测试概念 二 软件测试目的 三 软件测试基本原则 四 软件测试主要工作内容 五 软件测试方法 六 测试工程师的职责 七 为什么要软件测试这个岗位 一 软件测试概念 软件测试 为了发现软件错误和缺陷 统称bug 而执行程序的一个
  • 机器学习之MATLAB代码--SSA-CNN-BiLSTM做电池容量预测(十)

    机器学习之MATLAB代码 SSA CNN BiLSTM做电池容量预测 十 代码 数据 结果 代码 代码按照如下顺序 1 clc close all clear all data xlsread B05 xlsx 1 A2 A169 num
  • 使用Ajax校验用户名是否存在

    使用Ajax校验用户名 通常情况下在一个系统中的用户的登录名是唯一的 为了保证用户名的唯一性 需要在用户注册时添加校验 即根据用户输入的用户名去数据库中查找 这里使用ajax校验用户名可以很好的提升用户体验 用户输入完用户名失去鼠标焦点后通
  • 支持多分辨率播放和比较的设备推荐

    配备Venue Player的系统可用于播放和比较几种未压缩的视频格式 以在几种情况下查找质量水平 并排播放多种格式 以确定原始格式质量和下游编码视频质量都可接受的质量 播放4K与HD格式以找到已知的质量设置 以对在电视面板上转换为4K的H
  • 基于C++的Base64编解码实现

    base64 cpp include
  • sh文件加密解密gzexe(Cannot decompress $0)

    gzexe加密 系统自带的gzexe程序 它不但加密 同时压缩文件 gzexe a sh 它会把原来没有加密的文件备份为 a sh 同时 a sh 即被变成加密文件 加密后的状态 skipping bin sh skip 44 tab nl
  • 推荐系统入门之使用协同过滤实现商品推荐

    简介 场景将使用机器学习PAI平台 指导您搭建一个基于协同过滤算法的商品推荐系统 背景知识 数据挖掘的一个经典案例就是尿布与啤酒的例子 尿布与啤酒看似毫不相关的两种产品 但是当超市将两种产品放到相邻货架销售的时候 会大大提高两者销量 很多时
  • 使用spacy库出现错误OSError: [E941] Can‘t find model ‘en‘.

    问题 运行代码 TEXT data Field tokenize spacy LABEL data LabelField dtype torch float 报错 OSError E941 Can t find model en It lo
  • 将矩阵&概率画成图

    任何一个矩阵都能画成一个图 更严谨的来说 每个矩阵对应一个加权二分图 所谓图是指点和线的集合 二分是指两种不同的类型 加权是指每条线上都有一个数字标记 上图的三个绿点代表三行 两个红点代表两列 若对应矩阵值非零 则在绿点和红点间画一条线连接
  • PHP中的电子邮件如何发送?

    PHP中的电子邮件发送是一个常见的需求 但是如果你是一个新手 可能会觉得有些棘手 别担心 我可以为你提供一些简单的步骤和代码例子 帮助你发送电子邮件 首先 你需要使用PHP的mail 函数来发送电子邮件 这个函数需要三个参数 邮件地址 邮件
  • 【解决】MFC改变窗口标题“无标题—title”

    用框架窗口类的SetWindowText L 你的标题 在应用程序类CTestApp InitInstance 中调用如下语句 m pMainWnd gt SetWindowText L 你的标题 或者在其他地方用AfxGetMainWnd
  • 图的m着色问题-回溯法

    排列树问题 给定无向连通图G和m种不同的颜色 用这些颜色为图G的各顶点着色 每个顶点着一种颜色 是否有一种着色法使G中任意相邻的2个顶点着不同颜色 输出结果 include
  • 2023年云南省职业院校技能大赛中职组“网络安全”赛项样题

    2023年云南省职业院校技能大赛 中职组 网络安全 赛项样题 一 竞赛时间 总计 180分钟 二 竞赛阶段 竞赛阶段 任务阶段 竞赛任务 竞赛时间 分值 A B模块 A 1 登录安全加固 180分钟 200分 A 2 数据库加固 A 3 服
  • OpenGL: 平面阴影投射矩阵的推导

    OpenGL 平面阴影投射矩阵的推导 OpenGL SuperBible 这本书介绍了一种阴影的实现方法 将模型视图矩阵压平 所有被绘制的物体都将位于这个平面的二维世界中 不过这本书没有介绍该平面阴影投射矩阵是如何推导的 假设平面方程 Ax
  • linux脚本调用db2存储过程,LINUX定时执行含有DB2存储过程的SHELL脚本

    LINUX定时执行含有DB2存储过程的SHELL脚本 由会员分享 可在线阅读 更多相关 LINUX定时执行含有DB2存储过程的SHELL脚本 6页珍藏版 请在人人文库网上搜索 1 LINUX下定时执行含有DB2存储过程的SHELL脚本最近项