【Vegas原创】ProC环境搭建

C编译环境搭建
1
pcscfg.cfg中的修改
2
/usr/include(权限可为755)
I2Ocomm.pc
I2Ocomm.h
decimal.h
3)/usr/bin

mkpc
makefile_template

 

                                关于batch job

 

Informix 中有对于Job 进行进程排序的程序 batchqsubmit,以及批处理程序batchq_job, bpcsbatch bpcson
这里对于以上四个程序的修改要作以下预先设定;
1
要运行以上程序,请先在batchq.pc源程序中更改全局变量suser 的初始设定为 "uid/pwd"(例如:"bach/daxonerp"). 这里的uid/pwd 是具有读写oracle库中batsysqueue权限的用户。
2
请编译batchq.pc,并将可执行文件更名为obatchq,并将此文件拷贝到/usr/bin.
3
 请编译submit.pc,并将可执行文件更名为osubmit,并将此文件拷贝到/bpcs/ora/batchjob
4
请将 obpcsbatch obpcson 拷贝到/usr/bin
5
请系统管理员将上述文件的权限更改为所有人都可以执行。
6
 原先有批处理程序/bpcs/cron/batchq/batchq_job 同样这里也有obatchq_job与之对应,请先修改obatchq_job里的ORACNN为合法的Oracle用户,然后以root的身份来运行这个程序,会把obatchq以四种方式在C shell中启动起来的。
经观察结果,hpdemo2 上少了 daemon 这支 proc 程序

Source Code 放在 /bpcs/cron/daemon 目录下
要启动这支 proc 要使用以下指令
nohup /bpcs/cron/daemon/daemon &
当程序执行完毕时再启动 job queue
/bpcs/cron/batchjob/obatchq_job
当执行完毕后,这才算完成 oracle 版本 batch queue 的启动
一定要先起DAEMON,再做BATCHQ

 

 

 

 

Pro*C环境搭建(dts环境为例)


1)CREATE FUNCTION/PACKAGE

vb端呼叫后台linux脚本
PACKAGE/PACKAGE BODY:daemon
怎样在Oracle数据库中如何直接运行OS命令
FUNCTION:server system_
传参数呼叫后台脚本


2)
所有ProC程序都放在/bpcs/source(dts环境)

                     /home/oracle2/dtlb/source(dtlb环境)

/bpcs/source(每个PC程序需要和三个文件makefile/I2OCOMM.PC/I2OCOMM.H一起)
注意PC程序中的用户名/密码=bach/daxonerp


#mkdir /bpcs/ora/batchjob
#mkdir /bpcs/cron
batchq.pc  
编译后生成可执行文件bqtchq   #mv batchq /usr/bin/obatchq
submit.pc  
编译后生成可执行文件submit 

#mv submit /bpcs/ora/batchjob/osubmit

(obatchq,osubmit 为后台被呼叫的pc程序

daemon.pc 
编译后生成可执行文件daemon 

#nohup /bpcs/cron/daemon/daemon &做为守护进程启动


3)2
SHELLobpcsbatch/obpcson)COPY /usr/bin

(被前台呼叫的脚本程序,在/usr/bin下)


4
#mkdir /tmp/wrksplfpc报表存放的地方)
PC
可执行文件放在/bpcs/ora/batchjob
批处理程序obatchq_job,CPOY/bpcs/cron/batchq下再执行 ./obatchq_job
 
就启动batchq

dtlb环境与dts类似,只是在程序放在不通的路径,具体路径可以根据需求更换

目前路径:

dts: daemon   /bpcs/cron/daemon

   obatchq_job   /bpcs/cron/batchjob

   obpcsbatch/obpcson /usr/bin

   obatchq   /usr/bin

   osubmit /bpcs/ora/batchjob

   编译完的pc程序放在   /bpcs/ora/batchjob

   Sourcecode放在   /bpcs/source

dtlb: daemon   /home/oracle2/dtlb/cron/daemon

   obatchq_job   /home/oracle2/dtlb/cron/batchjob

   obpcsbatdt/obpcsondt(更名,区别dts环境) /usr/bin 

   obatchqdt (更名,区别dts环境) /usr/bin

   osubmit /home/oracle2/dtlb/ora/batchjob

   编译完的pc程序放在   /home/oracle2/dtlb/ora/batchjob

   sourcecode放在   /home/oracle2/dtlb/source

 

启动Pro*C

dtserp环境:

1. startup database

2. startup listener

[oracle@dtserp oracle]$ lsnrctl start

3. 启动daemon root执行)

.bash_profile配置文件改为dtserp的环境(记得确认使之生效) [# vi .bash_profile  # source .bash_profile]

#cd /bpcs/cron/daemon

#nohup /bpcs/cron/daemon/daemon &

4. 执行批处理程序

#cd /bpcs/cron/batchjob

#./obatchq_job

dtlberp环境:

1startup database

2startup listener

[oracle2@dtserp oracle2]$ lsnrctl start dtlberp

3启动daemonroot执行)

.bash_profile配置文件改为dtserp的环境(记得确认使之生效)

   #cd /home/oracle2/dtlb/cron/daemon

#nohup  /home/oracle2/dtlb/cron/daemon/daemon &

4. 执行批处理程序

#cd /home/oracle2/dtlb/cron/batchjob

#./obatchq_job

查看进程:

     # ps -ef|grep da

        /home/oracle2/dtlb/cron/daemon/daemon
        /bpcs/cron/daemon/daemon

     # ps -ef|grep ba

/usr/bin/obatchqdt QBATCH
/usr/bin/obatchqdt RBATCH
/usr/bin/obatchqdt NBATCH
/usr/bin/obatchqdt FBATCH


/usr/bin/obatchq QBATCH
/usr/bin/obatchq RBATCH
/usr/bin/obatchq NBATCH
/usr/bin/obatchq FBATCH

 启动em:

      分别oracle、oracle2

      $emctl start dbconsole

关于dailyjob

     脚本放置在/SysAdmin/cron/

     Crontab排程如下(root用户)

00 21 * * * sh /SysAdmin/cron/fin_cron.file/finjob

00 22 * * * sh /SysAdmin/cron/fin_cron.file/inv920

00 23 * * * sh /SysAdmin/cron/fin_cron.file/btpjob

00 00 * * * sh /SysAdmin/cron/fin_cron.file/cshjob

00 01 * * * sh /SysAdmin/cron/fin_cron.file/autoissue

00 02 * * * sh /SysAdmin/cron/mm_cron.file/mmjob

crontab –e 编辑

crontab –l 查看

原文地址:https://www.cnblogs.com/amadeuslee/p/3744411.html