贝博恩创新科技网

oracle client 安装教程

Oracle Client 安装教程 (以 Instant Client 为例)

Oracle Client 主要分为两种:

oracle client 安装教程-图1
(图片来源网络,侵删)
  1. Instant Client (即时客户端):推荐用于大多数场景,尤其是应用开发和连接,它是一个轻量级的、无需安装的软件包,包含了运行 OCI、OCCI、JDBC-OCI、ODBC 等应用程序连接到 Oracle 数据库所需的最小核心库文件。本教程将重点介绍此方法。
  2. Oracle Call Interface (OCI) / Oracle Client (完整客户端):这是一个功能更全面的客户端,包含了企业管理器、网络配置助手、SQL*Plus 等工具,它体积庞大,通常用于需要本地管理数据库或使用特定旧版工具的场景。

第一部分:准备工作

在开始安装之前,请做好以下准备工作:

确定你的操作系统和位数

  • 操作系统:Windows, Linux, macOS。
  • 系统位数64位 还是 32位,对于现代系统,几乎都是 64 位,可以通过以下方式确认:
    • Windows: 在 "此电脑" 上右键 -> "属性",查看 "系统类型"。
    • Linux: 在终端输入 uname -m,如果返回 x86_64 则是 64 位。
    • macOS: 在终端输入 uname -m,如果返回 arm64 则是 Apple Silicon (M1/M2),如果返回 x86_64 则是 Intel 芯片。

获取 Oracle Database 的版本信息

你的 Instant Client 版本必须与你要连接的 Oracle 数据库的版本兼容或更高,要连接 Oracle 19c 数据库,你需要安装 19c 或更高版本的 Instant Client。

如何获取数据库版本?

  • 如果你有数据库访问权限:登录数据库,执行 SELECT * FROM v$version;
  • 如果你不确定:可以咨询你的 DBA,如果实在不知道,选择一个较新的、主流的版本(如 19c 或 21c)通常不会错。

下载 Instant Client 安装包

访问 Oracle 官方 Instant Client 下载页面: https://www.oracle.com/database/technologies/instant-client/downloads.html

oracle client 安装教程-图2
(图片来源网络,侵删)

下载步骤:

  1. Accept Agreement:勾选 "Accept License Agreement"。
  2. 选择平台:根据你的操作系统选择对应的平台 (Windows, Linux x86-64, Linux ARM 64, macOS x86-64, macOS ARM64)。
  3. 选择版本和文件
    • 选择你需要的数据库版本 (如 19c21c)。
    • Windows:下载 .zip 文件,对于大多数用户,下载 Instant Client for Windows x64 的基本包即可,文件名类似 instantclient-basic-windows.x64-19.xx.xx.xx.0d.zip
    • Linux:下载 .rpm (RedHat/CentOS/Fedora) 或 .deb (Ubuntu/Debian) 包,基本包名类似 oracle-instantclient19.10-basic-19.10.0.0.0-1.x86_64.rpm
    • macOS:下载 .dmg.zip 文件,基本包名类似 instantclient-basic-macos.x64-19.xx.xx.xx.0d.zip

提示:除了基本包,你还可以根据需要下载 "sqlplus" (用于命令行连接)、"devel" (开发头文件) 等扩展包,对于初学者,基本包 就足够了。


第二部分:安装步骤

A. Windows (以 ZIP 为例)

这是最简单的方式,无需安装,只需解压。

  1. 创建目录:在 C 盘或 Program Files 目录下创建一个用于存放 Instant Client 的文件夹,C:\oracle\instantclient_19_10
  2. 解压文件:将下载的 .zip 文件解压到上一步创建的目录中,解压后,你应该能看到 oci.dll, oraocci19.dll, sqlplus.exe 等文件。
  3. 配置环境变量 (关键步骤)
    • 右键点击 "此电脑" -> "属性" -> "高级系统设置" -> "环境变量"。
    • 在 "系统变量" 部分,找到名为 Path 的变量,双击它。
    • 点击 "新建",然后添加你的 Instant Client 目录路径,C:\oracle\instantclient_19_10
    • 确保新添加的路径在最上方,以避免系统找到其他版本的 Oracle 库。
    • 一路点击 "确定" 保存所有设置。
  4. 验证安装
    • 重启你的终端 (CMD 或 PowerShell),否则环境变量不会生效。
    • 在终端中输入 sqlplus /nolog,然后输入 conn 用户名/密码@数据库服务名
    • 如果能成功连接,说明安装和配置成功!

B. Linux (以 RPM 为例)

  1. 安装依赖

    oracle client 安装教程-图3
    (图片来源网络,侵删)
    • 对于 RedHat/CentOS/Fedora:
      sudo yum install -y libnsl
    • 对于 Ubuntu/Debian:
      sudo apt-get update
      sudo apt-get install -y libaio1 libnss3-tools
  2. 安装 RPM 包

    • 假设你的下载文件在 ~/Downloads 目录下。
      sudo yum localinstall ~/Downloads/oracle-instantclient19.10-basic-19.10.0.0.0-1.x86_64.rpm
    • 安装完成后,文件默认会放在 /usr/lib/oracle/19.10/client64/lib/ 目录下。
  3. 配置环境变量 (关键步骤)

    • 编辑 ~/.bashrc 文件 (推荐使用 vimnano):
      vim ~/.bashrc
    • 在文件末尾添加以下内容 (请根据你的实际版本号和路径修改):
      # Oracle Instant Client
      export ORACLE_HOME=/usr/lib/oracle/19.10/client64
      export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
      export PATH=$ORACLE_HOME/bin:$PATH
    • 保存文件后,让配置立即生效:
      source ~/.bashrc
  4. 验证安装

    • 在终端输入 sqlplus /nolog,然后输入 conn 用户名/密码@数据库服务名
    • 如果能成功连接,说明安装和配置成功!

C. macOS (以 ZIP 为例)

  1. 解压文件

    • 将下载的 .zip 文件解压到一个合适的位置,~/Downloads/instantclient_19_10
  2. 配置环境变量 (关键步骤)

    • 编辑 ~/.zshrc 文件 (如果你使用的是 Zsh,macOS Catalina 后默认) 或 ~/.bash_profile 文件 (如果你使用 Bash)。
      # 对于 Zsh 用户
      vim ~/.zshrc
      # 对于 Bash 用户
      vim ~/.bash_profile
    • 在文件末尾添加以下内容 (请根据你的实际版本号和路径修改):
      # Oracle Instant Client
      export ORACLE_HOME=~/Downloads/instantclient_19_10
      export DYLD_LIBRARY_PATH=$ORACLE_HOME:$DYLD_LIBRARY_PATH
      export PATH=$ORACLE_HOME:$PATH
    • 保存文件后,让配置立即生效:
      # 对于 Zsh 用户
      source ~/.zshrc
      # 对于 Bash 用户
      source ~/.bash_profile
  3. 验证安装

    • 在终端输入 sqlplus /nolog,然后输入 conn 用户名/密码@数据库服务名
    • 如果能成功连接,说明安装和配置成功!

第三部分:常见问题与解决方案

问题 1:sqlplus: command not found

  • 原因sqlplus 工具没有包含在你下载的基本包里,或者 PATH 环境变量没有配置正确。
  • 解决
    1. 重新下载包含 "sqlplus" 的扩展包 (如 instantclient-sqlplus-...zip) 并解压到同一目录。
    2. 仔细检查 PATH 环境变量,确保你的 Instant Client bin 目录在路径列表中。
    3. Windows 用户:务必重启终端

问题 2:ORA-12154: TNS:could not resolve the connect identifier specified

  • 原因:这是最常见的错误,表示客户端无法解析你提供的 "数据库服务名" 或 "Easy Connect" 字符串。
  • 解决
    1. 确认服务名/主机/IP/端口:这些信息必须 100% 正确,咨询你的 DBA。
    2. 使用 Easy Connect 命名 (推荐):这是现代 Oracle 连接的首选方式,无需配置 tnsnames.ora 文件。
      • 格式:用户名/密码@主机:端口/服务名
      • 示例:scott/tiger@192.168.1.100:1521/orclpdb1
    3. 配置 tnsnames.ora (传统方式)
      • 在 Instant Client 目录下创建一个 network/admin 子目录。
      • network/admin 目录下创建一个 tnsnames.ora 文件。
      • 在文件中添加你的服务名配置:
        MYDB =
          (DESCRIPTION =
            (ADDRESS = (PROTOCOL = TCP)(HOST = mydb_host)(PORT = 1521))
            (CONNECT_DATA =
              (SERVER = DEDICATED)
              (SERVICE_NAME = orclpdb1)
            )
          )
      • 连接时使用服务名:conn scott/tiger@MYDB

问题 3:ORA-12541: TNS:no listener (Windows) 或 Listener refused the connection with the following error

  • 原因:客户端可以找到数据库地址,但数据库监听器没有在指定的端口上运行或没有监听该服务。
  • 解决:联系你的 DBA,确保 Oracle 数据库的监听器已经启动并且配置正确。

*问题 4:`Error 6 initializing SQLPlus`**

  • 原因:通常是由于 NLS_LANG 环境变量未设置或设置不正确,导致字符集问题。
  • 解决
    • Windows:在系统环境变量中添加 NLS_LANG,值设为 AMERICAN_AMERICA.AL32UTF8 (这是最常用的 UTF-8 字符集)。
    • Linux/macOS:在 ~/.bashrc~/.zshrc 中添加 export NLS_LANG=AMERICAN_AMERICA.AL32UTF8source 文件。

  1. 下载:根据 OS 和数据库版本,下载 Instant Client 基本包。
  2. 安装:Windows 解压,Linux/macOS 使用包管理器或解压。
  3. 配置最关键的一步,将 Instant Client 的路径添加到系统的 PATH 环境变量中。
  4. 验证:重启终端,使用 sqlplus 命令尝试连接数据库。

遵循以上步骤,你就可以成功安装并配置好 Oracle Instant Client 了,对于绝大多数开发者来说,Instant Client 是最佳选择,简单高效。

分享:
扫描分享到社交APP
上一篇
下一篇