如何通过 SQL*Plus 连接 Oracle 数据库(使用 Instant Client)

在日常使用中,如果只是通过 SQL*Plus 或 SQL Developer 连接 Oracle 数据库,其实并不需要安装完整的 Oracle 客户端。

Oracle 官方提供了一个轻量级客户端 ------ Instant Client

  • 体积小(几十 MB)
  • 安装简单
  • 功能够用(支持 sqlplus、JDBC、ODBC 等)

本文以 Windows 64 位 为例,介绍如何通过 Instant Client + SQL*Plus 连接 Oracle 数据库。


一、准备工作说明

为什么不用完整 Oracle 客户端?

完整 Oracle Client:

  • 安装包几百 MB
  • 配置步骤多
  • 对只做连接测试或日常查询来说偏重

Instant Client:

  • 只需解压
  • 无需复杂安装
  • 非常适合开发、运维、测试场景

二、下载 Instant Client 和 SQL*Plus

1️⃣ 下载地址

Oracle 官方下载页面:

复制代码
https://www.oracle.com/database/technologies/instant-client/downloads.html

2️⃣ 选择版本

  • 操作系统:Windows x64
  • Instant Client 版本:示例使用 21.10(也可选择其他稳定版本)

3️⃣ 需要下载的两个包

在下载列表中,至少需要以下两个文件

  • Instant Client Basic Package
  • Instant Client SQL*Plus Package

注意:

只下载 Basic 包是无法使用 sqlplus 的,必须额外下载 sqlplus 工具包。


三、解压并合并文件

1️⃣ 解压到同一目录

例如创建目录:

复制代码
X:\Oracle\

将两个压缩包解压到同一个目录下,最终结构类似:

复制代码
X:\Oracle\
 └─ instantclient_21_10\
     ├─ sqlplus.exe
     ├─ oci.dll
     ├─ oraocci21.dll
     └─ ...

⚠️ 关键点:

  • Basic 包和 sqlplus 包必须解压到同一个 instantclient_xx_xx 目录中
  • 不要嵌套多层目录

四、配置系统环境变量

1️⃣ 配置 PATH

将 Instant Client 目录加入系统 PATH,例如:

复制代码
X:\Oracle\instantclient_21_10

2️⃣ 新增环境变量(推荐)

变量名 说明
NLS_LANG 客户端字符集
TNS_ADMIN tnsnames.ora 文件所在目录

示例:

复制代码
NLS_LANG=AMERICAN_AMERICA.WE8MSWIN1252
TNS_ADMIN=X:\Oracle\instantclient_21_10

如果数据库字符集是 UTF8,可根据实际情况调整 NLS_LANG


五、配置 tnsnames.ora

在目录:

复制代码
X:\Oracle\instantclient_21_10

新建文件 tnsnames.ora,示例如下:

ini 复制代码
orcl =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.102)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl.being.com)
    )
  )

参数说明:

配置项 说明
orcl 本地连接别名
HOST Oracle 服务器 IP
PORT 监听端口(默认 1521)
SERVICE_NAME 数据库服务名

六、使用 SQL*Plus 测试连接

方式一:使用 tnsnames.ora 别名

打开 cmd,执行:

bash 复制代码
sqlplus username/password@orcl

方式二:使用 EZCONNECT 直连

无需配置 tnsnames.ora:

bash 复制代码
sqlplus username/password@192.168.0.102:1521/orcl

如果成功进入:

复制代码
SQL>

说明连接配置完成 🎉


七、常见问题提醒

  • sqlplus 不是内部或外部命令

    • 检查 PATH 是否配置正确
  • ORA-12154

    • tnsnames.ora 配置错误或 TNS_ADMIN 未生效
  • 乱码问题

    • 检查 NLS_LANG 是否与数据库字符集匹配

相关推荐
API开发2 小时前
apiSQL网关 for Docker 离线安装和升级教程
运维·docker·容器·api·api网关·apisql·替代graphql
木子欢儿2 小时前
探索 OpenMediaVault 安装
linux·运维·服务器
Guheyunyi2 小时前
节能降耗系统从“经验直觉”推向“精准智控”
大数据·数据库·人工智能·科技·信息可视化
Linux运维技术栈2 小时前
运维安全: SSH 公钥认证算法加固
linux·运维·安全
斯普信专业组2 小时前
Nacos-MCP 融合架构:运维nacos的MCP服务项目
运维·nacos·架构
小钻风33662 小时前
Docker入门基础知识(一)
运维·docker·容器
小钻风33662 小时前
Docker入门基础知识(二)
运维·docker·容器
不剪发的Tony老师2 小时前
Chartbrew:一个开源的数据可视化平台
sql·数据分析·可视化
jiunian_cn2 小时前
【Redis】zset数据类型相关指令
数据库·redis·缓存