ارتقا PDB به نسخه 21c به روشهای مختلفی قابل انجام است که قبلا نحوه انجام ان را با کمک قابلیت Replay Upgrade توضیح دادیم. یکی دیگر از روشهای انتقال و ارتقا PDB به نسخه 21c، ابزار AutoUpgrade است که در این متن با استفاده از این ابزار، PDB را به نسخه 21c ارتقا خواهیم داد.
این ابزار در مقایسه با Replay Upgrade، نیاز به مداخله DBA را به حداقل می رساند برای مثال، در روش Replay Upgradeء، DBA موظف بود PDB را به نسخه بالاتر plug کند در صورتی که در زمان استفاده از ابزار AutoUpgrade، حتی این کار هم به صورت خودکار انجام خواهد شد و DBA صرفا باید با ایجاد فایل پیکربندی، CDB مبدا و مقصد و همچنین نام PDB را مشخص کند.
در ادامه از ابزار AutoUpgrade استفاده کرده و PDBای را از نسخه 19c به نسخه 21c انتقال و ارتقا خواهیم داد.
مرحله اول: فایل پیکربندی Autoupgrade را متناسب با محیطی که در آن هستیم، ایجاد می کنیم. قرار است pdb19c را به نسخه 21c ارتقا دهیم بنابرین مشخصات CDB19c و CDB21c را در قسمت زیر و در فایل کانفیگ AutoConfig.sh ثبت می کنیم:
[oracle@oLinux7 ~]$ vi AutoConfigPDB.sh
global.autoupg_log_dir=/home/oracle/pdbUpgrade
pdb21c.source_home=/oracle19c/home
pdb21c.target_home=/oracle21c/home
pdb21c.target_version=21.3.0
pdb21c.sid=cdb19c
pdb21c.pdbs=PDB19c
pdb21c.log_dir=/home/oracle/pdbUpgrade
pdb21c.target_cdb=db21c
ایجاد دایرکتوری تعیین شده برای پارامتر log_dir:
[oracle@oLinux7 ~]$ mkdir -p /home/oracle/pdbUpgrade
مرحله دوم: پس از تنظیم متغیر محیطی مربوط به اوراکل 21c، دستور AutoUpgrade را در فاز ANALYZE اجرا می کنیم:
* انجام این مرحله نیازی به downtime ندارد.
[oracle@oLinux7 ~]$ java -jar /oracle21c/home/rdbms/admin/autoupgrade.jar -config /home/oracle/AutoConfigPDB.sh -mode ANALYZE
AutoUpgrade tool launched with default options
Processing config file …
+——————————–+
| Starting AutoUpgrade execution |
+——————————–+
1 databases will be analyzed
Type ‘help’ to list console commands
upg>
با اجرای دستور lsj در خط فرمان upg>، میزان پیشرفت مرحله ANALYZE را مشاهده می کنید:
upg> lsj
با پایان یافتن پروسه ANALYZE، پیام زیر در خط فرمان مشاهده خواهد شد:
upg> Job 100 completed
——————- Final Summary ——————–
Number of databases [ 1 ]
Jobs finished [1]
Jobs failed [0]
Jobs pending [0]
Please check the summary report at:
/home/oracle/pdbUpgrade/cfgtoollogs/upgrade/auto/status/status.html
/home/oracle/pdbUpgrade/cfgtoollogs/upgrade/auto/status/status.log
خطایی در این مرحله گزارش نشده، ضمنا قسمتی از LogFile ایجاد شده به فرمت html را در قسمت زیر مشاهده می کنید:
مرحله سوم: برای انجام گام نهایی نیاز است تا دستور Autoupgrade را در مود deploy اجرا کنیم:
[oracle@oLinux7 ~]$ java -jar /oracle21c/home/rdbms/admin/autoupgrade.jar -config /home/oracle/AutoConfigPDB.sh -mode deploy
AutoUpgrade tool launched with default options
Processing config file …
+——————————–+
| Starting AutoUpgrade execution |
+——————————–+
1 databases will be processed
Type ‘help’ to list console commands
upg>lsj
بعد از انجام فاز Deploy، پیام زیر در خط فرمان نمایش داده خواهد شد:
upg> Job 101 completed
——————- Final Summary ——————–
Number of databases [ 1 ]
Jobs finished [1]
Jobs failed [0]
Jobs pending [0]
Please check the summary report at:
/home/oracle/pdbUpgrade/cfgtoollogs/upgrade/auto/status/status.html
/home/oracle/pdbUpgrade/cfgtoollogs/upgrade/auto/status/status.log
با مشاهده متن html ایجاد شده در مرحله Deploy، تایید می شود که عملیات ارتقا به درستی انجام شده است:
PDB19c در دیتابیس 21c به صورت نرمال open شده است بنابرین ارتقا به درستی انجام شده است:
[oracle@oLinux7 ~]$ sqlplus “/as sysdba”
SQL*Plus: Release 21.0.0.0.0 – Production on Sat Oct 9 07:45:51 2021
Version 21.3.0.0.0
SQL> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED
———- —————————— ———- ———-
2 PDB$SEED READ ONLY NO
3 PDB19C READ WRITE NO
5 PDB1 READ WRITE NO