Breaking News
recent

Migrasi Database SAP menggunakan transport tablespace


Berikut tutorial simple untuk migrasi database SAP berbeda platform. Berlaku hanya untuk Oracle versi 10g keatas. Karena HPUX dan Linux berbeda endian, maka dilakukan migrasi database menggunakan metode Transport Tablespace (TTS)
Background database SAP standar:
1.       Memiliki 3 tablespace utama yaitu: PSAPBO1USR, PSAPBO1, PSAPBO1620
2.       Memiliki 3 User yaitu : SAPBO1, SAP$BO1ADM, SAP$..
Step yang dilakukan :
1.       Menginstal SAP standar pada target (Linux Suse 10), dikarenakan database SAP standar memiliki character set tersendiri dari jerman yaitu W8DEC, character set ini tidak dimiliki oleh standar oracle. Tablespace SYSTEM, SYSAUX, UNDO tidak bisa di TTS, sehingga menggunakan default dari target
2.       Pindahkan user-user yang ada pada source ke target dengan cara generate script pada TOAD. Pada target default tablespace untuk user-user akan berubah ke SYSTEM, karena tablepsace SAPBO1USR tidak ada pada target
3.       Lakukan pengecekan   :
-          Pengecekan characterset (Source dan target harus sama):
SQL> select * from nls_database_parameters where parameter like '%SET%';
-          Pengecekan default tablespace user :
SQL> Select property_value from database_properties where property_name=’DEFAULT_PERMANENT_TABLESPACE’;
PROPERTY_VALUE
USER
SQL> Alter database default tablespace SYSTEM;
-          Pengecekan platform dan endian target:
SQL> Select d.platform_name, endian_format from v$transportable_platform tp, v$database d where tp.platform_name = d.platfrm_name;
-          Pengecekan platform dan endian TARGET yang disupport :
SQL> Select platform_name, endian_format from v$transportable_platform;
-          Pengecekan violation:
SQL> DBMS_TTS.TRANSPORT_SET_CHECK (     ts_list          IN CLOB,      incl_constraints IN BOOLEAN DEFAULT FALSE,     full_check       IN BOOLEAN DEFAULT FALSE);  SQL> EXECUTE DBMS_TTS.TRANSPORT_SET_CHECK('PSAPBO1',TRUE);

SQL> SELECT * FROM TRANSPORT_SET_VIOLATIONS;
JIka tidak terdapat violation TTS dapat dilakukan, jika ada violation, maka harus diselesaikan dahulu.
4.       Buat directory pada source dan target yang dapat diakses oleh sql*plus
-          On Source:
SQL> create directory TTSDIR as ‘/oracle/BO1/TTSDIR/’;
SQL> grant read write on directory TTSDIR to system;
-          On Target:
SQL> create directory TTSDIR as ‘/oracle/BO1/TTSDIR/’;
SQL> grant read write on directory TTSDIR to system;
5.       Rubah menjadi keadaan READ ONLY pada tablespace:
SQL> Alter tablespace PSAPBO1 read only;
SQL> Alter tablespace PSAPBO1620 read only;
SQL> Alter tablespace PSAPBO1USR read only;
6.       Export metadata dari ketiga tablespace tersebut:
-          Export metadata tablespace PSAPBO1620 dan PSAPBO1USR
Shell> expdp system/sanosuke@BO1 TRANSPORT_TABLESPACES=PSAPBO1620,PSAPBO1USR DUMPFILE=TTSAP:tts_semua.dmp LOGFILE=TTSAP:exp_semua.log
-          Export metadata tablespace PSAPBO1
Shell> expdp system/sanosuke@BO1 TRANSPORT_TABLESPACES=PSAPBO1 DUMPFILE=TTSAP:tts_3.dmp LOGFILE=TTSAP:exp_3.log
7.       Convert tablespace ke format LINUX 64-bit :
Karena export metadatanya dibagi 2, maka convert RMAN nya juga dibagi dua tahap.
-          Convert tablespace PSAPBO1620 dan PSAPBO1USR
RMAN>  convert tablespace PSAPBO1620, PSAPBO1USR to platform 'Linux IA (64-bit)' format '/oracle/BO1/TTSSAP/%N_%f';
-          Convert tablespace SAPBO1
RMAN> convert tablespace PSAPBO1 to platform 'Linux IA (64-bit)' format '/oracle/BO1/TTSSAP/%N_%f';
8.       Copy semua file hasil convert dan hasil export metadata ke folder TTSDIR di TARGET
9.       Import metadata dan datafile dengan perintah imp:
-          Import tablespace dan metadata PSAPBO1620 dan PSAPBO1USR:
impdp system/sap@SAPPOC TRANSPORT_DATAFILES='/oracle/oradata/TTSSAP/PSAPBO1USR','/oracle/oradata/TTSSAP/PSAPBO1620_17','/oracle/oradata/TTSSAP/PSAPBO1620_18','/oracle/oradata/TTSSAP/PSAPBO1620_19' DUMPFILE=TTSDIR:tts_semua.dmp LOGFILE=TTSDIR:imp_semua.log
-          Import tablespace dan metadata SAPBO1
impdp system/sap@SAPPOC TRANSPORT_DATAFILES='/oracle/oradata/TTSSAP/PSAPBO1_3','/oracle/oradata/TTSSAP/PSAPBO1_4','/oracle/oradata/TTSSAP/PSAPBO1_5','/oracle/oradata/TTSSAP/PSAPBO1_6','/oracle/oradata/TTSSAP/PSAPBO1_7','/oracle/oradata/TTSSAP/PSAPBO1_8','/oracle/oradata/TTSSAP/PSAPBO1_9','/oracle/oradata/TTSSAP/PSAPBO1_10','/oracle/oradata/TTSSAP/PSAPBO1_11','/oracle/oradata/TTSSAP/PSAPBO1_12','/oracle/oradata/TTSSAP/PSAPBO1_13','/oracle/oradata/TTSSAP/PSAPBO1_14','/oracle/oradata/TTSSAP/PSAPBO1_15' DUMPFILE=TTSDIR:tts_3.dmp LOGFILE=TTSDIR:imp_3.log
10.   Pada target, rubah kembali default tablespace pada user-user dari SYSTEM ke SAPBO1USR
11.   Pada database SAP ada terdapat 1 tabel yang berisi username dan password untuk koneksi ke SAP yang ownernya SAP$ADM dan defaulnya ke tablespace SYSTEM. Untuk memindahkannya harus dilakukan metode exp/imp dump file. Hal ini dapat dilakukan dengan TOAD.

Untuk mentest koneksi ke SAP :
1.       Masuk ke user SAP, su – BO1ADM
2.       Startsap R3
3.       SAP akan membaca database dengan default ORACLE_SID BO1
4.       R3Trans –d (Untuk pengecekan koneksi)
*Perlu dipastikan environment pada user BO1ADM sudah sesuai dengan database oracle
Untuk melihat environment dapat mengetikan: Shell> env

NOTE: Saya mencobanya di development test. Untuk production, banyak hal yang perlu diteliti lagi
jimmyrekso

jimmyrekso

Tidak ada komentar:

Posting Komentar

Diberdayakan oleh Blogger.