Jan 30, 2006

"Drop Datafile" dalam Oracle 10g Release 2

·

Salah satu fitur baru yang ditambahkan pada Oracle 10g Release 2 adalah proses penghapusan (drop) datafile dari sebuah tablespace melalui cara yang sangat sederhana. Pada versi-versi sebelumnya, kita hanya diizinkan untuk melakukan penambahan datafile ke dalam tablespace -- kita tidak diizinkan untuk menghapusnya. Bila kita ingin menghapus datafile, berarti kita juga harus menghapus tablespace bersangkutan dengan menggunakan statemen DROP TABLESPACE INCLUDING CONTENTS AND DATAFILES. Dalam artikel lain (How to 'Drop' a Datafile) juga disebutkan bahwa bila kita menuliskan statemen ALTER DATABASE DATAFILE <NamaDatafile> OFFLINE DROP, itu tidak berarti bahwa Oracle mengizinkan kita untuk menghapus datafile -- melainkan hanya untuk menjadikan datafile tersebut berada dalam keadaan OFFLINE. Berikut ini kutipan dari artikel tersebut:

NOTE:
The ALTER DATABASE DATAFILE <datafile> OFFLINE DROP command, is not meant to allow you to remove a datafile. What the command really means is that you are offlining the datafile with the intention of dropping the tablespace.


Namun, dalam versi 10g Release 2, Oracle telah menyediakan klausa DROP DATAFILE sebagai opsi pada saat kita mengeksekusi statemen ALTER TABLESPACE. Sebagai contoh, apabila kita memiliki sebuah tablespace dengan nama MYTS yang berasosiasi dengan dua buah datafile (misalnya MYTS01.DBF dan MYTS02.DBF) yang terdapat pada direktori D:\ORADATA\LATIHDB, maka kita dapat menghapus datafile kedua (MYTS02.DBF) dengan menggunakan statemen berikut:

SQL> alter tablespace myts
2 drop datafile 'd:\oradata\latihdb\myts02.dbf';

Meskipun diizinkan, namun terdapat pula beberapa batasan yang penting sekali untuk diperhatikan dalam proses penghapusan datafile. Untuk informasi lebih lengkap mengenai batasan-batasan tersebut, Anda dapat membaca dokumentasi Oracle 10g Release 2 ("Administrator's Guide", bagian: "Dropping Datafile") -- yang dapat Anda download melalui link ini.

Sebagai tambahan, bila sintak di atas kita tuliskan pada Oracle 10g Release 1 dan/atau versi sebelumnya, maka kita akan mendapatkan pesan kesalahan (error) seperti berikut:

ORA-02142: missing or invalid ALTER TABLESPACE option

0 comments: