CentOS 安装 sqlplus

有时需要在服务器安装 sqlplus 来被其它服务调用,此时若服务器不是数据库服务器,则需要在此服务器安装 sqlplus 工具。

下载

首先到官网下载工具:下载地址

下载如下两个包:

  • oracle-instantclient12.2-basic-12.2.0.1.0-1.x86_64.rpm
  • oracle-instantclient12.2-sqlplus-12.2.0.1.0-1.x86_64.rpm

在服务器执行安装:

1
rpm -ivh oracle-instantclient*.rpm

配置

这里近安装客户端和 sqlplus,因而不需要配置 ORACLE_HOMEORACLE_SID 这两个环境变量。

若要使 sqlplus 工具对所有用户可用,在系统环境变量 /etc/profile 添加:

1
2
3
4
...
LD_LIBRARY_PATH=/usr/lib/oracle/12.2/client64/lib:${LD_LIBRARY_PATH}
export LD_LIBRARY_PATH
export PATH=/usr/lib/oracle/12.2/client64/bin:$PATH

只对特定用户可用,在 ~/.bash_profile 内添加:

1
2
3
4
...
LD_LIBRARY_PATH=/usr/lib/oracle/12.2/client64/lib:${LD_LIBRARY_PATH}
export LD_LIBRARY_PATH
export PATH=/usr/lib/oracle/12.2/client64/bin:$PATH

此时,执行 sqlplus 命令就可以看到命令输出了。

对本服务器运行的 sqlplus 指定字符集,规避同数据库字符集不一致导致乱码问题。

连接数据库,执行语句查询 Oracle 服务器的语言、地域和字符集:

1
select * from nls_database_parameters;

按照查询结果拼接:

NLS_LANGUAGE_NLS_TERRITORY.NLS_CHARACTEST

这里举例查到的是:

NLS_LANGUAGE = AMERICAN
NLS_TERRITORY = AMERICA
NLS_CHARACTSET = AL32UTF8

即拼接为:AMERICAN_AMERICA.AL32UTF8

在服务器设置环境变量:

1
NLS_LANG="AMERICAN_AMERICA.AL32UTF8"

配置 TNS

1
mkdir -p /usr/lib/oracle/12.2/client64/lib/network/admin

路径也可为:

1
mkdir -p /usr/lib/oracle/12.2/client64/network/admin

在该文件夹新建 tnsnames.ora 文件,内容为 TNS 列表。

参考

-EOF-

本博客所有文章除特别声明外,均采用 CC BY-NC-ND 4.0 许可协议。转载请注明出处! © 雨落
  1. 1. 下载
  2. 2. 配置
  3. 3. 配置 TNS
  4. 4. 参考