gpt4 book ai didi

macos - Mac 上的 Oracle Sqlplus 客户端

转载 作者:行者123 更新时间:2023-12-04 00:05:09 27 4
gpt4 key购买 nike

我想在我的 64 位 Mac 上安装 SqlPlus 客户端。
首先,我为 64 位安装了 sqlplus,但出现错误:
“段错误:11”
然后我安装了 32 位的 sqlplus,但仍然有一个问题,它说:
../libsqlplus.dylib:找不到合适的图像 ../libsqlplus.dylib:mach-o,但架构错误

我用了很多教程,但仍然没有解决这个问题。

最佳答案

11gR2 64 位即时客户端适用于 10.8.5。如果您连接的数据库仍然是 10g 没有关系,您可以使用 11g 客户端。我不知道有什么理由仍然使用旧版本,除非您可能需要特定的 ojdbc版本;但大概有用例,否则它仍然不会在显着位置列出以供下载。无论如何,这演示了全新安装:

$ unzip instantclient-basic-macos.x64-11.2.0.3.0.zip
Archive: instantclient-basic-macos.x64-11.2.0.3.0.zip
inflating: instantclient_11_2/BASIC_README
inflating: instantclient_11_2/adrci
inflating: instantclient_11_2/genezi
inflating: instantclient_11_2/libclntsh.dylib.11.1
inflating: instantclient_11_2/libnnz11.dylib
inflating: instantclient_11_2/libocci.dylib.11.1
inflating: instantclient_11_2/libociei.dylib
inflating: instantclient_11_2/libocijdbc11.dylib
inflating: instantclient_11_2/ojdbc5.jar
inflating: instantclient_11_2/ojdbc6.jar
inflating: instantclient_11_2/uidrvci
inflating: instantclient_11_2/xstreams.jar

$ unzip instantclient-sqlplus-macos.x64-11.2.0.3.0.zip
Archive: instantclient-sqlplus-macos.x64-11.2.0.3.0.zip
inflating: instantclient_11_2/SQLPLUS_README
inflating: instantclient_11_2/glogin.sql
inflating: instantclient_11_2/libsqlplus.dylib
inflating: instantclient_11_2/libsqlplusic.dylib
inflating: instantclient_11_2/sqlplus

$ export DYLD_LIBRARY_PATH=$PWD/instantclient_11_2
$ $PWD/instantclient_11_2/sqlplus

SQL*Plus: Release 11.2.0.3.0 Production on Thu Oct 3 09:49:06 2013

Copyright (c) 1982, 2012, Oracle. All rights reserved.

Enter user-name:

您可以创建一个 tnsnames.ora任何地方;我把它放在同一个 instant client_11_2目录:
$ export TNS_ADMIN=$PWD/instantclient_11_2
$ echo "TEST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = <db_server>)(PORT = <listener port>))
)
(CONNECT_DATA =
(SERVICE_NAME = <full_db_service_name>)
)
)
" > $TNS_ADMIN/tnsnames.ora

$ $PWD/instantclient_11_2/sqlplus user/password@test

SQL*Plus: Release 11.2.0.3.0 Production on Thu Oct 3 09:55:14 2013

Copyright (c) 1982, 2012, Oracle. All rights reserved.


Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,
Data Mining and Real Application Testing options

SQL>

32 位版本也可以正常工作:
$ rm -rf $PWD/instantclient_11_2
$ unzip instantclient-basic-macos.x32-11.2.0.3.0.zip
$ unzip instantclient-sqlplus-macos.x32-11.2.0.3.0.zip
$ export DYLD_LIBRARY_PATH=$PWD/instantclient_11_2
$ export TNS_ADMIN=$PWD/instantclient_11_2
$ echo "TEST = ..." > TNS_ADMIN/tnsnames.ora
$ $PWD/instantclient_11_2/sqlplus user/password@test

SQL*Plus: Release 11.2.0.3.0 Production on Thu Oct 3 10:06:19 2013

Copyright (c) 1982, 2012, Oracle. All rights reserved.


Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,
Data Mining and Real Application Testing options

SQL>

您当然可以移动或重命名 instanstclient_11_2目录到您想要的任何内容,只需确保您的 DYLD_LIBRARY_PATH , TNS_ADMIN和(让生活更轻松) PATH环境变量跟随它。如果您安装了多个版本,请确保变量一次只指向一个版本,以便您选择正确的库等(如果您确实有多个版本,将 TNS_ADMIN 放在中央位置更有意义,因为您只需要需要维护一份 tnsnames.ora )。

我需要检查一下,但我认为如果您从 Java 连接,您可能仍需要使用 32 位版本;它必须批处理 Java 本身的架构,所以我想这取决于您安装的那个版本。

关于macos - Mac 上的 Oracle Sqlplus 客户端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19152403/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com