温馨提示×

Ubuntu Oracle怎样安装软件

小樊
56
2025-09-27 18:22:42
栏目: 云计算

在Ubuntu上安装Oracle相关软件(数据库/客户端/工具)的通用流程及注意事项

一、前期准备

  1. 系统要求

    • Ubuntu 16.04及以上版本(建议使用LTS版本,如22.04、24.04);
    • 至少2GB内存(Oracle Database推荐4GB以上)、2核CPU、10GB以上磁盘空间(用于安装目录和数据文件);
    • 稳定的网络连接(用于下载软件包)。
  2. 安装基础依赖
    在终端执行以下命令,安装Oracle软件所需的系统依赖:

    sudo apt update sudo apt install -y alien libaio1 unixODBC wget unzip 

    alien用于转换RPM包为DEB格式(若需安装Oracle提供的RPM包);libaio1是Oracle必需的异步I/O库;unixODBC用于数据库连接驱动。

二、Oracle Database安装(命令行方式)

1. 添加Oracle官方APT源(可选,适用于10g/11g Express Edition)

若需安装Oracle 10g Express Edition(XE),可通过Oracle官方源快速部署:

  • 编辑/etc/apt/sources.list,添加以下行:
    deb http://oss.oracle.com/debian unstable main non-free 
  • 导入Oracle公钥(验证软件包完整性):
    wget http://oss.oracle.com/el4/RPM-GPG-KEY-oracle sudo apt-key add RPM-GPG-KEY-oracle 
  • 更新软件包索引:
    sudo apt update 
  • 安装Oracle 10g XE客户端(或其他版本):
    sudo apt install -y oracle-xe-client 

注:Oracle 11g及以上版本的Database软件未提供Ubuntu原生APT包,需通过官方下载页面获取RPM/压缩包安装。

2. 手动安装Oracle Database(通用步骤)

  • 下载软件包:访问Oracle官方网站,选择与Ubuntu系统架构(64位/32位)匹配的Oracle Database安装包(如.zip.rpm格式);
  • 创建Oracle用户和目录
    # 创建用户组(dba:数据库管理员;oper:数据库操作员) sudo groupadd -g 503 dba sudo groupadd -g 504 oper # 创建oracle用户(属主为oinstall组,附加dba、oper权限) sudo useradd -u 501 -g oinstall -G dba,oper -s /bin/bash -m oracle sudo passwd oracle # 设置密码 # 创建安装目录并赋权 sudo mkdir -p /u01/app/oracle/product/19.0.0/dbhome_1 # 替换为实际版本目录 sudo chown -R oracle:oinstall /u01 sudo chmod -R 775 /u01 
  • 配置环境变量
    编辑/home/oracle/.bashrc(oracle用户的配置文件),添加以下内容:
    export ORACLE_BASE=/u01/app/oracle export ORACLE_HOME=$ORACLE_BASE/product/19.0.0/dbhome_1 # 替换为实际版本目录 export ORACLE_SID=orcl # 数据库实例名(默认) export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH export PATH=$ORACLE_HOME/bin:$PATH 
    使配置生效:
    source /home/oracle/.bashrc 
  • 运行安装程序
    切换至oracle用户,解压安装包并启动安装向导:
    su - oracle cd /path/to/oracle/database/install/dir # 替换为下载的软件包路径 ./runInstaller # 图形化安装(需安装X11转发或远程桌面) 
    若为无图形界面的服务器,可使用静默安装模式(需提前准备响应文件):
    ./runInstaller -silent -responseFile /path/to/response_file.rsp 
    安装过程中需选择“自定义安装”,配置数据库字符集(如AL32UTF8)、实例名等参数。

三、Oracle Instant Client安装(用于应用连接)

Oracle Instant Client是轻量级客户端库,用于应用程序连接Oracle数据库(无需安装完整数据库)。

  • 下载与解压
    访问Oracle官方网站,下载对应版本的Instant Client Basic包(如.zip格式),解压至/opt目录:
    sudo mkdir -p /opt/oracle sudo unzip instantclient-basic-linux.x64-21.1.0.0.0.zip -d /opt/oracle sudo mv /opt/oracle/instantclient_21_1 /opt/oracle/instantclient 
  • 配置环境变量
    编辑/home/oracle/.bashrc(或应用使用的环境配置文件),添加以下内容:
    export LD_LIBRARY_PATH=/opt/oracle/instantclient:$LD_LIBRARY_PATH export PATH=/opt/oracle/instantclient:$PATH 
    使配置生效:
    source /home/oracle/.bashrc 
  • 验证安装
    进入Instant Client目录,执行ls命令确认文件存在(如libclntsh.so),或通过sqlplus测试连接(需提前配置TNS信息)。

四、cx_Oracle(Python连接Oracle的工具)安装

若需通过Python应用连接Oracle数据库,需安装cx_Oracle模块(纯Python扩展,依赖Oracle客户端库)。

  • 安装步骤
    • 确保已安装Oracle Instant Client(参考上文);
    • 使用pip安装cx_Oracle(推荐使用虚拟环境):
      sudo apt install -y python3-pip python3 -m venv myenv # 创建虚拟环境 source myenv/bin/activate pip install cx_Oracle 
    • 测试连接:
      编写Python脚本(test_oracle.py):
      import cx_Oracle conn = cx_Oracle.connect("username/password@hostname:1521/orcl") # 替换为实际连接信息 cursor = conn.cursor() cursor.execute("SELECT * FROM dual") print(cursor.fetchone()) conn.close() 
      运行脚本:
      python3 test_oracle.py 
      若输出('X',)则表示连接成功。

五、常见问题排查

  1. 环境变量未生效
    确保~/.bashrc/etc/environment中的变量设置正确,执行source命令刷新;若仍无效,检查变量是否拼写错误(如LD_LIBRARY_PATH而非LD_LIBRARY_PAHT)。

  2. ORA-21561: OID generation failed
    编辑/etc/hosts文件,添加主机名与IP地址的映射(如127.0.0.1 localhost your_hostname),保存后重启系统或执行sudo hostnamectl set-hostname your_hostname

  3. 依赖缺失错误
    若安装过程中提示缺少libnnz19.solibaio.so.1等库,通过apt安装对应依赖(如sudo apt install libaio1),或手动下载并放置至/usr/lib目录。

注意事项

  • Oracle Database官方未提供Ubuntu原生APT包(除10g XE外),建议优先通过官方下载页面获取安装包;
  • 安装过程中需关闭防火墙或开放1521端口(Oracle默认监听端口),避免连接失败;
  • 生产环境中建议配置Oracle RAC(Real Application Clusters)或Data Guard以实现高可用性。

0