ubuntu下sqlplus环境配置步骤
导读:Ubuntu 下 SQL*Plus 环境配置步骤 一 安装 Oracle Instant Client 与 SQL*Plus 准备安装包:从 Oracle 官网下载与系统架构匹配的 Instant Client 包,至少需要Basic与S...
Ubuntu 下 SQL*Plus 环境配置步骤
一 安装 Oracle Instant Client 与 SQL*Plus
- 准备安装包:从 Oracle 官网下载与系统架构匹配的 Instant Client 包,至少需要Basic与SQL*Plus(可选SDK)。常见版本如12.1、21.x。
- 安装转换工具与依赖:
sudo apt-get update
sudo apt-get install -y alien libaio1 - 将 RPM 转换为 DEB 并安装(示例为 64 位 12.1,按实际版本调整):
sudo alien -i oracle-instantclient12.1-basic-.x86_64.rpm
sudo alien -i oracle-instantclient12.1-sqlplus-.x86_64.rpm
如安装了 SDK:sudo alien -i oracle-instantclient12.1-devel-*.x86_64.rpm - 验证安装:
sqlplus -v
若提示找不到命令,可尝试 sqlplus64(部分安装包提供)。
二 配置环境变量与库路径
- 设置环境变量(写入 ~/.bashrc 或 /etc/profile,按实际版本替换路径中的版本与 client 目录名,如12.1/client64或21/client64):
export ORACLE_HOME=/usr/lib/oracle/12.1/client64
export TNS_ADMIN=$ORACLE_HOME/network/admin
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
使配置生效:source ~/.bashrc(或 source /etc/profile)。 - 注册 Oracle 客户端库路径(解决“libsqlplus.so 找不到”等问题):
echo “$ORACLE_HOME/lib” | sudo tee /etc/ld.so.conf.d/oracle.conf
sudo ldconfig - 如未安装异步 I/O 库会报错“libaio.so.1 找不到”,安装:
sudo apt-get install -y libaio1
三 配置 TNS 与服务名连接
- 创建网络配置目录并编辑 tnsnames.ora:
sudo mkdir -p $TNS_ADMIN
sudo nano $TNS_ADMIN/tnsnames.ora - 示例条目(按实际主机、端口、服务名修改):
TEST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.109)(PORT = 1521))
(CONNECT_DATA =
(SERVICE_NAME = orcl)
)
) - 连接测试:
sqlplus system/YourPassword@TEST
或使用 EZConnect:
sqlplus system/YourPassword@//dbhost:1521/SID
四 提升 SQL*Plus 使用体验
- 安装 rlwrap 以支持方向键与历史:
sudo apt-get install -y rlwrap
使用:rlwrap sqlplus user/pass@//host:1521/service
建议加入别名(写入 ~/.bashrc):alias sqlplus=‘rlwrap sqlplus’。 - 设置默认编辑器(SQL>
edit 调用 vim):
在 $ORACLE_HOME/sqlplus/admin/glogin.sql 中添加:DEFINE _EDITOR = vi
或在 ~/.bashrc 中设置:export EDITOR=vi 并 source 使其生效。 - 保存个人 SQLPlus 环境:在 SQLPlus 中执行 STORE SET $HOME/.sqlplusrc,下次用 @$HOME/.sqlplusrc 恢复。
五 常见问题排查
- 报错“libaio.so.1: cannot open shared object file”:安装 libaio1 后重试。
- 报错“sqlplus: error while loading shared libraries: libsqlplus.so …”:确认 $ORACLE_HOME/lib 已加入 /etc/ld.so.conf.d/oracle.conf 并执行 sudo ldconfig。
- 报错“libsqlplus.so: cannot open shared object file”或命令不存在:检查 ORACLE_HOME、PATH、LD_LIBRARY_PATH 是否指向正确的 client(64)/lib 目录;必要时使用 sqlplus64。
- 登录报错 ORA-01017:核对用户名/密码、服务名/端口、数据库是否允许远程连接。
- 中文乱码:在 ~/.bashrc 中设置 NLS_LANG,例如:export NLS_LANG=“SIMPLIFIED CHINESE_CHINA.UTF8”。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: ubuntu下sqlplus环境配置步骤
本文地址: https://pptw.com/jishu/776306.html
