首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何调用Oracle的olog()?

如何调用Oracle的olog()?
EN

Stack Overflow用户
提问于 2018-02-27 00:06:13
回答 2查看 576关注 0票数 0

我有一个简单的实用程序,它使用连接到Oracle数据库的“旧”olog()方法。如here所述,我使用它。

这在Oracle 8中非常好,但是当与客户端版本11和12一起使用时会崩溃( SIGSEGV)。服务器运行11c,在所有情况下都是相同的。

这起坠机事件在甲骨文的libclntsh内部很深。

代码是基于client-8附带的演示编写的,但是客户机12中包含的唯一演示程序根本不使用olog() --显然,OCIEnvCreate()和朋友是“未来的浪潮”。

我不想重写我的实用程序--有什么简单的方法可以通过在初始化中添加一两个步骤来继续使用olog()吗?

更新:我在调用opinit(OCI_EV_DEF);之前添加了一个调用olog(),而不是崩溃,程序现在挂在后者中.

更新2:挂起是由于OCI试图操作(并锁定!)~/oradiag_foo下的东西,这恰好是NFS的份额。在配置它之后,通过~/.sqlnet.ora使用/tmp/代替,很快就会崩溃。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-04-03 18:33:03

好的,原来我碰到的内存损坏是在我的代码中的其他地方(谢谢,val差尔!)

我很高兴地报告,旧的方法仍然很好,不需要重写。我在问题中引用的example仍然有效。

票数 0
EN

Stack Overflow用户

发布于 2018-02-27 02:01:13

我只能鼓励您使用OCI8 API重写(该API是在1998年左右引入的)。OCI8上有新的包装器,可以使简单的任务变得更容易。见甲骨文的https://oracle.github.io/odpi/和文森特·罗吉尔的https://github.com/vrogier/ocilib

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48999084

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档