通过DBUA升级 Oracle 11g到Oracle12c版本

Oracle 11g升级到Oracle12c

Oracle11g数据库环境准备与数据备份

环境:

oracle11.2.0.4 to oralce12.2.0.1

升级方案:

升级方案很多种,我们ORACLE培训课程第8阶段有所讲所有的升级方案,我们这里采用DBUA官方建议的方法

1、手工通过upgrade方式,执行大量的脚本去手工升级

2、dbua图形方式升级(官方推荐的)

oracle安装目录备份

修改主机名:

hostname hefeidb

vi /etc/hostname

停所有的数据库服务

oracle数据库备份

cd /backup

tar /cvf /backup/oracle.tar /oracle

停机时间长:启动mount状态,完整备份

不停机时间短:在线备份+归档

mkdir /backup/hferpdb

sql 复制代码
rman target / 

CONFIGURE CONTROLFILE AUTOBACKUP ON; 
run
{ 
allocate channel d1 type disk; 
allocate channel d2 type disk; 
backup format '/backup/hfhsdb/hferpdbfull_%U' database include current controlfile; 
release channel d1; 
release channel d2; 
} 

Oracle12c安装过程

用oracle用户,上传linuxx64_12201_database.zip,

su - oracle

mkdir -p /oracle/app/oracle/product/12.2.0/db_1

chown -R oracle:oinstall /oracle/app/oracle/product/12.2.0

chmod -R 775 /oracle/app/oracle/product/12.2.0

修改环境变量:

oracle@hefeidb:/home/oracle]$cp ~/.bash_profile ~/.bash_profile.bak

oracle@hefeidb:/home/oracle\]$vi \~/.bash_profile ```sql \#export PATH PS1="[`whoami`@`hostname`:"'$PWD]$' export PS1 export TMP=/tmp export LANG=en_US export TMPDIR=$TMP export ORACLE_UNQNAME=hefeidb ORACLE_SID=hefeidb; export ORACLE_SID ORACLE_BASE=/oracle/app/oracle; export ORACLE_BASE ORACLE_HOME=$ORACLE_BASE/product/12.2.0/db_1; export ORACLE_HOME ORACLE_TERM=xterm; export ORACLE_TERM NLS_DATE_FORMAT="yyyy-mm-dd HH24:MI:SS"; export NLS_DATE_FORMAT NLS_LANG=AMERICAN_AMERICA.ZHS16GBK;export NLS_LANG PATH=.:$PATH:$HOME/.local/bin:$HOME/bin:$ORACLE_BASE/product/12.2.0/db_1/bin:$ORACLE_HOME/bin; export PATH THREADS_FLAG=native; export THREADS_FLAG umask=022 ``` 验证: \[root@hefeidb backup\]# su - oracle Last login: Sun Aug 27 16:11:11 CST 2023 on pts/1 \[oracle@hefeidb:/home/oracle\]$env \|grep ORACLE ```sql ORACLE_UNQNAME=hefeidb ORACLE_SID=hefeidb ORACLE_BASE=/oracle/app/oracle ORACLE_TERM=xterm ORACLE_HOME=/oracle/app/oracle/product/12.2.0/db_1 ``` 解压12c的安装软件 \[oracle@hefeidb:/backup\]$unzip linuxx64_12201_database.zip 运行vnc安装: \[oracle@hefeidb:/backup\]$vncserver \[oracle@hefeidb:/backup/database\] ./runInstaller ![image-20241125145532863](https://i-blog.csdnimg.cn/img_convert/53878fec5e51d652fc4689b830cdd88f.png) ![image-20241125145539921](https://i-blog.csdnimg.cn/img_convert/5205b6769f8185a67a0c07822bd715ff.png) ![image-20241125145547186](https://i-blog.csdnimg.cn/img_convert/0a2fe3531df02a01fc452ef0597971b1.png) ![image-20241125145553719](https://i-blog.csdnimg.cn/img_convert/967f8b4c14e582f1cd18c6be00a44aa1.png) ![image-20241125145602054](https://i-blog.csdnimg.cn/img_convert/7ebfcd8f3e6ad09ae1aee23aa1d85570.png) ![image-20241125145608561](https://i-blog.csdnimg.cn/img_convert/c1cd07a1b26ad9c1b762e7a5c6670be6.png) ![image-20241125145613520](https://i-blog.csdnimg.cn/img_convert/d9085c7176b389bd639face2c9da65aa.png) #### 安装监听: 监听端口改成1522,后面升级完后再改回1521. netca ![image-20241125145658822](https://i-blog.csdnimg.cn/img_convert/f57e1714c55fd9a9fd6da7194fb81044.png) ![image-20241125145705385](https://i-blog.csdnimg.cn/img_convert/f2f9954e4e9d7f32626aadb24906e883.png) ### Oracle11g数据库升级检查与测试 \[oracle@hefeidb:/home/oracle\]$source \~/.bash_profile.bak \[oracle@hefeidb:/home/oracle\]$env \|grep ORACLE ORACLE_UNQNAME=hefeidb ORACLE_SID=hefeidb ORACLE_BASE=/oracle/app/oracle ORACLE_TERM=xterm ORACLE_HOME=/oracle/app/oracle/product/11.2.0/db_1 \[oracle@hefeidb:/home/oracle\]$which sqlplus \[oracle@hefeidb:/home/oracle\]$source \~/.bash_profile.bak \[oracle@hefeidb:/home/oracle\]$/oracle/app/oracle/product/11.2.0/db_1/bin/sqlplus "/as sysdba" #### 运行preupgrade.jar ,生产检查脚本 \[oracle@hefeidb:/backup\]$unzip preupgrade_12201_cbuild_20_lf.zip \[oracle@hefeidb:/backup\]$source \~/.bash_profile.bak --【到之前的环境变量里面去】 \[oracle@hefeidb:/backup\]$java -jar preupgrade.jar ![image-20241125145835897](https://i-blog.csdnimg.cn/img_convert/cccb433a5198bd71621d117d39d7c830.png) \[oracle@hefeidb:/oracle/app/oracle/product/12.2.0/db_1/rdbms/admin\]$more /oracle/app/oracle/cfgtoollogs/hefeidb/preupgrade/preupgrade.log #### 数据库表空间修改 ![image-20241125150006069](https://i-blog.csdnimg.cn/img_convert/aedf374f7cbde3c2f86d19d07a728f0f.png) \[oracle@hefeidb:/backup\]$/oracle/app/oracle/product/11.2.0/db_1/bin/sqlplus "/as sysdba" SQL\> select name from v$datafile; SQL\> alter database datafile '/oradata/hefeidb/system01.dbf' resize 1010m; #### em管理器修改 ![image-20241125150046649](https://i-blog.csdnimg.cn/img_convert/4b9be4b165b3be06a3bf48fd01f42fb3.png) \[oracle@hefeidb:/oracle/app/oracle/product/12.2.0/db_1/rdbms/admin\]$cp emremove.sql .../.../.../.../11.2.0/db_1/rdbms/admin/ \[oracle@hefeidb:/oracle/app/oracle/product/12.2.0/db_1/rdbms/admin\]$emctl stop dbconsole \[oracle@hefeidb:/oracle/app/oracle/product/12.2.0/db_1\]$/oracle/app/oracle/product/11.2.0/db_1/bin/sqlplus "/as sysdba" SQL\> SET ECHO ON; SQL\> SET SERVEROUTPUT ON; SQL\> @?/rdbms/admin/emremove.sql SQL\> @/oracle/app/oracle/cfgtoollogs/hefeidb/preupgrade/preupgrade_fixups.sql #### 升级前收集信息 ![image-20241125150211166](https://i-blog.csdnimg.cn/img_convert/5f818465fccc7405bb268a138350d6ff.png) #### 检查无效对象 SQL\> @$ORACLE_HOME/rdbms/admin/utlrp.sql ### Oracle11g升级到Oracle12c过程 用vnc连接到oracle,要在12c的环境下面运行dbua进行升级 ![image-20241125150249378](https://i-blog.csdnimg.cn/img_convert/bf5965b757da0c4caf560680ef6b81de.png) ![image-20241125150255299](https://i-blog.csdnimg.cn/img_convert/a65c51be12e6b0124f2d93bb23ecfd4b.png) ![image-20241125150300620](https://i-blog.csdnimg.cn/img_convert/bedbb5703f0cfe62fb9a492007ed33f0.png) ![image-20241125150307926](https://i-blog.csdnimg.cn/img_convert/03426c741e114a0f52954a6f95f3c706.png) ![image-20241125150317085](https://i-blog.csdnimg.cn/img_convert/80584416f0eda575beb8a68abdb0e12d.png) ### Oracle11g到Oracle12c后期检查 #### 升级后执行的脚本 再12c执行 /oracle/app/oracle/cfgtoollgs/hefeidb/preupgrade/postupgrade_fixups.sql ![image-20241125150352575](https://i-blog.csdnimg.cn/img_convert/82791c7d81c8d932cacfa1e42166d340.png) ![image-20241125150358061](https://i-blog.csdnimg.cn/img_convert/3c7ee1fc4275af796d18d99cc1703f52.png) #### 升级完成后的检查 dbupgdiag.sql ![image-20241125150414643](https://i-blog.csdnimg.cn/img_convert/ce8a223c4295d7e284d883ecf223431d.png) #### 对象检查 hcheck.sql /etc/oratab ![image-20241125150439751](https://i-blog.csdnimg.cn/img_convert/c706ec05b79916de4ed66d9d25ae11fa.png) #### show parameter compat alter system set compatble='12.2.0.1.0' scope=spfile; #### show parameter list alter system set local_listener=''; #### 启停数据库测试 ![image-20241125150533009](https://i-blog.csdnimg.cn/img_convert/f925a97ab4e80437ea9ff6047967ac23.png)

相关推荐
LiRuiJie12 分钟前
深入剖析MySQL锁机制,多事务并发场景锁竞争
数据库·mysql
2501_9153743522 分钟前
Faiss向量数据库全面解析:从原理到实战
数据库·faiss
睡觉待开机28 分钟前
0. MySQL在Centos 7环境安装
数据库·mysql·centos
2501_9153743528 分钟前
Faiss vs Milvus 深度对比:向量数据库技术选型指南
数据库·milvus·faiss
傻啦嘿哟1 小时前
Python 数据分析与可视化实战:从数据清洗到图表呈现
大数据·数据库·人工智能
cookqq2 小时前
mongodb源码分析session异步接受asyncSourceMessage()客户端流变Message对象
数据库·sql·mongodb·nosql
呼拉拉呼拉2 小时前
Redis故障转移
数据库·redis·缓存·高可用架构
什么都想学的阿超2 小时前
【Redis系列 04】Redis高可用架构实战:主从复制与哨兵模式从零到生产
数据库·redis·架构
pp-周子晗(努力赶上课程进度版)2 小时前
【MySQL】视图、用户管理、MySQL使用C\C++连接
数据库·mysql
斯特凡今天也很帅2 小时前
clickhouse常用语句汇总——持续更新中
数据库·sql·clickhouse