Home > Articles > dump/restore di Oracle

dump/restore di Oracle

September 5, 2008 Leave a comment Go to comments

setelah bergelut sekian lama dengan oracle dan pusing memikirkan bagaimana mekanisme dump dan restore db di oracle layaknya pada mysql(mysqldump …. vs mysql …. ) akhirnya ketemu sudah solusi untuk dump/restore di oracle.

untuk dump di oracle menggunakan istilah export (EXP) yang binarynya bisa kita dapatka di $ORACLE_HOME/bin/exp dengan sintaks sebagai berikut :

exp oracle_user/oracle_password@sid file=nama_file

perintah diatas akan mengeksport data dari sid yang telah didefinisikan yang secara default mengarah ke oracle instance yang ada di local. lalu muncul pertanyaan, bagaimana melakukan dump/export dari oracle yang ada di server pada jaringan ???. caranya dengan mendefinisikan local naming parameter untuk sid mesin oracle server pada file tnsnames.ora. file ini secara fisik ada di $ORACLE_HOME/network/admin/tnsnames.ora.

format penulisan sid sebagai berikut :

net_service_name=
(DESCRIPTION=
(ADDRESS=(protocol_address_information))
(CONNECT_DATA=
(SERVICE_NAME=service_name)))

untuk contoh, bisa dilihat pada script berikut :

CHOIRUL_XE =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.22)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = XE)
)
)

nah untuk melakukan dump/exp tinggal jalankan exp dengan sid yang telah didefinisikan. untuk sample diatas, berikut script exportnya :

exp oracle_user/oracle_password@CHOIRUL_XE file=/home/choirul/oracle_dump.dmp

lebih jauhnya tentang local naming parameter, bisa dibaca di http://download-west.oracle.com/docs/cd/B10501_01/network.920/a96581/tnsnames.htm#496765.

untuk merestore/import database oracle kita bisa menggunakan imp yang ada di $ORACLE_HOME/bin/imp dengan sintak sebagai berikut :

imp oracle_user/oracle_password@sid file=nama_file

hal-hal laiin yang terkait dengan restore/import memiliki mekanisme teknis yang sama dengan dump/export.

nb (nambah bicara) :

dump/restore di oracle tidak bisa dilakukan oleh dua user yang berbeda. hal ini karena ketika melakukan dump, file .dmp menyimpan informasi user yang melakukan dump, sehingga hanya user yang sama yang dapat melakukan restore dari file yang di dump tersebut. sebagai contoh misalnya, user rootoracle melakukan dump dan menyimpannya pada file tertentu. file tersebut hanya akan bisa direstore oleh user rootoracle dan tidak user yang lain.

ada teknik khusus agar dump/restore bisa dilakukan oleh user yang berbeda, dengan memanfaatkan klausa FROMUSER dan TOUSER. berikut sintaks untuk melakukan dump dengan multiple user :

exp \’sys/sys_password as SYSDBA\’ file=/home/choirul/oracle_dump.dmp OWNER=oracle_user

sedangkan sintaks berikut digunakan untuk melakukan restore dari file hasil dump diatas :

imp \’sys/sys_password as SYSDBA\’ file=/home/choirul/oracle_dump.dmp FROMUSER=oracle_user TOUSER=oracle_user_new

info lebih lanjut silahkan buka alamat ini http://forums.oracle.com/forums/thread.jspa?threadID=380132

Tags: ,
  1. BIO
    October 10, 2008 at 3:01 am

    oraclenya makin canggih aja bos. Jangan lupa dishare ilmu yang lainnya ya:p.

  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: