热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

[紧急求助]关于在64位Linux(Redhat)上使用OCCI的问题

[紧急求助]关于在64位Linux(Redhat)上使用OCCI的问题--Linux通用技术-Linux编程与内核信息,下面是详情阅读。
各位大神,你们好!
小弟遇到了如题所示的问题,之前自己使用的Redhat是5.5 32位版本的,装的ORACLE自然也是32位,因此从未考虑32位和64位的问题。
项目中需要使用OCCI远程访问数据库,编写的程序以及接口在自己的电脑上运行均没有问题,放到测试服务器(64位Linux,64位ORACLE)上无法使用。
小弟也做过以下的测试,直接在测试服务器上编写一个小程序,就一个main函数,直接调用occi接口,以下是occi访问数据库的流程以及我的一段代码:
OCCI流程:
createEnvironment; //创建环境变量
createConnection; //通过传入用户名,密码,连接字符串来建立连接
createStatement; //建立statement对象
executeSQL; //执行相应的SQL语句
terminateStatement;
terminateConnection;
terminateEnvironment;

我在main函数中,一部分的代码:
Environment* pEnv = NULL;
bool bHasException = false;
try
{
pEnv = Environment::createEnvironment();
}
catch(...)
{
bHasException = true;
pEnv = NULL;
}
if(NULL == pEnv)
{
if (bHasException)
printf("Create Environment Exception!\n");
else
printf("Ceate Environment Failed!\n");

return -1;
}
printf("Create Environment Successed!\n");
....

由于测试机上是64位Linux, 安装的ORACLE也是64位的,因此在编译的时候我已经指定调用的OCCI库为ORACLE路径下的libocci.so,该库自然也是64位版本的,并且编译时还提示libstdc++.so.5的一个问题,也在编译时指定使用/usr/lib64/libstdc++.so.5,因此编译正常通过了,但是!!!问题在于执行以上的测试程序时,输出直接是“段错误”,无法catch到异常。

接着,小弟将自己32位机器上的libocci.so以及其他的一些依赖库拷贝到测试机上,并且在编译的时候指定使用拷贝过来的这32位occi库,指定/usr/lib/libstdc++.so.5,指定-m32参数,编译正常,执行的时候反而可以得到提示"Create Environment Exceptopn!",这里不明白为何同样的代码,一个可以catch到异常,一个不可以。但是更为关键的是不明白为何无法创建环境变量?

我在网上搜索一些OCCI的安装以及使用,也有网友是在64位Linux系统上安装OCCI并且编写程序访问数据库,但是他们似乎都没有遇到我这样的问题。因此来这里请教各位大神,该项目时间较紧,没想到都到现在了还在纠结环境的问题,如果有哪路好汉遇到过这样的问题或者能帮忙的,感激不尽!!!!

拜谢!!!
推荐阅读
  • MySQL缓存机制深度解析
    本文详细探讨了MySQL的缓存机制,包括主从复制、读写分离以及缓存同步策略等内容。通过理解这些概念和技术,读者可以更好地优化数据库性能。 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • MySQL 数据库迁移指南:从本地到远程及磁盘间迁移
    本文详细介绍了如何在不同场景下进行 MySQL 数据库的迁移,包括从一个硬盘迁移到另一个硬盘、从一台计算机迁移到另一台计算机,以及解决迁移过程中可能遇到的问题。 ... [详细]
  • 本文详细介绍了IBM DB2数据库在大型应用系统中的应用,强调其卓越的可扩展性和多环境支持能力。文章深入分析了DB2在数据利用性、完整性、安全性和恢复性方面的优势,并提供了优化建议以提升其在不同规模应用程序中的表现。 ... [详细]
  • Windows服务与数据库交互问题解析
    本文探讨了在Windows 10(64位)环境下开发的Windows服务,旨在定期向本地MS SQL Server (v.11)插入记录。尽管服务已成功安装并运行,但记录并未正确插入。我们将详细分析可能的原因及解决方案。 ... [详细]
  • 本文详细介绍如何使用Python进行配置文件的读写操作,涵盖常见的配置文件格式(如INI、JSON、TOML和YAML),并提供具体的代码示例。 ... [详细]
  • 本周信息安全小组主要进行了CTF竞赛相关技能的学习,包括HTML和CSS的基础知识、逆向工程的初步探索以及整数溢出漏洞的学习。此外,还掌握了Linux命令行操作及互联网工作原理的基本概念。 ... [详细]
  • PHP 5.2.5 安装与配置指南
    本文详细介绍了 PHP 5.2.5 的安装和配置步骤,帮助开发者解决常见的环境配置问题,特别是上传图片时遇到的错误。通过本教程,您可以顺利搭建并优化 PHP 运行环境。 ... [详细]
  • 本文详细介绍了Java编程语言中的核心概念和常见面试问题,包括集合类、数据结构、线程处理、Java虚拟机(JVM)、HTTP协议以及Git操作等方面的内容。通过深入分析每个主题,帮助读者更好地理解Java的关键特性和最佳实践。 ... [详细]
  • 本文详细介绍了如何在 Linux 平台上安装和配置 PostgreSQL 数据库。通过访问官方资源并遵循特定的操作步骤,用户可以在不同发行版(如 Ubuntu 和 Red Hat)上顺利完成 PostgreSQL 的安装。 ... [详细]
  • 掌握远程执行Linux脚本和命令的技巧
    本文将详细介绍如何利用Python的Paramiko库实现远程执行Linux脚本和命令,帮助读者快速掌握这一实用技能。通过具体的示例和详尽的解释,让初学者也能轻松上手。 ... [详细]
  • 本文详细分析了Hive在启动过程中遇到的权限拒绝错误,并提供了多种解决方案,包括调整文件权限、用户组设置以及环境变量配置等。 ... [详细]
  • 使用Vultr云服务器和Namesilo域名搭建个人网站
    本文详细介绍了如何通过Vultr云服务器和Namesilo域名搭建一个功能齐全的个人网站,包括购买、配置服务器以及绑定域名的具体步骤。文章还提供了详细的命令行操作指南,帮助读者顺利完成建站过程。 ... [详细]
  • 在现代网络环境中,两台计算机之间的文件传输需求日益增长。传统的FTP和SSH方式虽然有效,但其配置复杂、步骤繁琐,难以满足快速且安全的传输需求。本文将介绍一种基于Go语言开发的新一代文件传输工具——Croc,它不仅简化了操作流程,还提供了强大的加密和跨平台支持。 ... [详细]
  • Hadoop入门与核心组件详解
    本文详细介绍了Hadoop的基础知识及其核心组件,包括HDFS、MapReduce和YARN。通过本文,读者可以全面了解Hadoop的生态系统及应用场景。 ... [详细]
author-avatar
球球小白痴_693
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有