Administrasi Basis Data Bab 4: Capaian Pembelajaran. Bab 4: Advance Administration Mahasiswa mampu memahami prosedur melakukan pengelolaan lanjuta database Orcale Express 10g Agenda. Perintah Backup dan Recovery. Mengatur Database menjadi Archivelog Mode Prosedur Menyalin Database ke Mesin yang Sama Prosedur Memindahkan Database ke Mesin lain Bab 4 : Advance Administration 2 Perintah Backup dan Recovery Security Database: Administrasi Profile Untuk alasan keamanan, pemakaian resource oleh user database perlu dibatasi. Selain itu, otorisasi (password) user juga perlu diperketat. Di database Oracle, pembatasan itu dilakukan oleh profile. Untuk menampilkan informasi profile dalam database dapat menggunakan perintah berikut: SQL> conn system SQL> SELECT * FROM DBA_PROFILES ORDER BY PROFILE,RESOURCE_TYPE; Bab 4 : Advance Administration 3 Beikut adalah tampilan informasi profile. Advance Administration #1 Catatan: Ketika kita membuat database, by default Oracle membuat profile dengan nama DEFAULT. Ketika kita membuat user tanpa menyebutkan profile-nya, maka user tersebut akan di-assign ke profile DEFAULT. Bab 4 : Advance Administration 4
Bab 4 : Advance Administration 5 Mengatur Database menjadi Archivelog Mode Dalam penggunannya, semua transaksi database Oracle direcord (disimpan) di dalam log file. Memiliki aminimal ada 2 group log file. Mekanisme kerjanya sirkular, artinya bila log yang digunakan penuh, maka transaksi berikutnya akan disimpan di log berikutnya. Issue: Apabila semua log telah terisi penuh, maka log lama akan ditulis ulang (rewrite) dengan sebelumnya menghapus isi log sebelumnya. Hal ini akan menghilangkan jejak transaksi yang ada dalam log tersebut. Oleh karena itu, dalam database dengan mode archivelog, sebelum logfile ditulis ulang, isinyanya disalian (backup) terlebih dahulu ke archived log, sehingga jejak transaksi yang disimpan di log yang ditulis ulang tersebut tidak akan hilang. Archived log digunakan untuk recovery database. Bab 4 : Advance Administration 6 Apabila proses restore dilakukan dari hasil offline backup, maka data yang bisa diambil adalah data ketika off line backup dilakukan. Berbeda jika proses restore dilakukan secara online backup. Setelah file backup restore, kemudian archived log yang terbentuk setelah online backup (yang berisi rekaman transaksi) digunakan kembali (recovery), sehingga pengguna dapat mendapatkan data sampai archived log terakhir, atau sesaat sebelum terjadi bencana (kerusakan database) terjadi. Bab 4 : Advance Administration 7 Untuk memastika database sudah dalam mode archivelog, maka syntax berikut dapat digunakan. SQL> archive log list Untuk mengaktifkan mode archivelog, jalankan perintah berikut: SQL> shutdown immediate; SQL> startup mount; SQL> alter database archivelog; SQL> alter database open; Bab 4 : Advance Administration 8
Bab 4 : Advance Administration 9 Perintah alter database archivelog adalah untuk membuat mode database menjadi ARCHIVELOG. Untuk meng-archive log file dilakukan dua cara: Manual Otomatis Pilihan manual adalah jarang terjadi, kecuali untuk tujuan tertentu, misalnya belajar. Semua database production selalu memilih yang otomatis. Untuk mengotomatiskan pekerjaan archive, init parameter log_archive_start harus TRUE. Jadi harus mengaktifkan parameter tersebut di file init. Bab 4 : Advance Administration 10 Prosedur Menyalin Database ke Mesin yang Sama Menyalin database di mesin lain, itu sama saja dengan backup & recovery konvensional. Menyalin database di mesin yang sama, ada sedikit bedanya karena di satu mesin tidak boleh ada 2 (atau lebih) database yang sama, terdapat prosedur untuk mengubah nama database. Berikut ini langkah-langkahnya: Bab 4 : Advance Administration 11 1. Persiapkan (copy) init file. Contoh di sini, saya menggunakan UNIX. Di Windows, lokasi init file di %ORACLE_HOME%\database cd $ORACLE_HOME/dbs cp -rp initts2.ora inittsrep.ora 2. Persiapkan direktori untuk data file dan lainnya mkdir /data1/oracle/admin/tsrep mkdir /data1/oracle/admin/tsrep/adump mkdir /data1/oracle/admin/tsrep/bdump mkdir /data1/oracle/admin/tsrep/cdump mkdir /data1/oracle/admin/tsrep/udump mkdir /oradata/oracle/tsrep mkdir /oradata/oracle/tsrep/arc Bab 4 : Advance Administration 12
Bab 4 : Advance Administration 13 3. Persiapkan script untuk create database di database lama (source): SQL> alter database backup controlfile to trace resetlogs; Lihat trace file di directory: user_dump_dest, /data1/oracle/admin/ts2/udump SQL> sho parameter user_dump_dest Copy trace file tersebut. cd /data1/oracle/admin/ts2/udump cp ts2_ora_18762.trc /oradata/oracle/tsrep/crdbtsrep.sql Edit file crdbtsrep.sql, buang trace file entry seperti script di bawah ini. Bab 4 : Advance Administration 14 4. Salin (backup dan restore) database sumber. Jika database dalam mode NOARCHIVELOG, lakukan cold (off line) backup. Jika database dalam mode ARCHIVELOG, maka hot (on line) backup dapat dilakukan. Lihat list datafile dan tempfile yang perlu disalin. Bab 4 : Advance Administration 15 5. Persiapan sebelum menaikkan database Setting ORACLE_SID, di shell csh setenv ORACLE_SID tsrep Pada shell LINUX gunakan perintah: export ORACLE_SID=tsrep Pada command prompt WINDOWSgunakan perintah: export ORACLE_SID=tsrep Khusus di Windows, buat instance (service) pakai oradim. Pastikan bahwa file inittsrep.ora sudah dibuat. cd %ORACLE_HOME%\database oradim -NEW -SID tsrep Bab 4 : Advance Administration 16
Bab 4 : Advance Administration 17 6. Membuat (create) database SQL> @/oradata/oracle/tsrep/crdbtsrep.sql Lakukan recovery dengan specify automatic, Oracle akan mencari archived log file sendiri. SQL> RECOVER AUTOMATIC DATABASE USING BACKUP CONTROLFILE; Memindahkan Database ke Mesin Lain Prosedur: Advance Administration #4 1. Install database Oracle (versi harus sama dengan sebelumnya) di PC baru. Lokasi ORACLE_HOME tidak harus sama. 2. Copy initial (parameter) file dari disk lama ke direktory %ORACLE_HOME%\database (Windows) atau $ORACLE_HOME/dbs (Linux). Misalkan initial (parameter) file itu adalah initdataku.ora Bab 4 : Advance Administration 18 Memindahkan Database ke Mesin Lain Advance Administration #4 3. Kalau PC anda Windows, buat instance cd %ORACLE_HOME%\database set ORACLE_SID= DATAKU orapwd file=orapwdataku password=oracle entries=10 force=y oradim -NEW -SID DATAKU 4. Lakukan langkah-langkah restore seperti yang saya bahas di-restore dari off line backup. Administrasi Basis Data Bab 4: Bab 4 : Advance Administration 19
Bab 4 : Advance Administration 21 Capaian Pembelajaran. Agenda. Security Database: Administrasi Profile Bab 4: Advance Administration Mahasiswa mampu memahami prosedur melakukan pengelolaan lanjuta database Orcale Express 10g Backup Database Syntax backup sebuah database: Perintah Backup dan Recovery mysqldump --opt -u [user_name] -p [db_name] > [nama_backupfile.sql] Syntax backup > 1 database: mysqldump --opt -u [user_name] -p --databases [db_name1] [db_name2]... dst > [nama_backupfile.sql] Bab 4 : Advance Administration 22