我有一个 32 位 Oracle DB(版本 9i - 9.2.0.7.0)和一个 64 位 Mac,我正在尝试使用 go-oci8 连接到它使用 Go Lang(版本 go1.11.1 darwin/amd64)。
我使用了 SQL-Developer 4.0.2成功连接到数据库,然后使用 this 通过它启用 InstantClient 连接教程。所以我已经从 Oracle 客户端运行了一些东西。
我正在为 MacOS(基本版和 SDK)使用 InstantClient 版本 11.2.0.4.0(32 位),我主要使用 this教程几乎成功。毕竟,我得到的错误是:
github.com/mattn/go-oci8 ld:警告:忽略文件/Users/myusername/Downloads/instantclient_11_2/libclntsh.dylib,文件是为 i386 构建的,它不是被链接的架构 (x86_64):/Users/myusername/Downloads/instantclient_11_2/libclntsh.dylib 体系结构 x86_64 的 undefined symbol :
然后是一长串符号。基本上,Go oci8 库尝试使用 C(64 位)并尝试构建 64 位文件,然后 Go 将使用这些文件。如果我尝试使用 64 位版本的 InstantClient,我没有遇到任何问题,但我收到“驱动程序:连接错误”错误,这是因为 64 位无法连接某些原因。
我不知道如何解决这个问题 - 我可以在使用 go get -u -v github.com/mattn/go-oci8 时以某种方式强制构建 32 位文件吗?或者以某种方式使 64 位 InstantClient 版本连接到旧的 32 位 Oracle 数据库?
如能提供有关如何运行此程序的任何帮助,我们将不胜感激。
编辑:我试过 10.2 Oracle 客户端,但我无法将它与 go-oci8 连接(我假设它不支持它)。我得到的错误是 ../github.com/mattn/go-oci8/oci8.go:113:25: could not determine kind of name for C.OCI_SYSAS
对遇到同样问题的人的最终编辑(进入一个非常古老的 Oracle 数据库)——您无法使用 Go 与现成的解决方案进行交互。列出的可与 Oracle 配合使用的库适用于客户端版本 11.2 及更高版本。
最佳答案
Oracle 客户端的架构必须与您的应用程序的架构相匹配。 IE。如果您的 Go Lang 是 64 位的,那么 Oracle 客户端也必须是 64 位的。数据库是 32 位还是 64 位并不重要。
我认为主要问题是,您无法使用 Oracle 11.2 客户端连接到(已有 20 年历史!)Oracle 9i 数据库。
检查 Client / Server Interoperability Support Matrix for Different Oracle Versions (Doc ID 207303.1)了解详情。
它说:
For connections between 10.2 (or higher) and 9.2 the 9.2 end MUST be at 9.2.0.4 or higher. Connections between 10.2 (or higher) and 9.2.0.1, 9.2.0.2 or 9.2.0.3 have never been supported.
您没有告诉我们您使用的是哪个版本的“Oracle 9i”。
关于oracle - Go lang 连接到 Oracle 9i(使用 go-oci8),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53158732/
plsql连接Oracle超时,完犊子了肯定是服务器断电了。得马上检查Oracle服务器状态1、检查数据库是否启动su-oracle切换到Oracle用户,输入sqlplus/assysdba显示连接状态。如果末尾显示的状态是Connectedtoanidleinstance.证明未启动2、启动数据库startup启动数据库,末尾出现Databaseopened说明数据库启动成功3、查看数据库监听是否正常先quit;断开Oracle连接,使用lsnrctlstatus查看监听状态,如果出现TNS-开头的Nolistener、Connectionrefused等错误,说明监听未启动4、启动数据库
我无法连接到OracleDB,阅读了很多资料但对结果没有帮助。我有远程OracleDB,我正在使用DBVisualizer设置连接连接到它,如下所示:DBType:OracleDriver(jdbc):OraclethinDatabaseURL:jdbc:oracle:thin:@10.10.100.10:1521/VVV.LOCALDOMAINUserIdf:SomeUserPass:SomePass连接正常。我在Ruby中所做的是:require'oci8'require'dbi'...conn=OCI8.new('SomeUser','SomePass','//10.10.100
我有以下代码执行oracleView,如下所示:defrun_queryconnection.exec_query("SELECT*FROMTABLE(FN_REQRESP(#{type_param},#{search_type_param},#{tid_param},#{last_param},#{key_param},#{tran_id_param},#{num_param},#{start_date_param},#{end_date_param}))")end上述查询的输出如下:SELECT*FROMTABLE(FN_REQRESP('ALL','ALL_TRAN','1000
C#连接oracle数据库常用的三种方法有三种: 一、Oracle.ManagedDataAccess.dll:Oracle官方提供的oracle数据库访问组件,不存在其他依赖dll库,推荐该方法最为重要的是:它不需要安装oracle客户端,也不区分x86位和x64位,直接就能用,连上其他电脑或者服务端oracle数据库。 二、Oracle.DataAccess.Client.dll:也叫ODP.net,是Oracle提供的数据库访问dll库。好处是:不需要安装客户端也能访问服务器上的oracle,不需要配置tnsNames.Ora文件,但是区分x86位和x64,也比较麻烦。 三、Sys
网络上有多个页面对此进行了讨论,但大多数都已过时或在某些方面不准确。独家新闻是什么? 最佳答案 构建ruby、gem和rails根据http://rubyonrails.org/download:buildrubybuildgemusegemtoinstallrails获取OracleInstantclient下载自https://www.oracle.com/technetwork/database/database-technologies/instant-client/downloads/index.html您的架构需要这
我正在尝试在OSX上安装ruby-oci8。我试过使用和不使用sudo进行安装。没有sudo的错误消息:geminstallruby-oci8ERROR:Whileexecutinggem...(Gem::FilePermissionError)Youdon'thavewritepermissionsintothe/Library/Ruby/Gems/1.8directory.sudo的错误消息:sudogeminstallruby-oci8Password:Buildingnativeextensions.Thiscouldtakeawhile...ERROR:Errorinst
我是node.js的新手,我已经进行了研究但没有成功,所以这是我的问题:可以将Node.js与Oracle9i数据库一起使用吗?如果是这样,我在哪里可以找到相关资料?提前致谢! 最佳答案 上面提到的npmjs现在列出:https://www.npmjs.org/search?q=db-oracle->https://github.com/mariano/node-db-oraclehttps://www.npmjs.org/search?q=oracle->https://github.com/nearinfinity/node-o
这个问题在这里已经有了答案:workwithjsoninoracle(6个答案)关闭6个月前。Oracle11g是否支持JSON?我指的是在PL/SQL查询中操作JSON对象之类的东西。我知道Oralcle12c支持这些东西,但11g似乎不支持。我主要关心的是是否可以在PL/SQL代码中处理从RESTfullAPI调用(使用UTL_HTTP包)返回的JSON对象。这就是我调用RESTfullAPI的方式:req:=UTL_HTTP.BEGIN_REQUEST('https://xxxx/api/job/all','GET','HTTP/1.1');UTL_HTTP.set_header
华为Od必看系列华为OD机试全流程解析+经验分享,题型分享,防作弊指南)华为od机试,独家整理已参加机试人员的实战技巧华为od2023|什么是华为od,od薪资待遇,od机试题清单华为OD机试真题大全,用Python解华为机试题|机试宝典文章目录华为Od必看系列使用说明本期题目:任务总执行时长题目输入输出示例一输入输出说明go代码实现华为OD其它语言版本
目录Golang获取HTTP请求的IP地址HTTP的发展历史3,HTTP所在的网络层次4,HTTP请求与响应