Oracle 19C RAC升级到 26ai RAC
1.升级简介
步骤:
- 解压grid,然后在新的目录上安装grid后升级替换。
- 安装26ai的database,然后将19c的database升级过来。
注意点:
- 26ai没有noncdb,建议先把noncdb改造为cdb后再做升级。
- cdb要启用闪回区(20G以上)、归档日志,才能升级。
- 升级时间较长,要预留足够时间。
2.下载安装包
https://www.oracle.com/database/technologies/oracle26ai-linux-downloads.html

3.升级grid
3.1.升级前准备
root用户创建安装目录(所有节点)
bash
mkdir -p /u01/app/26.1.0/grid
chown grid:oinstall /u01/app/26.1.0/grid
用grid用户解压缩grid安装包到/u01/app/26.1.0/grid路径下(1个节点)
bash
su - grid
cp /tmp/LINUX.X64_2326100_grid_home.zip /u01/app/26.1.0/grid/
cd /u01/app/26.1.0/grid/
unzip LINUX.X64_2326100_grid_home.zip
查看磁盘组兼容性,必须是19.0.0.0以上
bash
SELECT name, compatibility, database_compatibility FROM v$asm_diskgroup;
ALTER DISKGROUP OCR SET ATTRIBUTE 'compatible.rdbms' = '19.0.0.0';
ALTER DISKGROUP FRA SET ATTRIBUTE 'compatible.rdbms' = '19.0.0.0';
ALTER DISKGROUP DATA SET ATTRIBUTE 'compatible.rdbms' = '19.0.0.0';


配置时间服务(26ai已经不用ctss)
bash
dnf install chrony
vi /etc/chrony.conf
#添加以下2个配置
allow 192.168.0.0/16
server 192.168.35.252 iburst
#重启
systemctl restart chronyd
systemctl status chronyd
systemctl enable chronyd
3.2.可视化升级
用grid用户登录可视化界面
bash
cd /u01/app/26.1.0/grid/
./gridSetup.sh -upgrade
(我用的是redhat 8.8,在支持列表里面,但是还是会报不兼容,跳过)










修改环境变量
bash
[root@rac1 bin]# su - grid
[grid@rac1 ~]$ vi .bash_profile
export ORACLE_HOME=/u01/app/26.1.0/grid
[grid@rac1 ~]$ . .bash_profile
[grid@rac1 ~]$ crsctl query crs activeversion
Oracle Clusterware active version on the cluster is [23.0.0.0.0]

4.升级database
4.1.安装26ai database
全部节点上创建目录
bash
su - oracle
mkdir -p /u01/app/oracle/product/26.1.0/dbhome_1
安装compat-openssl10
bash
dnf install compat-openssl10
解压安装文件
bash
cp /tmp/LINUX.X64_2326100_db_home.zip /u01/app/oracle/product/26.1.0/dbhome_1/
cd /u01/app/oracle/product/26.1.0/dbhome_1
unzip LINUX.X64_2326100_db_home.zip
可视化安装database软件
bash
cd /u01/app/oracle/product/26.1.0/dbhome_1/
./runInstaller









4.2.升级到26ai
4.2.1.配置 AutoUpgrade
bash
cd /u01/app/oracle/product/26.1.0/dbhome_1/rdbms/admin
cat > config.txt <<EOF
global.autoupg_log_dir=/tmp
global.target_home=/u01/app/oracle/product/26.1.0/dbhome_1
global.target_version=26.1.0
upg1.sid=orclcbd1
upg1.source_home=/u01/app/oracle/product/19.3.0/dbhome_1
upg1.target_home=/u01/app/oracle/product/26.1.0/dbhome_1
upg1.log_dir=/tmp
upg1.upgrade_node=rac1
upg1.run_utlrp=yes
upg1.timezone_upg=yes
EOF
4.2.2.执行 AutoUpgrade
1. 分析阶段
bash
/u01/app/oracle/product/26.1.0/dbhome_1/jdk/bin/java -jar autoupgrade.jar -config config.txt -mode analyze
用lsj命令可以查看运行情况


查看日志,可以升级

2. 部署阶段(升级数据库)
该步骤运行很久(大约2小时),建议在服务器上本地运行,尽量不远程。如果中断了,要从头开始,可以直接重复执行命令。
bash
/u01/app/oracle/product/26.1.0/dbhome_1/jdk/bin/java -jar autoupgrade.jar -config config.txt -mode deploy


升级成功
