Centos7 + 麒麟v10安装oracle瘦客户端

环境:

OS:Centos 7

客户端:11.2.0.4

 

 

1.下载客户端的包
[root@localhost 11g_client]# ls -1
oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpm
oracle-instantclient11.2-devel-11.2.0.4.0-1.x86_64.rpm
oracle-instantclient11.2-sqlplus-11.2.0.4.0-1.x86_64.rpm
oracle-instantclient11.2-tools-11.2.0.4.0-1.x86_64.rpm
oracle-instantclient11.2-jdbc-11.2.0.4.0-1.x86_64.rpm

 

2.安装客户端
rpm -ivh oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpm
rpm -ivh oracle-instantclient11.2-devel-11.2.0.4.0-1.x86_64.rpm
rpm -ivh oracle-instantclient11.2-sqlplus-11.2.0.4.0-1.x86_64.rpm
rpm -ivh oracle-instantclient11.2-tools-11.2.0.4.0-1.x86_64.rpm
rpm -ivh oracle-instantclient11.2-jdbc-11.2.0.4.0-1.x86_64.rpm

 

3.创建tnsnames.ora文件
su - root
mkdir -p /usr/lib/oracle/11.2/client64/network/admin/
cd /usr/lib/oracle/11.2/client64/network/admin/

vi tnsnames.ora

复制代码
DEV_NEW =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.7)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = orcl)
    )
  )
复制代码

 

4.设置环境变量

复制代码
[root@localhost ~]# more .bash_profile
# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi

# User specific environment and startup programs

export ORACLE_HOME=/usr/lib/oracle/11.2/client64
export ORACLE_BASE=/usr/lib/oracle/11.2
export TNS_ADMIN=/usr/lib/oracle/11.2/network/admin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export NLS_LANG="american_america.AL32UTF8"
export PATH=${ORACLE_HOME}/bin:$PATH

PATH=$PATH:$HOME/bin

export PATH
复制代码

这个时候sqlplus是可以使用的,但是瘦客户端精简版本没有包含tnsping,这个需要服务端拷贝过来

 

5.创建目录(后面的tnsping、exp、imp、sqlldr会用到):
客户端创建目录
su - root
mkdir -p $ORACLE_HOME/network/mesg/
mkdir -p $ORACLE_HOME/rdbms/mesg

服务器端将如下两个文件拷贝到客户端
scp /u01/app/oracle/product/11.2.0.4/db_1/bin/tnsping root@192.168.1.136:/usr/lib/oracle/11.2/client64/bin/
scp /u01/app/oracle/product/11.2.0.4/db_1/network/mesg/tnsus.msb root@192.168.1.136:/usr/lib/oracle/11.2/client64/rdbms/mesg/

这个时候就可以使用tnspingl了

 

复制代码
[root@localhost admin]# tnsping DEV_NEW  

TNS Ping Utility for Linux: Version 11.2.0.4.0 - Production on 23-AUG-2022 17:27:21

Copyright (c) 1997, 2013, Oracle.  All rights reserved.

Used parameter files:


Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.7)(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME = orcl)))
OK (10 msec)
复制代码

 

 

6.可以将以上包打包到其他的机器解压即可使用

[root@localhost ~]# cd /usr/lib/
[root@localhost lib]# tar -cvf oracle_clent11g.tar ./oracle/

将tar文件拷贝到另外的机器上,与当前的目录保持一致

[root@localhost lib]# scp oracle_clent11g.tar root@192.168.1.135:/usr/lib/

然后到另外一台机器上解压
[root@host135 ~]# cd /usr/lib/
[root@host135 lib]# tar -xvf oracle_clent11g.tar

然后设置环境变量(root用户或是其他普通用户都可以)

复制代码
[root@host135 lib]# cd ~
[root@host135 ~]# more .bash_profile
# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi

# User specific environment and startup programs
export ORACLE_HOME=/usr/lib/oracle/11.2/client64
export ORACLE_BASE=/usr/lib/oracle/11.2
export TNS_ADMIN=/usr/lib/oracle/11.2/network/admin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export NLS_LANG="american_america.AL32UTF8"
export PATH=${ORACLE_HOME}/bin:$PATH

PATH=$PATH:$HOME/bin

export PATH
复制代码

 

退出重新登录

复制代码
[root@host135 ~]# which sqlplus
/usr/lib/oracle/11.2/client64/bin/sqlplus
[root@host135 ~]# tnsping DEV_NEW

TNS Ping Utility for Linux: Version 11.2.0.4.0 - Production on 23-AUG-2022 17:56:06

Copyright (c) 1997, 2013, Oracle.  All rights reserved.

Used parameter files:


Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.7)(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME = orcl)))
OK (10 msec)
[root@host135 ~]# sqlplus /nolog

SQL*Plus: Release 11.2.0.4.0 Production on Tue Aug 23 17:56:13 2022

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

SQL> connect hxl/oracle@DEV_NEW
Connected
复制代码

 

 

 

#############################在麒麟操作系统上安装oracle 11g客户端########################
若是按照上面的步骤直接解压使用的话,会报如下错误:
sqlplus: error while loading shared libraries: libnsl.so.1: cannot open shared object file: No such file or directory

解决办法:
1.在一台centos 7机器上找到如下文件
[root@localhost /]# find / -name libnsl.so.1
/usr/lib64/libnsl.so.1
/topsec/topav_client/lib/libnsl.so.1

该文件是一个链接文件

[root@localhost tmp]# ls -al /usr/lib64/libnsl.so.1
lrwxrwxrwx 1 root root 14 Aug 23 2022 /usr/lib64/libnsl.so.1 -> libnsl-2.17.so

 

2.将该文件上传到麒麟服务器
scp libnsl-2.17.so root@麒麟服务器ip:/usr/lib64/

 

3.在麒麟服务器上创建软连接(目的是保持正常系统的一致)
cd /usr/lib64/
ln -s ibnsl-2.17.so libnsl.so.1

然后执行
ldconfig

 

 

posted @   slnngk  阅读(831)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
历史上的今天:
2021-08-23 现有dgbroker管理的dg下添加一台从库且互相切换
2021-08-23 删除dgbroker
点击右上角即可分享
微信分享提示