如何通过 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 是否与数据库字符集匹配

相关推荐
仍然.2 小时前
Redis---缓存
数据库·redis·缓存
Aloudata2 小时前
LookML 语义模型 vs 企业级独立语义层:BI 建模语言能否承担企业语义底座?
数据库·人工智能·数据分析·数据资产·dataagent
程序员-Benothing2 小时前
Vim编辑器从入门到精通:模式、快捷键、配置、插件
linux·运维·服务器
细嗅蔷薇@2 小时前
排序和分⻚(order by 、limit)
数据库·oracle
m0_646429973 小时前
Docker 完整核心知识点总结(超通俗易懂版)
运维·docker·容器
wdfk_prog3 小时前
LWIP教程 09:从 `tcp_slowtmr()` 到 Fast Retransmit——TCP 超时重传与重复 ACK
服务器·网络·数据库·网络协议·tcp/ip
逸模3 小时前
BIM在连锁餐饮装修中的应用:不只是画三维图
大数据·数据库·人工智能·物联网·建模
梦想平凡3 小时前
棋牌游戏技术实战(五):从对局事件重新执行规则,核对棋盘和最终状态
数据库·游戏·oracle
亚川楼宇自控系统数据中心厂家3 小时前
IBMS 集成管理系统:如何打通楼宇自控实现建筑一体化管控
运维
白露与泡影3 小时前
Oracle AI Database 26ai RAC 部署步骤、关键命令与一键脚本
数据库·人工智能·oracle