📢📢📢📣📣📣
哈喽!大家好,我是【IT邦德】,10余年DBA及大数据工作经验
一位上进心十足的【大数据领域博主】!😜😜😜
中国DBA联盟(ACDU)成员,目前服务于工业互联网
擅长主流Oracle、MySQL、PG、高斯及Greenplum运维开发,备份恢复,安装迁移,性能优化、故障应急处理等。
✨ 如果有对【数据库】感兴趣的【小可爱】,欢迎关注【IT邦德】💞💞💞
❤️❤️❤️感谢各位大可爱小可爱!❤️❤️❤️


文章目录

  • 前言
  • 📣 1.系统环境检查
  • 📣 2.检查升级条件
  • 📣 3、数据库全备
  • ✨ 3.1 RMAN备份
  • ✨ 3.2 EXPDP备份
  • 📣 4、关闭数据库和监听
  • ✨ 4.1 关闭数据库
  • ✨ 4.2 关闭监听
  • 📣 5、备份Oracle目录
  • 📣 6、解压11.2.0.4的安装包
  • ✨ 6.1 修改权限
  • ✨ 6.2 执行安装
  • 📣 7、修改环境变量
  • 📣 8、查看版本号
  • ✨ 8.1 处理OWB版本问题
  • ✨ 8.2 检查无效对象


前言


本文祥细阐述了Oracle单机版11.2.0.3升级到11.2.0.4的祥细过程


📣 1.系统环境检查

Oracle版本:
[oracle@MES ~]$ sqlplus -v

Oracle单机版升级(11.2.0.3升级到11.2.0.4)_SQL

Linux版本:
[oracle@MES ~]$ cat /etc/redhat-release

Oracle单机版升级(11.2.0.3升级到11.2.0.4)_SQL_02

📣 2.检查升级条件

[oracle@MES ~]$ sqlplus / as sysdba
SYS@PROD> startup

Oracle单机版升级(11.2.0.3升级到11.2.0.4)_oracle_03

SYS@PROD> col comp_name for a35
SYS@PROD> col version for a20
SYS@PROD> col name for a20
SYS@PROD> set linesize 1000
SYS@PROD> set pagesize 1000
SYS@PROD> SELECT COMP_NAME, VERSION, STATUS FROM SYS.DBA_REGISTRY;

Oracle单机版升级(11.2.0.3升级到11.2.0.4)_原力计划_04

--兼容性查看
SYS@PROD> col name for a40
SYS@PROD> col value for a30
SYS@PROD> SELECT name, value FROM v$parameter WHERE name = 'compatible';

Oracle单机版升级(11.2.0.3升级到11.2.0.4)_SQL_05

📣 3、数据库全备

✨ 3.1 RMAN备份

确认归档是否打开:
SYS@PROD> archive log list

Oracle单机版升级(11.2.0.3升级到11.2.0.4)_数据库_06

[oracle@MES ~]$ rman target /
RMAN> backup database plus archivelog delete input format ‘/home/bak/full_%U.dbf’;

Oracle单机版升级(11.2.0.3升级到11.2.0.4)_oracle_07

RMAN> list backup;
RMAN> list archivelog all;

Oracle单机版升级(11.2.0.3升级到11.2.0.4)_SYS_08

✨ 3.2 EXPDP备份

[root@MES ~]# mkdir -p /home/oracle/DEMP_EXP
[root@MES oracle]#  chown -R oracle:oinstall /home/oracle/DEMP_EXP
[root@MES oracle]# ll
SYS@PROD> create directory expdp  as '/home/oracle/DEMP_EXP';
SYS@PROD> grant read,write on directory EXPDP to SCOTT;
SYS@PROD> select * from dba_directories;
[oracle@MES ~]$ expdp scott/tiger directory=expdp dumpfile=full.dmp full=y logfile=full.log

📣 4、关闭数据库和监听

✨ 4.1 关闭数据库

SYS@PROD> shutdown immediate

✨ 4.2 关闭监听

[oracle@MES ~]$ lsnrctl status
[oracle@MES ~]$ lsnrctl stop

Oracle单机版升级(11.2.0.3升级到11.2.0.4)_SQL_09

📣 5、备份Oracle目录

[oracle@MES ~]$ env | grep ora

Oracle单机版升级(11.2.0.3升级到11.2.0.4)_SQL_10

[oracle@MES ~]$ tar -cvf product.zip /u01/app/oracle/product/
[oracle@MES ~]$ ll

Oracle单机版升级(11.2.0.3升级到11.2.0.4)_数据库_11

[oracle@MES ~]$ tar -cvf oralnventory.zip /u01/app/oraInventory/

Oracle单机版升级(11.2.0.3升级到11.2.0.4)_oracle_12

📣 6、解压11.2.0.4的安装包

[root@MES ~]# mkdir /soft
[root@MES soft]# unzip p13390677_112040_Linux-x86-64_1of7.zip
[root@MES soft]# unzip p13390677_112040_Linux-x86-64_2of7.zip

✨ 6.1 修改权限

[root@MES soft]# chown -R oracle:oinstall database/
[root@MES soft]# chmod -R +x database/

Oracle单机版升级(11.2.0.3升级到11.2.0.4)_oracle_13

✨ 6.2 执行安装

在oracle 用户执行安装操作
[oracle@MES ~]$ cd /soft/database/
[oracle@MES database]$ ll
[oracle@MES database]$ ./runInstaller

Oracle单机版升级(11.2.0.3升级到11.2.0.4)_SYS_14


Oracle单机版升级(11.2.0.3升级到11.2.0.4)_oracle_15

📣 7、修改环境变量

[oracle@MES ~]$ vi .bash_profile
[oracle@MES ~]$ source .bash_profile

Oracle单机版升级(11.2.0.3升级到11.2.0.4)_原力计划_16

📣 8、查看版本号

SQL> col comp_name for a35
SQL>  col version for a20
SQL>  col name for a20
SQL> set linesize 1000
SQL> set pagesize 1000
SQL> SELECT COMP_NAME, VERSION, STATUS FROM SYS.DBA_REGISTRY;

Oracle单机版升级(11.2.0.3升级到11.2.0.4)_原力计划_17

✨ 8.1 处理OWB版本问题

SQL> @?/owb/UnifiedRepos/clean_owbsys.sql
SQL> @?/owb/UnifiedRepos/cat_owb.sql
SQL> @?/owb/UnifiedRepos/reset_owbcc_home.sql
再次查看:

Oracle单机版升级(11.2.0.3升级到11.2.0.4)_SQL_18

✨ 8.2 检查无效对象

SQL> select * from dba_objects where status<>'VALID';
至此,数据库升级全部完成,验证数据库是否正常!
SQL> select * from v$version;
SQL> select status from v$instance;

Oracle单机版升级(11.2.0.3升级到11.2.0.4)_SQL_19