温馨提示×

ubuntu怎么连接oracle

小樊
54
2026-10-10 16:52:21
栏目: 云计算

在 Ubuntu 上“连接 Oracle”通常有两种常见含义:

  1. 命令行连接 Oracle 数据库(用客户端工具)
  2. Ubuntu 作为开发/运行环境,程序连接 Oracle(如 Python / Java)

下面我按最常见场景给你说明。


一、使用命令行连接 Oracle(推荐:sqlplus / sqlcl)

方式 1:安装 Oracle Instant Client + sqlplus

1. 下载 Instant Client

去 Oracle 官网下载(需登录): https://www.oracle.com/database/technologies/instant-client/linux-x86-64-downloads.html

一般需要:

  • basic 或 basic-light
  • sqlplus

2. 解压并配置

mkdir -p /opt/oracle
cd /opt/oracle
unzip instantclient-basic-linux.x64.zip
unzip instantclient-sqlplus-linux.x64.zip

3. 安装依赖

sudo apt update
sudo apt install libaio1

4. 配置环境变量

export ORACLE_HOME=/opt/oracle/instantclient_21_9
export LD_LIBRARY_PATH=$ORACLE_HOME
export PATH=$ORACLE_HOME:$PATH

(版本号按你下载的改)

可写入:

echo 'export ORACLE_HOME=/opt/oracle/instantclient_21_9' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH=$ORACLE_HOME' >> ~/.bashrc
echo 'export PATH=$ORACLE_HOME:$PATH' >> ~/.bashrc
source ~/.bashrc

5. 连接 Oracle

sqlplus 用户名/密码@//ip:端口/服务名

示例:

sqlplus scott/tiger@//192.168.1.100:1521/ORCLPDB1

二、使用 TNS 连接(tnsnames.ora)

如果你有 tnsnames.ora:

export TNS_ADMIN=/path/to/tns
sqlplus 用户名/密码@别名

三、Python 连接 Oracle(常用)

方法 1:使用 python-oracledb(推荐)

pip install oracledb

示例:

import oracledb

conn = oracledb.connect(
    user="scott",
    password="tiger",
    host="192.168.1.100",
    port=1521,
    service_name="ORCLPDB1"
)

cur = conn.cursor()
cur.execute("SELECT SYSDATE FROM dual")
print(cur.fetchone())

四、Java 连接 Oracle

依赖:

<dependency>
  <groupId>com.oracle.database.jdbc</groupId>
  <artifactId>ojdbc8</artifactId>
  <version>21.5.0.0</version>
</dependency>

URL:

jdbc:oracle:thin:@//host:port/service_name

五、常见问题

1. ORA-12170 / 连接超时

  • 防火墙
  • listener 未启动
  • IP / 端口错误

2. 中文乱码

export NLS_LANG=AMERICAN_AMERICA.AL32UTF8

3. 没有 libaio

sudo apt install libaio1

如果你能告诉我:

  • 是 命令行还是程序连接
  • Oracle 版本
  • Ubuntu 版本

我可以给你更精确的步骤。

0 踩