oracle执行sql文件报错,在oracle主机执行sqlplus失败

在oracle主机执行sqlplus报错:

Error 6 initializing SQL*Plus

Message file sp1.msb not found

SP2-0750: You may need to set ORACLE_HOME to your Oracle software directory

原因分析:

1. 看报错,大部分人肯定以为是ORACLE_HOME的环境变量没有设置,不过一般情况是不会出这种低级的错误的。

2. 还有一个重要的原因:在系统执行sqlplus命令的时候,会访问一些文件。 具体访问哪些文件,可找个正常的oracle主机测一下: 下面是我从hpux11.31+oracle10204上做的测试,在sqlplus的时候,会访问如下文件:

--- 一旦用户不能访问下面的文件的时候,就有上文的报错了。

--- 这样我们可以得出:如果对下面的文件没有读权限或者是没有找到下面的文件都报上述错误

--- 一般情况非oracle用户,非DBA组的用户,访问sqlplus经常会有权限不足的问题

/oracle

/oracle/product/10g/bin/sqlplus

/oracle/product/10g/oracore/zoneinfo/timezlrg.dat

/usr/lib/hpux64/libxti.so.1

/usr/lib/hpux64/libc.so.1

/usr/lib/hpux64/libnsl.so.1

/usr/lib/hpux64/libpthread.so.1

/oracle/product/10g/lib/libnnz10.so

/usr/lib/hpux64/libuca.so.1

/oracle/product/10g/lib/libclntsh.so.10.1

/usr/lib/hpux64/libunwind.so.1

/usr/lib/hpux64/libm.so.1

/usr/lib/hpux64/libdl.so.1

/oracle/product/10g/lib/libsqlplus.so

/usr/lib/hpux64/libnss_dns.so.1

/usr/lib/hpux64/librt.so.1

/usr/lib/hpux64/dld.so

/usr/lib/hpux64/uld.so

/dev/pts/0->ldterm->ptem->pts

/dev/pts/0->ldterm->ptem->pts

/dev/pts/0->ldterm->ptem->pts

/oracle/product/10g/sqlplus/mesg/sp1zhs.msb

/oracle/product/10g/sqlplus/mesg/sp1us.msb

/oracle/product/10g/sqlplus/mesg/sp2zhs.msb

/oracle/product/10g/sqlplus/mesg/sp2us.msb

/oracle/product/10g/sqlplus/mesg/cpyzhs.msb

/oracle/product/10g/sqlplus/mesg/cpyus.msb

/oracle/product/10g/rdbms/mesg/ocizhs.msb

/oracle/product/10g/rdbms/mesg/ocius.msb

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值