
はじめに
こんにちは。Oracle Cloud Infrastructure検証チームです。
2025年1月度のサービス・アップデートにより、Oracle Base Database Service (BaseDB) において、Oracle DatabaseおよびGrid Infrastructureのバージョンを23aiにアップグレードできるようになりました。
そこで、今回はBaseDBで、19cから23aiへのアップグレードを検証してみました。
なお、本記事は2部構成となっており、こちらは後編としてOracle Databaseアップグレードについて記載しています。
前編は (1/2) アップグレードの概要説明~Grid Infrastructureアップグレードです!

検証
構成確認
現段階での検証用BaseDBの構成は下記の通りです。
DBシステム
- ストレージ管理ソフトウェア:Oracle Grid Infrastructure
- Oracle Databaseソフトウェア・バージョン:Enterprise Edition
アップグレード失敗時に備えて、ロールバック可能なEEを選択しています。 - DBシステム・バージョン:23.7.0.25.01
Grid Infrastructureバージョンを指します。
前編で19cから23aiにアップグレードしました。
データベース
その他
- OS:Oracle Linux 8.8
[root@test-basedb ~]# cat /etc/oracle-release Oracle Linux Server release 8.8
- ユーザー環境変数 (.bashrc)
- grid
[grid@test-basedb ~]$ cat .bashrc # .bashrc # Source global definitions if [ -f /etc/bashrc ]; then . /etc/bashrc fi # User specific environment if ! [[ "$PATH" =~ "$HOME/.local/bin:$HOME/bin:" ]] then PATH="$HOME/.local/bin:$HOME/bin:$PATH" fi export PATH # Uncomment the following line if you don't like systemctl's auto-paging feature: # export SYSTEMD_PAGER= # User specific aliases and functions ORACLE_HOME=/u01/app/19.0.0.0/grid; export ORACLE_HOME PATH=$PATH:/u01/app/19.0.0.0/grid/bin; export PATH LD_LIBRARY_PATH=/u01/app/19.0.0.0/grid/lib; export LD_LIBRARY_PATH ORACLE_SID=+ASM1; export ORACLE_SID ## WARNING!! Modifying this file can cause failures in API/CLI provided by Cloud Tooling!! ORACLE_HOME=/u01/app/23.0.0.0/grid; export ORACLE_HOME PATH=$PATH:/u01/app/23.0.0.0/grid/bin; export PATH LD_LIBRARY_PATH=/u01/app/23.0.0.0/grid/lib; export LD_LIBRARY_PATH
- oracle
[oracle@test-basedb ~]$ cat .bashrc # .bashrc # Source global definitions if [ -f /etc/bashrc ]; then . /etc/bashrc fi # User specific environment if ! [[ "$PATH" =~ "$HOME/.local/bin:$HOME/bin:" ]] then PATH="$HOME/.local/bin:$HOME/bin:$PATH" fi export PATH # Uncomment the following line if you don't like systemctl's auto-paging feature: # export SYSTEMD_PAGER= # User specific aliases and functions ORACLE_HOME=/u01/app/oracle/product/19.0.0.0/dbhome_1; export ORACLE_HOME PATH=$PATH:/u01/app/oracle/product/19.0.0.0/dbhome_1/bin; export PATH LD_LIBRARY_PATH=/u01/app/oracle/product/19.0.0.0/dbhome_1/lib; export LD_LIBRARY_PATH ORACLE_UNQNAME=CDB_TEST;export ORACLE_UNQNAME ORACLE_SID=CDB; export ORACLE_SID ## WARNING!! Modifying this file can cause failures in API/CLI provided by Cloud Tooling!!
- grid
- SQL*Plusバージョン:19.26.0.0.0
[oracle@test-basedb ~]$ sqlplus / as sysdba SQL*Plus: Release 19.0.0.0.0 - Production on Tue Mar 25 10:44:19 2025 Version 19.26.0.0.0 Copyright (c) 1982, 2024, Oracle. All rights reserved. Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.26.0.0.0 SQL>
Oracle Databaseアップグレード
Grid Infrastructureバージョンを23aiにアップグレードし、前提条件が揃いました。
続いて、Oracle Databaseバージョンを19cから23aiにアップグレードします。
事前チェック
GIと同様、まずは事前チェックを実施します。
[データベースの詳細] ページのバージョン情報「データベースのバージョン」の [表示] リンクを押下します。
使用可能なOS・Grid Infrastructure・Oracle Databaseのパッチおよびアップグレードが表示されています。
「データベース: <CDB名>」のリスト内に、使用可能なバージョン23aiのDBアップグレードがあることを確認し、右部のミートボールメニューを開いて [事前チェック] を押下します。
今回は、検証時点で最新の23.7.0.25.01を選択しています。
データベースの状態が「アップグレード中」となっていますが、実際には事前チェック処理を実行しているだけなので問題ありません。
DBシステムおよびノードの状態は「使用可能」のままです。
15分ほどで事前チェックが完了しました。
事前チェックに成功すると、 [データベースの詳細] ページの上部に正常に完了した旨のメッセージが表示されます。
先ほどの [更新] ページを確認すると、状態が「使用可能」に戻り、事前チェックの終了時刻が表示されています。
[更新履歴] ページでは、事前チェックの結果を確認できます。DBアップグレード
問題なくアップグレード可能なことが確認できたため、Oracle Databaseのアップグレードを実行します。
[更新] ページから、事前チェックを実施したDBアップグレードのミートボールメニューを開いて [アップグレード] を押下します。
手動バックアップを取得していなかったため、アップグレード前に一度作成することを薦められました。
自動バックアップ取得後だったのですが、念のため手動バックアップを作成しました。
改めて、[更新] ページから [アップグレード] を押下すると、最後に作成された自動バックアップが表示されるようになりました。
[アップグレード] を押下します。
再びデータベースの状態が「アップグレード中」となっています。
DBシステムおよびノードの状態は「使用可能」のままです。
3時間30分ほどでDBアップグレードが完了しました。
[更新] ページを確認すると、「データベース: <CDB名>」のリストから、アップグレード後のバージョン以前のアイテムがなくなっています。
以上で、Oracle Database 23aiへのアップグレードは完了です。
DBアップグレード後確認
[データベースの詳細] ページの「データベースのバージョン」が23.7.0.25.01に変化しました。GIアップグレードと同様、oracleユーザーの.bashrcに、23aiの環境変数が追加されています。
[oracle@test-basedb ~]$ cat .bashrc
# .bashrc
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
# User specific environment
if ! [[ "$PATH" =~ "$HOME/.local/bin:$HOME/bin:" ]]
then
PATH="$HOME/.local/bin:$HOME/bin:$PATH"
fi
export PATH
# Uncomment the following line if you don't like systemctl's auto-paging feature:
# export SYSTEMD_PAGER=
# User specific aliases and functions
PATH=$PATH:/u01/app/oracle/product/19.0.0.0/dbhome_1/bin; export PATH
## WARNING!! Modifying this file can cause failures in API/CLI provided by Cloud Tooling!!
ORACLE_HOME=/u01/app/oracle/product/23.0.0.0/dbhome_2; export ORACLE_HOME
PATH=$PATH:/u01/app/oracle/product/23.0.0.0/dbhome_2/bin; export PATH
LD_LIBRARY_PATH=/u01/app/oracle/product/23.0.0.0/dbhome_2/lib; export LD_LIBRARY_PATH
ORACLE_UNQNAME=CDB_TEST;export ORACLE_UNQNAME
ORACLE_SID=CDB; export ORACLE_SID
envコマンドで表示される環境変数は23aiのものに置き換わっていました。
[oracle@test-basedb ~]$ env | grep ORA ORACLE_UNQNAME=CDB_TEST ORACLE_SID=CDB ORACLE_HOME=/u01/app/oracle/product/23.0.0.0/dbhome_2 [oracle@test-basedb ~]$ env | grep PATH LD_LIBRARY_PATH=/u01/app/oracle/product/23.0.0.0/dbhome_2/lib PATH=/home/oracle/.local/bin:/home/oracle/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/u01/app/oracle/product/19.0.0.0/dbhome_1/bin:/u01/app/oracle/product/23.0.0.0/dbhome_2/bin
また、SQL*Plusバージョンが23.0.0.0.0に変化しています。
[oracle@test-basedb ~]$ sqlplus / as sysdba
SQL*Plus: Release 23.0.0.0.0 - for Oracle Cloud and Engineered Systems on Tue Mar 25 18:36:10 2025
Version 23.7.0.25.01
Copyright (c) 1982, 2024, Oracle. All rights reserved.
Connected to:
Oracle Database 23ai Enterprise Edition Release 23.0.0.0.0 - for Oracle Cloud and Engineered Systems
Version 23.7.0.25.01
SQL>
ここからは、アップグレード前に作成した自動バックアップを使用して、データベースを以前の状態に戻せなくなっていることを確認します。
自動バックアップの作成終了時刻を確認し、 [データベースの詳細] ページの上部メニューから [リストア] を押下します。
下記のエラーメッセージが表示されました。
For an upgraded database, a restore cannot be performed to the timestamp before the upgrade.
アップグレードされたデータベースの場合、アップグレード前のタイムスタンプへのリストアは実行できません。
ちなみに、アップグレード前に作成した手動バックアップを使用してリストアしようとした場合も、同様のエラーメッセージが表示されました。
おわりに
今回はOCIコンソールから、BaseDBのGrid InfrastructureおよびOracle Databaseを、19cから23aiにアップグレードしてみました。
アップグレードは、既存のBaseDB構成を維持したまま、非常にシンプルな工程で23aiのBaseDBを作り出せる点が長所だと思いました。
23aiの検証環境を作成方法として検討してみてはいかがでしょうか。
最後までお読みいただき、ありがとうございました。
前編は (1/2) アップグレードの概要説明~Grid Infrastructureアップグレードです!
Oracle 23aiの各種記事はこちら!
お問い合わせはこちら!

投稿者プロフィール

-
DBひとりでできるもんを盛り上げるべく、技術チームが立ち上がり早8年。ひとりでできるもんと言いつつ、技術者が読んでプッとなるような、極めてピンポイントでマニアックな技術ネタを執筆しています!
最新技術情報や資格情報をチェックしたいアナタ!毎日遊びに来てください。きっとお役に立てます。
Oracle Cloud2025年4月22日[Oracle Cloud]BaseDBを19cから23aiにアップグレードしてみました (2/2) Oracle Databaseアップグレード
Oracle Cloud2025年4月22日[Oracle Cloud]BaseDBを19cから23aiにアップグレードしてみました (1/2) Grid Infrastructureアップグレード
23ai2025年4月17日【Oracle 23ai 新機能】エラー詳細の表示機能を紹介
Oracle Cloud2025年4月15日[Oracle Cloud] Windows Server 2022 の日本向け設定