centos中sqlplus环境配置步骤
导读:CentOS 中 SQL*Plus 环境配置步骤 一 准备与安装 选择安装方式:推荐使用 Oracle Instant Client(轻量、仅含客户端工具)。从 Oracle 官网下载与系统架构匹配的包,至少需要 Basic 与 SQL*...
CentOS 中 SQL*Plus 环境配置步骤
一 准备与安装
- 选择安装方式:推荐使用 Oracle Instant Client(轻量、仅含客户端工具)。从 Oracle 官网下载与系统架构匹配的包,至少需要 Basic 与 SQL*Plus 两个包,版本建议保持一致(如 19c、21c)。
- RPM 安装(推荐):将下载的 RPM 上传至服务器后执行
sudo yum localinstall oracle-instantclient-basic-< 版本> .x86_64.rpm oracle-instantclient-sqlplus-< 版本> .x86_64.rpm
安装完成后,Instant Client 通常位于 /usr/lib/oracle/< 版本> /client64(例如 /usr/lib/oracle/21.6/client64)。 - ZIP 安装:将 ZIP 解压到统一目录(如 /opt/oracle/instantclient_< 版本> ),后续通过环境变量指向该目录。
- 依赖检查:确保安装 libaio(Instant Client 必需)
sudo yum install -y libaio
二 环境变量与库路径
- 设置环境变量(写入 ~/.bashrc 或 /etc/profile.d/oracle.sh,二选一,后者便于系统级生效):
export ORACLE_HOME=/usr/lib/oracle/21.6/client64
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
export PATH=$ORACLE_HOME/bin:$PATH可选:指定 tnsnames.ora 目录
export TNS_ADMIN=$ORACLE_HOME/network/admin可选:字符集(按需)
export NLS_LANG=AMERICAN_AMERICA.UTF8
使配置生效:source ~/.bashrc 或 source /etc/profile.d/oracle.sh。 - 库路径注册(RPM 安装强烈建议执行,避免 “libsqlplus.so 找不到” 等动态库错误):
echo “$ORACLE_HOME/lib” | sudo tee /etc/ld.so.conf.d/oracle-instantclient.conf
sudo ldconfig - 说明:SQL*Plus 在 UNIX/Linux 上依赖 LD_LIBRARY_PATH 定位共享库;ORACLE_HOME 指向客户端安装目录;TNS_ADMIN 指定 tnsnames.ora 所在目录;NLS_LANG 控制全球化行为。
三 配置 TNS 与便捷连接
- 创建网络配置目录与文件:
sudo mkdir -p $ORACLE_HOME/network/admin
sudo vi $ORACLE_HOME/network/admin/tnsnames.ora - 示例条目:
MYDB =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = db.example.com)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = myservice)
)
) - 连接测试:
sqlplus username/password@MYDB
或使用 EZConnect:
sqlplus username/password@//db.example.com:1521/myservice - 免 TNS 的替代方式:设置 TWO_TASK(UNIX/Linux)
export TWO_TASK=MYDB
sqlplus hr
等价于 sqlplus hr@MYDB。
四 验证与常见问题
- 验证安装:
sqlplus -v
正常会输出版本号(如 SQL*Plus: Release 21.0.0.0.0)。 - 连接测试:
sqlplus /nolog
SQL> connect username/password@MYDB
或直接使用 EZConnect 登录。 - 常见问题与处理:
- 动态库错误(如 “sqlplus: error while loading shared libraries: libsqlplus.so: cannot open shared object file”):确认已执行 ldconfig 或正确设置 LD_LIBRARY_PATH。
- 找不到 tnsnames.ora:确认 TNS_ADMIN 指向包含 network/admin/tnsnames.ora 的目录,或使用 TWO_TASK/EZConnect。
- 字符集乱码:设置 NLS_LANG(如 AMERICAN_AMERICA.UTF8)与数据库侧保持一致。
- 命令历史与编辑:安装 rlwrap 并配置别名可提升体验
sudo yum install -y rlwrap
echo “alias sqlplus=‘rlwrap sqlplus’” > > ~/.bashrc & & source ~/.bashrc。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: centos中sqlplus环境配置步骤
本文地址: https://pptw.com/jishu/772173.html
