oracle存储过程ETL执行方法,shell执行oracle环境的sql语句

您所在的位置:网站首页 shell调用oracle存储过程抓取日志 oracle存储过程ETL执行方法,shell执行oracle环境的sql语句

oracle存储过程ETL执行方法,shell执行oracle环境的sql语句

2024-07-17 13:10| 来源: 网络整理| 查看: 265

本文将分享oracle存储过程ETL执行方法,shell执行oracle环境的sql语句方法。 1、oracle存储过程ETL执行方法:使用sqlldr命令需要使用oracle数据库的连接串,即用户名、密码、域名,control文件、数据文件、bad文件、log文件等信息,格式为:sqlldr $username/$password@$域名/password control=$ctl_file data=$data_file bad=$bad_file

#!/bin/sh #单个文件加载为例 username=vlog DB_TNS=oldev19cl-scan.odbs.test.com:1421/test1234 password=test1234 crl_file=/home/vlog/aaa.ctl data_file=/home/vlog/aaa.txt bad_file=/home/vlog/aaa.bad log_file=/home/vlog/aaa.log #导数命令 sqlldr $username/$password@${DB_TNS} control=$ctl_file data=$data_file bad=$bad_file log=$log_file readsize=200000000 bindsize=200000000

2、shell执行oracle环境的sql语句,需要注意的是,正常在linux系统中,oracle数据库资源池环境,执行sql脚本是需要借助sqlplus命令来完成的,具体如下:

#登陆数据库 sqlplus $username/$password@${DB_TNS} #执行sql语句 @/home/vlog/sss.sql exit

上述步骤只适合手动执行,执行完了还需要执行exit命令退出sqlplus命令。 使用如下方法可以在bash脚本中自动执行sql并自动退出sqlplus命令,继续执行后续的步骤。

#!/bin/bash echo exit | sqlplus $username/$password@${DB_TNS} @/home/vlog/sss.sql >a.log

在sqlplus命令前面添加echo exit 后,就可以在执行该行sql语句后自动退出,并将执行的日志输出到a.log文件中。



【本文地址】


今日新闻


推荐新闻


    CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3