Oracle 10g及pro*c相关问题及解决方法
2008年08月21日 星期四 上午 11:21
最近一直在进行ORACLE 10g和PRO*C的学习。
其中遇到了不少的问题:
现列于此,已备他用。
[注:我的linux版本是RHEL 5,Oracle版本是10g]
1、在ORACLE 10g 安装准备的过程中:缺少libXp.so.6依赖
上网搜过不少文章,但是都不是很好的解决
我自己摸索出一个解决方法:
在RHEL5的安装盘中找到libXp-1.0.0-8.i386.rpm,进行安装后,便可解决。
2、在ORACLE 10g 安装过程中Xlib: connection to ":0.0" refused by server
Xlib: connection to ":0.0" refused by server
Xlib: No protocol specified
Error: Can't open display: :0.0
以root用户登陆,在shell中运行
[root@brady ~]# xhost local:oracle
non-network local connections being added to access control list
然后oracle身份就可以运行X程序了。
man xhost中有这样一段
A complete name has the syntax ‘‘family:name’’ where the families are as follows:
inet Internet host (IPv4)
inet6 Internet host (IPv6)
dnet DECnet host
nis Secure RPC network name
krb Kerberos V5 principal
local contains only one name, the empty string
si Server Interpreted
其中local那个是用来解决同一台机器的不同用户访问X的问题的。
3.proc: error while loading shared libraries: libclntsh.so.10.1:
cannot open shared object file: No such file or directory
解决方法:
在/etc/profile中添加
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib:/usr/local/lib;
export LD_LIBRARY_PATH
然后可以用source /etc/profile 生效一下
4、PCC-S-02201错误
在用proc进行编译的时候(proc iname=test.pc) 出错
错误信息有很多:
PCC-S-02201, Encountered the symbol "<eof>;" when expecting one of the following....
发生 PCC-S-02201 错误时有两种解决办法:
1)升级编译器
2)设置 parse=none
更正后的命令:proc iname=test.pc parse=none
结果生成test.c文件
5、error: sqlca.h: No such file or directory
执行gcc -o test test.c时:
test.c:152:19: error: sqlca.h: No such file or directory
sqlca.h在$ORACLE_HOME/precomp/public/下
更正后的命令:gcc -o test test.c -I $ORACLE_HOME/precomp/public
6、undefined reference to `sqlcxt'
执行5中的命令时出现错误如下:
test.c:(.text+0x5e5): undefined reference to `sqlcxt'
需要用到$ORACLE_HOME/lib/libclntsh.so
故需加上 -L $ORACLE_HOME/lib -l clntsh
更正后的命令为:
gcc -o test test.c -I /home/oracle/oracle/product/10.2.0/db_1/precomp/public -L $ORACLE_HOME/lib -l clntsh
OK!至此编译成功!
但是这样写太麻烦
7、error while loading shared libraries: $ORACLE_HOME/lib/libnnz10.so:
cannot restore segment prot after reloc: Permission denied
执行程序(./test)时提示错误:
error while loading shared libraries: $ORACLE_HOME/lib/libnnz10.so:
cannot restore segment prot after reloc: Permission denied
相关的文章:
Topic:
Some Linux distributions with SELinux enabled may prevent IDL from running under the default security context. This TechTip is a workaround for CR#41937
Discussion:
Newer Linux distributions have enabled new kernel security extensions from the SELinux project at the NSA. These extensions allow finer-grained control over system security. However, SELinux also changes some default system behaviors, such as shared library loading, that can be problematic to third party programs.If you receive the error message "cannot restore segment prot after reloc: Permission denied" when launching IDL, then your SELinux configuration is preventing IDL from launching.
To rectify this issue, you can either:
(1)Change the default security context for IDL by issuing the command:
chcon -t texrel_shlib_t /usr/local/rsi/idl_6.1/bin/bin.linux.x86/*.so
(2)Disabling SELinux altogether by setting the line
SELINUX=disabled
in your /etc/sysconfig/selinux file.
我使用的解决办法:chcon -t texrel_shlib_t $ORACLE_HOME/lib/*.so
racle 10g及pro*c相关问题及解决方法2010-10-29 10:01阅读(195)
1、在ORACLE 10g 安装准备的过程中:缺少libXp.so.6依赖
上网搜过不少文章,但是都不是很好的解决
我自己摸索出一个解决方法:
在RHEL5的安装盘中找到libXp-1.0.0-8.i386.rpm,进行安装后,便可解决。
2、在ORACLE 10g 安装过程中Xlib: connection to ":0.0" refused by server
Xlib: connection to ":0.0" refused by server
Xlib: No protocol specified
Error: Can't open display: :0.0
以root用户登陆,在shell中运行
[root@brady ~]# xhost local:oracle
non-network local connections being added to access control list
然后oracle身份就可以运行X程序了。
man xhost中有这样一段
A complete name has the syntax ‘‘family:name’’ where the families are as follows:
inet Internet host (IPv4)
inet6 Internet host (IPv6)
dnet DECnet host
nis Secure RPC network name
krb Kerberos V5 principal
local contains only one name, the empty string
si Server Interpreted
其中local那个是用来解决同一台机器的不同用户访问X的问题的。
3.proc: error while loading shared libraries: libclntsh.so.10.1:
cannot open shared object file: No such file or directory
解决方法:
在/etc/profile中添加
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib:/usr/local/lib;
export LD_LIBRARY_PATH
然后可以用source /etc/profile 生效一下
4、PCC-S-02201错误
在用proc进行编译的时候(proc iname=test.pc) 出错
错误信息有很多:
PCC-S-02201, Encountered the symbol "<eof>;" when expecting one of the following....
发生 PCC-S-02201 错误时有两种解决办法:
1)升级编译器
2)设置 parse=none
更正后的命令:proc iname=test.pc parse=none
结果生成test.c文件
5、error: sqlca.h: No such file or directory
执行gcc -o test test.c时:
test.c:152:19: error: sqlca.h: No such file or directory
sqlca.h在$ORACLE_HOME/precomp/public/下
更正后的命令:gcc -o test test.c -I $ORACLE_HOME/precomp/public
6、undefined reference to `sqlcxt'
执行5中的命令时出现错误如下:
test.c:(.text+0x5e5): undefined reference to `sqlcxt'
需要用到$ORACLE_HOME/lib/libclntsh.so
故需加上 -L $ORACLE_HOME/lib -l clntsh
更正后的命令为:
gcc -o test test.c -I /home/oracle/oracle/product/10.2.0/db_1/precomp/public -L $ORACLE_HOME/lib -l clntsh
OK!至此编译成功!
但是这样写太麻烦
7、error while loading shared libraries: $ORACLE_HOME/lib/libnnz10.so:
cannot restore segment prot after reloc: Permission denied
执行程序(./test)时提示错误:
error while loading shared libraries: $ORACLE_HOME/lib/libnnz10.so:
cannot restore segment prot after reloc: Permission denied
相关的文章:
Topic:
Some Linux distributions with SELinux enabled may prevent IDL from running under the default security context. This TechTip is a workaround for CR#41937
Discussion:
Newer Linux distributions have enabled new kernel security extensions from the SELinux project at the NSA. These extensions allow finer-grained control over system security. However, SELinux also changes some default system behaviors, such as shared library loading, that can be problematic to third party programs.If you receive the error message "cannot restore segment prot after reloc: Permission denied" when launching IDL, then your SELinux configuration is preventing IDL from launching.
To rectify this issue, you can either:
(1)Change the default security context for IDL by issuing the command:
chcon -t texrel_shlib_t /usr/local/rsi/idl_6.1/bin/bin.linux.x86/*.so
(2)Disabling SELinux altogether by setting the line
SELINUX=disabled
in your /etc/sysconfig/selinux file.
我使用的解决办法:chcon -t texrel_shlib_t $ORACLE_HOME/lib/*.so
8.sqlplus: error while loading shared libraries: /u01/app/oracle/product/11.1.0/db_1/lib/libnnz11.so: cannot restore segment prot after reloc: Permission denied
出現這句error的原因是因為Linux選擇"Enforcing" mode
只要將"Enforcing" mode 轉為 "Permissive" mode
1.首先,要run as root
2.Type "getenforce" ,hit [Enter]
======================
getenforce (returns “Enforcing”)
3.Type "setenforce 0"
======================
getenforce (returns “Permissive”)
如果想將 "Permissive" mode 轉為 "Enforcing" mode
可以打setenforce 1
======================
getenforce (returns “Enforcing”)
原文地址:http://blog.csdn.net/cinience/article/details/6208315
[转]Oracle 10g及pro*c相关问题及解决方法(转)的更多相关文章
-
关于oracle监听程序的相关问题及解决方法
1.查看监听程序是否启动 打开cmd窗口,cmd用管理员运行,否则无法执行启动与停止监听命令 lsnrctl status查看运行状态 lsnrctl stop停止监听 lsnrctl start启动 ...
-
[转载]oracle 11g不能导出空表的多种解决方法
原文地址:11g不能导出空表的多种解决方法">oracle 11g不能导出空表的多种解决方法作者:Anlin_Yang ORACLE 11g 用exp命令导出库文件备份时,发现只能导出 ...
-
db2相关问题及解决方法
DB2相关问题及解决方法: 一.DB2中的代码页(codepage)问题. DB2备份时发生过代码页错误的问题,修改代码页后备份正常,但创建数据库时又发生代码页的错误.这是DB2服务器使用的代码页配置 ...
-
Oracle用户密码过期和用户被锁解决方法【转】
[原因/触发因素] 确定是由于Oracle11g中默认在default概要文件中设置了“PASSWORD_LIFE_TIME=180天”所导致. [影响和风险] 影响 密码过期后,业务进程连接数据库异 ...
-
Oracle 11gR2 用exp无法导出空表解决方法
Oracle 11gR2 用exp无法导出空表解决方法 在11gR2中有个新特性,当表无数据时,不分配segment以节省空间.Oracle 当然在运行export导出时,空表则无法导出,可是还是有解 ...
-
android6.0SDK 删除HttpClient的相关类的解决方法
本文转载自博客:http://blog.csdn.net/yangqingqo/article/details/48214865 android6.0SDK中删除HttpClient的相关类的解决方法 ...
-
oracle select in超过1000条报错解决方法
本博客介绍oracle select in超过1000条数据的解决方法,java框架是采用mybatis的,这可以说是一种比较常见的错误:select * from A where id in(... ...
-
[转]Navicat for oracle 提示 cannot load oci dll,193的解决方法 orcale 11g
Navicat for oracle 提示 cannot load oci dll,193的解决方法 内网有一台windows server 2012,安装了Navicat 11.1.8 连接or ...
-
Orabbix无法获取Oracle DB Size和DB Files Size的解决方法
Orabbix无法获取Oracle DB Size和DB Files Size的解决方法 这几天在研究Orabbix时发现在Zabbix中无法获取DB Size和DB Files Size的大小,后来 ...
随机推荐
-
Git 初始化版本库
创建带工作区的版本库 在开始一个新项目时,首先就要创建并初始化代码库.如果是在本机的工作目录中,那么: $ git init 也就够用了.如果想要初始化的版本库不在当前目录,需要为 git init ...
-
java 中MAP的按照进入顺序遍历与无序遍历
public static void main(String[] args) { Map<String,String> map=new HashMap<String,String&g ...
-
as3 代码加解密
private var loader:URLLoader; ... private function init():void { loader = new URLLoader; req=URLRequ ...
-
随机函数的代码(srand、rand)
#include<stdio.h> int main() int counter; for(counter=0;counter<10;counter++) { srand(count ...
-
indexPathForCell returns nil since ios7
-(UITableViewCell*)GetCellFromTableView:(UITableView*)tableView Sender:(id)sender { CGPoint pos = [s ...
-
jmeter随笔(7)--查看请求响应,为空
问题:查看请求响应,为空 解决办法: 1.在jmeter3.0版本上找到请求,在[Advanced]下勾选"从HTML文件获取所有内含的资源" 2.运行查看,结果如下
-
Java基础知识强化98:Apache和Tomcat服务器的联系与区别
1. Apache 和 Tomcat 都是web网络服务器,两者既有联系又有区别,在进行HTML.PHP.JSP.Perl等开发过程中,需要准确掌握其各自特点,选择最佳的服务器配置. Apache是w ...
-
Nginx学习之六-nginx核心进程模型
一.Nginx整体架构 正常执行中的nginx会有多个进程,最基本的有master process(监控进程,也叫做主进程)和woker process(工作进程),还可能有cache相关进程. 一个 ...
-
关于ios下录音
http://blog.csdn.net/silencetq/article/details/8447400 我是采用的AVAudioRecorder这个框架来进行录音 这个录音跟官方网站上的spea ...
-
D3.js:饼状图的制作
假设有如下数据需要可视化: var dataset = [ 30 , 10 , 43 , 55 , 13 ]; 这样的值是不能直接绘图的.例如绘制饼状图的一个部分,需要知道一段弧的起始角度和终止角度, ...