温馨提示×

linux oracle配置怎样升级

小樊
41
2026-09-19 14:14:49
栏目: 云计算

在 Linux 上“升级 Oracle”通常有几种不同场景,先确认你要的是哪一种,再按对应方式操作。下面按常见场景系统说明。


一、先明确:你要升级的是哪种?

  1. Oracle Database(数据库)
    • 小版本(如 19.3 → 19.16)
    • 大版本(如 11g → 19c / 21c)
  2. Oracle Client(客户端)
  3. Oracle Grid / ASM(RAC 环境)
  4. Oracle 软件补丁(PSU / RU / RUR)

下面以 Oracle Database 单机环境 为主说明。


二、升级前准备(非常重要)

1. 查看当前版本

sqlplus / as sysdba
SQL> select * from v$version;

2. 备份(必须)

  • RMAN 全备
  • 导出重要用户(expdp)
  • 备份 ORACLE_HOME/etc/oratablistener.oratnsnames.ora

3. 检查操作系统

  • 内核参数
  • 依赖包(glibc、libaio 等)
  • 空间(ORACLE_BASE 至少 10–20G 空闲)

三、小版本升级(RU / PSU 补丁)

例如:19.3 → 19.16

1. 停止数据库和监听

lsnrctl stop
sqlplus / as sysdba
shutdown immediate

2. 使用 OPatch 打补丁

$ORACLE_HOME/OPatch/opatch apply

3. 执行数据字典升级

cd $ORACLE_HOME/rdbms/admin
sqlplus / as sysdba
@catrelod.sql

4. 重启并验证

startup
select version from v$instance;

四、大版本升级(如 11g → 19c)

方式一:DBUA(推荐)

  1. 安装新版本 ORACLE_HOME(不覆盖旧目录
  2. 启动 DBUA
$NEW_ORACLE_HOME/bin/dbua
  1. 按向导完成升级

方式二:手工升级(适合生产)

  1. 安装新 Oracle 软件
  2. 修改 ORACLE_HOME 指向新目录
  3. 执行:
@catupgrd.sql
  1. 编译对象:
@utlrp.sql

五、Oracle Client 升级

rpm -e oracle-instantclient*
# 或删除旧 ORACLE_HOME
# 安装新 client

更新:

  • LD_LIBRARY_PATH
  • PATH
  • tnsnames.ora

六、RAC / ASM 升级

顺序必须是:

  1. Grid Infrastructure
  2. Oracle Database
  3. 逐个节点滚动升级

七、常见错误

  • OPatch 版本太低 → 先升级 OPatch
  • 空间不足 → 清理 audit / trace
  • 字符集不一致 → 升级前检查

八、我可以更具体地帮你

你可以补充:

  • Oracle 版本(如 11.2 / 19c)
  • Linux 发行版(RHEL / CentOS / Oracle Linux)
  • 单机还是 RAC
  • 升级类型(补丁 / 大版本)

我可以直接给你一步步命令级方案

0