Membuat Banyak TABLESPACES

Pada project datacenter spasial, telah direncanakan untuk membangun sekitar 660 tablespace untuk menampung data dan index. Untuk mempermudah, syntax create tablespace telah dimasukkan kedalam sebuah script sehingga dapat jalan secara otomatis. Namun ditengah eksekusi script tersebut, terjadi error. Ternyata error tersebut disebabkan karena nilai parameter db_files yang aktif lebih kecil daripada jumlah tablespace yang akan dicreate. Supaya semua tablespace dapat dicreate, maka db_file perlu diperbesar.

SQL> alter system set db_files=1000 scope=spfile;

Scope yang bisa dipakai untuk mengubah db_files ini hanya bisa memakai scope=spfile. Karena jika memakai scope both atau memory akan terjadi error “ERROR at line 1: ORA-02095: specified initialization parameter cannot be modified”.

Setelah mengubah nilai db_files tersebut, database perlu di-restart.

SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup
ORACLE instance started.
Total System Global Area 612368384 bytes
Fixed Size 1250428 bytes
Variable Size 251661188 bytes
Database Buffers 352321536 bytes
Redo Buffers 7135232 bytes
Database mounted.
Database opened.
SQL> show parameter db_files


NAME TYPE VALUE ------------------------------------ ----------- ------------------ db_files integer 1000

Lalu jalankan script create tablespace yang sebelumnya.. n walla.. semua tablespace telah ter-create….^o^

Peringatan: pada oracle 10G nilai db_files tidak boleh lebih besar dari 65534, soalnya oracle 10g cuma dukung paling banyak 65534 db_files. Tapi bisa juga tergantung OS nya..klo di unix coba periksa pake ulimit -a.

0 komentar: