Debian/Ubuntu何如安装Oracle客户端TNS及配置

1.确定服务器版本

首选确定你的Oracle服务器版本,以便下载相应的客户端。查看的sql如下:

select * from V$version ;

如果你无法远程连上Oracle,只能登陆服务器了。

2.下载Oracle客户端

根据Oracle的版本,到 http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html 下载相应的客户端,我们一般会下载客户端和sqlplus,使用sqlplus连接或测试是非常方便的。如我下载的客户端版本是Version 12.1.0.1.0

instantclient-basic-linux.x64-12.1.0.1.0.zip
instantclient-sqlplus-linux.x64-12.1.0.1.0.zip

PS:

Instant Client 可以在不安装完整的 Oracle 客户端的情况下,运行你的 OCI、OCCI、Pro*C、JDBC 和 ODBC 应用程序。另外,Instant Client 支持 SQL*Plus。从 Instant Client 10.2 开始,可以通过 Instant Client SDK 用 OCI 和 OCCI 开发应用程序。

3.把上面的两个zip文件都解压到你制定的目录,我的目录是

/usr/kevin/instantclient_12_1/lib/

4.设置环境变量

你可以在Terminal中设置,而我为了以后方便我在/etc/profile末尾中添加:

export ORACLE_HOME=/usr/kevin/instantclient_12_1/
export LD_LIBRARY_PATH=/usr/kevin/instantclient_12_1/lib/

如果想让profile立刻生效,可以在Terminal中执行:

source /etc/profile

但这会在当前terminal中有效,如果想每个终端都有效最好reboot。

5.现在你可以进入

/usr/kevin/instantclient_12_1/lib/

执行sqlplus了

./sqlplus

但为了方便最好还是把sqlplus配置到PATH环境变量中,或者你在/usr/local/bin下建一个sqlplus的软连接。

6.配置tnsnames.ora

tnsnames.ora位于ORACLE_HOME/network/admin/下,这需要手动创建,内容类似:

testdata =
(DESCRIPTION =
(FAILOVER=ON)
(LOAD_BALANCE=ON)
(ADDRESS_LIST=
(ADDRESS = (PROTOCOL = TCP)(HOST =10.9.27.11)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST =10.9.27.12)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = racdb)
)
)

7.配置完后就可以使用sqlplus测试你的配置是否OK。

PS配种过程中遇到的问题:

error while loading shared libraries: libsqlplus.so

在执行sqlplus时可能遇到

error while loading shared libraries: libsqlplus.so: cannot open shared object file: No such file or directory

解决:这是因为环境变量 LD_LIBRARY_PATH 没设置或设置不当,一般的共享库都安装到/lib或/usr/lib中,如果安装在别的地方需要设置LD_LIBRARY_PATH环境变量,其值可以是被":"分开的多个路径。

error while loading shared libraries: libaio.so.1

在执行sqlplus时可能遇到

rror while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory

解决:这是因为缺少libaio依赖库,因此需要安装:

sudo apt-get install libaio-dev

The HTTP proxy server specified by http_proxy is not accessible

在执行sqlplus时可能遇到

HTTP proxy setting has incorrect value
SP2-1502: The HTTP proxy server specified by http_proxy is not accessible

解决:这是http_proxy代理设置带来的,详细解释可以参考 http://web.stanford.edu/dept/itss/docs/oracle/10gR2/server.102/b14357/ch13.htm 

Cause: The HTTP proxy server used by SQL*Plus cannot be accessed. SQL*Plus will be unable to run scripts located on a web server.
Action: Check that the proxy setting has the correct value, or unset it if no proxy is needed. SQL*Plus may get the proxy name from the environment variable http_proxy, or the value may be set in another way on your system. Check that the given proxy server is operational. Most web browsers can be configured to use a proxy. Configure a browser to use the desired proxy and verify that web pages can still be loaded.

我的解决办法是取消代理,或者

unset no_proxy

时间: 2024-10-31 23:44:06

Debian/Ubuntu何如安装Oracle客户端TNS及配置的相关文章

不安装oracle客户端的情况下如何安装oracle odbc 驱动

最近做了一个项目,通过VC odbc访问oracle数据库,在我电脑上可以正常运行,在其他电脑上运行不了,原因是没有oracle odbc驱动,无法配置oracle数据源.网上的博文大都是安装oracle客户端来解决的.我想就是一个小程序,没必要安装客户端吧,参照网上博文并访问了oracle网址,于是有了这篇文章. 1.下载odbc驱动 需要下载两个东西 instantclient-basiclite-nt-12.1.0.1.0.zip instantclient-odbc-nt-12.1.0.

请教C#程序免安装Oracle客户端访问远程数据库的方法

问题描述 程序需要访问远程Oracle数据库,数据库版本是11g,请问可以不安装Oracle客户端访问数据库吗?百度了一下,有人说可以下载对应版本的Oracleinstantclient,然后把里面的DLL文件复制到执行文件目录下就可以了.但是我操作了一下,程序会报错:"Oracle.DataAccess.Client.OracleConnection"的类型初始值设定项引发异常请问具体应该怎么操作才可以在不安装Oracle客户端的情况下远程访问数据库?谢谢! 解决方案 解决方案二:1

客户端 clent-如何在solaris 10 中安装oracle 客户端

问题描述 如何在solaris 10 中安装oracle 客户端 请问下怎么在solaris 10 中安装oracle 客户端 啊,想连接oracle, sqlplus指令 目前not find 已经在官网上下载了 sqlplus-10.2.0.4.0-solaris-sparc64.zip 求详细过程,谢谢! 解决方案 Oracle 10g客户端 安装(配图)oracle 10g 客户端安装windows7安装ORACLE 10g客户端 解决方案二: 看了都说windows的 ,有没有sola

centos6-centOS6.4安装oracle客户端时,安装界面的汉字乱码

问题描述 centOS6.4安装oracle客户端时,安装界面的汉字乱码 如图所示,求高手指导一下! 解决方案 系统没有对应的中文字体吧 解决方案二: LANG="en_US.UTF-8" 之前是中文字体,现在是英文,就没有乱码了 解决方案三: LANG="en_US.UTF-8" 之前是中文字体,现在是英文,就没有乱码了

Linux下安装oracle客户端并配置php5.3_php技巧

因项目需要在linux下进行php5.3的oracle客户端编译,简要介绍一下步骤及走过的弯路. 1.下载Oracle客户端程序包,其中包含OCI.OCCI和JDBC-OCI等相关文件. 1.1下载文件地址 http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html 根据操作系统的版本选择对应的软件,我需要的是X86_64选择 Instant Client for Linux x86-6

不安装Oracle客户端,C#可以连接Oracle吗

问题描述 不安装Oracle客户端,C#可以连接Oracle吗 解决方案 解决方案二:可以的,搜一搜:ODAC(注意不是ODBC)类似的第三方dll还有一些,不过我只用过这个.解决方案三:下载InstantClient,把必须的几个dll文件复制到可执行文件目录下就行了解决方案四:而且据说使用微软提供的Oracle.Clint类库本来就不需要安装Oracle客户端(sp1234说的),需要安装客户端那是因为引用了Oracle官方提供的Oracle.Clint.dll解决方案五:引用3楼Z6544

suse-SUSE安装oracle,orarun如何配置内核

问题描述 SUSE安装oracle,orarun如何配置内核 一般Linux下内核参数文件是 /etc/sysctl.conf 文件,不过观察SUSE的这个文件只有几条关于IP设置的条目,像共享内存大小 shmmax这种配置是从哪里获取数值完成配置的. 在用SUSE装ORacle的时候遇到这个问题,因为SUSE自带的OraRun据说是来配置内核的,出现"out of memory"的错误但观察SUSE的共享内存太小,如果是OraRun配置的,怎么修改这个值,相关配置文件在哪. 多谢回答

用Instant client批量安装Oracle客户端

做了一个C#和Oracle 的系统,想到每个客户端还要装Oracle客户端确实很麻烦,于是上网搜索,是否有不装客户端的方法,还真不错,Oracle也早就想到了这个问题.在他的网站上已经提供了各种版本的简化客户端,只有几十兆的大小,简单配置就可以连接了.下面我就说说我实现的过程. 首先构建如下的目录结构 去Oracle的网站下载instantclient-basic-win32-10.2.0.3-20061115.zip,具体的版本可以根据你采用的服务器端选择.解压以后有 一下文件 把这些文件放到

debian系统下安装oracle jdk的4个步骤

debian源里默认的java是openjdk,当前版本是7.如果需要安装oracle官方的jdk8,可以使用java-package打包官方jdk的方式来安装: 1.安装java-package # apt-get install java-package 2.下载oracle jdk 8 下载linux x64的tar.gz包,当前下载回来的文件为:jdk-8u25-linux-x64.tar.gz 3.打包 进入jdk下载目录,执行: $ make-jpkg jdk-8u25-linux-