1.首先要知道什么是ORACLE的客户端:
Oracle Instant client 是oracle提供的简便客户端, 支持多种平台. 可从oracle网站下载, 下载地址为
http://www.oracle.com/technology/tech/oci/instantclient/index.html
|
这时你按个libaio的库就可以了。
2. [root@localhost sdk]# ./occidml
./occidml: error while loading shared libraries: /usr/lib/oracle/lib/libnnz11.so: cannot restore segment prot after reloc: Permission denied
这个问题可就麻烦了,一开始不懂,尝试先生成.o文件,再连接成可执行文件,可还是不行。
原来是SElinux的事:
[root@localhost sdk]# chcon -t texerl_shlib_t/usr/lib/oracle/lib/libnnz11.so
chcon: too few arguments
请尝试执行“chcon --help”来获取更多信息。
还是不行,不懂chcon是干嘛的,上网看最后知道
解决办法:
chcon /usr/lib/oracle/lib/libnnz11.so -t shlib_t
原因是Linux有一个SELinux保护模式引起的。
关闭SELINUX的方法:
vi /etc/selinux/config 将SELINUX=enforcing 改成SELINUX=disabled
保存,重起电脑即可.
FC5 中的SELinux 代表了用户,程序以及进程间相互交流的主要变化。
最后运行还是不行:error: ORA-12162: TNS:net service name is incorrectly specified
没辙了,我觉的是我没在本机上装数据库所以有OCCI提供的连数据库的函数createConnection是不行的,因为它是连接本地数据库的,连接远程数据库要用别的函数,这个还在查找中。
但现在解决了,就是在代码中用ezconnect方式连接:system/8823@172.16.100.101:1521/)OS101,这样就好了。