Mekanisme Migrasi dan Upgrade ORACLE ke Server lain dengan ZERO Downtime

Berikut ini adalah tahapan yang pernah saya lakukan dulu (waktu masih jaman 9i ke 10g, sekarang 11gR2 loh…) untuk melakukan Proses migrasi Oracle9i ke Oracle10g ke server yang berbeda dengan ZERO downtime di salah satu environment yang saya gunakan. Harap disesuaikan jika akan digunakan sebagai panduan untuk melakukan migrasi di tempat anda.

Asumsi kondisi yang ada adalah sebagai berikut :
– Server lama adalah ORACLE 9i yang berada di IP Address 10.1.4.23
– Server baru adalah yang akan dipasang di 10.1.4.118
– ZERO Downtime

Langkah-langkahnya adalah sebagai berikut :
1. Aktifkan NFS Share 10.1.4.23 untuk mountpoint /data1,/data2,/data3,/data4,/data5,/data6,/data8
2. Mount seluruh share mount point ke server 10.1.4.118
3. Copy oracle9i engine dari server 10.1.4.23 ke server 10.1.4.118, rubah ORACLE_HOME untuk user ORACLE ke oracle9i.
4. Sebelum melakukan copy seluruh datafile dari Oracle9i :
a. jalankan script online backup
b. command ‘ alter tablespace tablespace_name begin backup;’
5. Copy datafile dilakukan
a. Copy datafile dilakukan dari server 10.1.4.23 ke 10.1.4.118
b. Semua datafile di copy ke mount point /data2 dan /data3
c. Copy file berlangsung selama lebih-kurang 12jam (u/ data sebesar 2 TB)
6. Setelah copy selesai
a. online backup di tutup
b. command “alter tablespace tablespace_name end backup;”
c. Backup controlfile :
“ alter database backup controlfile to ‘/tmp/backup.ctl”
d. copy file backup tersebut ke server 10.1.4.118 dan rename file sesuaikan dengan parameter controlfile di init.ora file.
7. copy seluruh archive file yang di butuhkan ke server 10.1.4.118, seluruh file yang ter-generate mulai dari saat copy datafile di mulai, archive files tersebut di copy ke ‘/data4/oradata/SAP3/archices’ dan parameter log_archive_dest di init.ora di rubah ke /data4/oradata/SAP3/archives.
8. Lakukan recovery agar database kedua server menjadi syncron
a. Steps
– sqlplus /nolog
– sqlplus> connect / as sysdba
– sqlplus> recover database using backup controlfile until cancel;
– ketik auto
– Tunggu sampai semua archives di apply dan selesai.
9. Setelah archived files selesai di apply, database di server 10.1.4.23 di shutdown, sebelum itu lakukan force switching untuk membentuk archive file terakhir dengan menggunakan command “ alter system switch logfile”
10. Copykan archive file terakhir dan ulangi langkah 8.
11. Database ke 2 server sudah syncron, and database di activekan dari recovery mode :

Steps :
1. sqlplus /nolog
2.sqlplus>connect / as sysdba
3. rename seluruh datafiles,redolog files sesuai dengan lokasi mount point yang baru.dengan menggunakan command: ‘alter database rename file ‘source location and file_name’ to ‘destination location and file name’
4.sqlplus> alter database open resetlogs;
5. Tunggu sampai database open.
6. Selesai
12. Proses upgrade ke oracle10g
a. buat tablespace SYSAUX dengan size 500MB
b. shutdown database
c. Rubah environment user oracle menjjadi environment Oracle10g dan
re-login sbg user oracle
d. cd $ORACLE_HOME/rdbms/admin
e. sqlplus /nolog
f. sqlplus>connect /. As sysdba
g. sqlplus>startup upgrade;
h. sqlplus>catupg.sql (tunggu sampai selesai)
i. sqlplus>utlirp.sql (script untuk memvalidate semua object di oracle9i menjadi oracle10g)
j. sqlplus> shutdown immediate
k. sqlplus>startup
l. sqlplus>utlrp.sql (untuk compile semua invalid objects)
m. sqlplus>stat.sql (script untuk menanalisa semua object dan untuk semua user, script ini saya buat sendiri)
n. Selesai
13. copykan tnsnames.ora dan listener.ora dari server lama ke server baru
14. Rubah IP address
15. Proses upgrade dan migrate selesai.

Catatan :
1. database lama yang ada di server baru belum di hapus
2. mount point yg di gunakan saat ini untuk lokasi database adalah : /data2,/data3/,/data4
3. Lokasi archive files berada di /data4,

Leave a Reply

Your email address will not be published.