首页 > 解决方案 > Sqlplus 未使用 bash 脚本从数据库中获取结果

问题描述

我有一个文件,其中包含联系方式和圈子 ID,以空格分隔。我想根据与文件中的数字相关联的圈子 ID 来查询数据库。Circle wise 表名不同,因此我使用 case 语句来匹配适当的 circle ID,然后查询该表中的编号。

但是,我没有得到任何输出。登录详细信息保存在文件 db.profile 中,我已在脚本中找到它。表名取决于圈子和日期,例如,i_admin.cdr_c09_Jul_2020,用于圈子 4 和 7 月。

Sqlplus 日志显示,诊断框架的客户端初始化失败,用户缺少读取、写入和执行权限。但是,当我使用 sql developer 应用程序运行相同的查询时,它运行良好并提供输出。

##############输入文件示例内容##############

xx690xx049 8
8xxx235xxx 4
xx4966xxx1 4

##################代码###############
!/bin/bash
. $HOME/.bash_profile
。/data/profiles/db.profile

日期1= date +%b_%Y;

home_path="/data/profiles/temp"

如果 [ "$#" -ne 1 ]; 然后 >&2 echo "非法数量的参数" exit 1 fi

如果 [ !-f "${1}" ]; 然后 >&2 回显“找不到文件 ${1}”退出 1 fi

FILE="${1}" cd ${home_path}

而读线;做用户=echo ${line} | cut -d " " -f 1 圈=echo ${line} | cut -d " " -f 2

case ${circle} in
    9)
        
        DBConf=$O_Z5
        sqlplus -s ${DBConf}<< EOF >> /${home_path}/LOGS/C${circle}.log
        set serveroutput on;
        select /*+parallel(a,6)*/ * from i_admin.cdr_c09_${date1} a where msisdn="\'$USER\'"  and circle_id=${circle};
        
        exit;

EOF;;

    4)
        
        DBConf=$O_Z5
        sqlplus -s ${DBConf}<< EOF >> /${home_path}/LOGS/C${circle}.log
        set serveroutput on;
        select /*+parallel(a,6)*/ * from i_admin.cdr_c04_${date1} a where msisdn="\'$USER\'"  and circle_id=${circle};
        exit;

EOF;; esac 完成<${文件}

#############sqlnet 日志文件##########

NL-08014:无法初始化诊断框架,回退到旧的网络跟踪/日志记录

NL-08015:诊断框架的客户端(OCI)端初始化失败 ORA-48165:用户缺少对指定 ADR 基本目录的读取、写入或执行权限 [] 用户输入的基本目录无效 [48187] [/u01/app/oracle ]

NL-08014:无法初始化诊断框架,回退到旧的网络跟踪/日志记录

NL-08015:诊断框架的客户端(OCI)端初始化失败 ORA-48165:用户缺少对指定 ADR 基本目录的读取、写入或执行权限 [] 用户输入的基本目录无效 [48187] [/u01/app/oracle ]

NL-08014:无法初始化诊断框架,回退到旧的网络跟踪/日志记录

NL-08015:诊断框架的客户端(OCI)端初始化失败 ORA-48165:用户缺少对指定 ADR 基本目录的读取、写入或执行权限 [] 用户输入的基本目录无效 [48187] [/u01/app/oracle ]

NL-08014:无法初始化诊断框架,回退到旧的网络跟踪/日志记录

NL-08015:诊断框架的客户端(OCI)端初始化失败 ORA-48165:用户缺少对指定 ADR 基本目录的读取、写入或执行权限 [] 用户输入的基本目录无效 [48187] [/u01/app/oracle ]

NL-08014:无法初始化诊断框架,回退到旧的网络跟踪/日志记录

标签: linuxbashoracleunixsqlplus

解决方案


推荐阅读