DATABASE CONTROL 1. SECURITY DATABASE. Suzan Agustri 81

dokumen-dokumen yang mirip
PENGONTROLAN BERBASIS KOMPUTER

PENGONTROLAN BERBASIS KOMPUTER

TSI Perbankan MANAJEMEN DATA LOCK. Obyektif : 1. Mengetahui konsep lock 2. Mengetahui konsep share pada file database. AS/400 hal. B.

PENDAHULUAN PENDAHULUAN TRANSAKSI TRANSAKSI TRANSAKSI 24/04/2016 TEKNIK RECOVERY

PENGONTROLAN KONKURENSI

Gambar Layar pertama untuk pemecahan masalah Lost Update

PENGAMANAN SISTEM basis DAta

DATA INTEGRITY/KEINTEGRITASAN DATA

Manajemen Sistem Basis Data Integrity dan Security. Lintang Yuniar Banowosari

LINGKUNGAN DATABASE Baca R Modifikasi R -

SISTEM BASIS DATA 2. WAHYU PRATAMA, S.Kom., MMSI.

Manajemen Transaksi (Penjadwalan & Kontrol konkurensi)

Backup & Recovery System. Teknik Informatika

Perangkat keras Kebakaran, banjir, bom, pencurian, listrik, gempa, radiasi, kesalahan mekanisme keamanan

7. Penggunaan high level data model seperti ER/EER model merupakan kegiatan yang

KEAMANAN KOMPUTER. Pertemuan 12

Manajemen Transaksi. Sistem Basis Data. Gentisya Tri Mardiani, S.Kom

SISTEM BASIS DATA 2. WAHYU PRATAMA, S.Kom., MMSI.

BAB 3 ANALISIS DAN PERANCANGAN SISTEM

Praktikum MONITORING AND RESOLVING LOCK CONFLICTS. Tujuan :

LINGKUNGAN DATABASE LANJUTAN

Andi Dwi Riyanto, M.Kom

TEKNIK RECOVERY (ref. Fundamentals of DB Systems, Elmasri, N)

BAB 4 IMPLEMENTASI DAN EVALUASI

BAB VI PROTEKSI DATA (DATABASE CONTROL)

DISTRIBUTED TRANSACTIONS

RECOVERY SYSTEM. Sistem Basis Data. Gentisya Tri Mardiani, S.Kom., M.Kom

Administrasi Basis Data. Transaksi dan Lock. Yoannita

BAB 4 IMPLEMENTASI DAN EVALUASI

MERANCANG WEB DATA BASE UNTUK CONTENT SERVER

RECOVERY SYSTEM. Alif Finandhita, S.Kom

Database Security. Kelompok 1 TEKNIK INFORMATIKA UIN SUSKA 2015

SISTEM BASIS DATA By Novareza Klifartha

BAB 1 PENDAHULUAN. satu hal yang sangat dominan dan terjadi dengan sangat pesat. Informasi

SATUAN ACARA PERKULIAHAN MATA KULIAH SISTEM BASIS DATA 2 (D3/SI) * KODE / SKS KK / 2 SKS

Concurrency Control Semester Ganjil 2014 Fak. Teknik Jurusan Teknik Informatika. Caca E. Supriana, S.Si.,MT. Si

ARSITEKTUR SISTEM. Alif Finandhita, S.Kom, M.T. Alif Finandhita, S.Kom, M.T 1

MANAJEMEN TRANSAKSI. Alif Finandhita, S.Kom

LINGKUNGAN BASIS DATA

RECOVERY SYSTEM. Sistem Basis Data. Gentisya Tri Mardiani, S.Kom

PENGANTAR BASIS DATA

BAB 3 ANALISIS DAN PERANCANGAN SISTEM

Penguncian pada Concurrency Control

BAB I PENDAHULUAN : SISTEM BASIS DATA

KEAMANAN SISTEM BASIS DATA

SISTEM BASIS DATA 1. WAHYU PRATAMA, S.Kom., MMSI.

Distributed System. 9 Concurrency Control. Genap 2011/2012. Dahlia Widhyaestoeti, S.Kom dahlia74march.wordpress.

BAB 4 IMPLEMENTASI DAN EVALUASI. maka diperlukan suatu jaringan LAN yang terhubung antara komputer yang satu

PERTEMUAN 12 Keamanan dan Administrasi Database. (Chap. 20 Conolly)

MANAGEMEN TRANSAKSI. Ferdi Yusuf #1

Manajemen Transaksi. Sistem Basis Data. Gentisya Tri Mardiani, S.Kom., M.Kom

MODUL 10 TRANSACTION

SISTEM BASIS DATA BACKUP DAN RECOVERY. Backup Data. Restore Data. DENI HERMAWAN Informatika

Database Security BY NUR HIDAYA BUKHARI PRODI TEKNIK INFORMATIKA DAN KOMPUTER UNIVERSITAS NEGERI MAKASSAR 2012

PENGANTAR BASIS DATA

Transaksi Semester Ganjil 2014 Fak. Teknik Jurusan Teknik Informatika. Caca E. Supriana, S.Si.,MT. Si

Transaksi. by: Ahmad Syauqi Ahsan

MERANCANG WEB DATA BASE UNTUK CONTENT SERVER

LATAR BELAKANG IBM San Jose Research Laboratory.

Administrasi Basis Data. Yoannita

SEKOLAH TINGGI MANAJEMEN INFORMATIKA & KOMPUTER JAKARTA STI&K SATUAN ACARA PERKULIAHAN

Tambahkan kolom JKEL dengan panjang 1 char pada tabel MHS, maka Syntax SQL adalah...

SISTEM BASIS DATA. Pendahuluan. Gentisya Tri Mardiani, S.Kom.,M.Kom

SECURITY SYSTEM BASIS DATA

Ada dua cara untuk melakukan backup dan pemulihan Oracle: Recovery Manager dan dikelola pengguna backup dan pemulihan.

SISTEM BASIS DATA. Pendahuluan. Gentisya Tri Mardiani, M.Kom

Konsep Sistem Informasi B


PERTEMUAN 2 LANJUTAN PERANCANGAN DATABASE DAN DBMS

SATUAN ACARA PERKULIAHAN (SAP)

6/26/2011. Database Terdistribusi. Database Terdesentralisasi

PENGANTAR BASIS DATA

PROSES PERANCANGAN BASIS DATA

PERTEMUAN 2 LANJUTAN PERANCANGAN DATABASE DAN DBMS

MODUL PERKULIAHAN. Basis Data. Keamanan Basis Data. Fakultas Program Studi Tatap Muka Kode MK Diterjemahkan dan disusun oleh

PROTEKSI DATA (DATABASE CONTROL)

Oracle Academic Initiative

PENGAMANAN BASIS DATA. Sistem Keamanan Teknologi Informasi

SEKOLAH TINGGI MANAJEMEN INFORMATIKA & KOMPUTER JAKARTA STI&K SATUAN ACARA PERKULIAHAN

PERTEMUAN 9 MANIPULASI DATA

Mengapa masalah keamanan basis data menjadi penting? Kemampuan menyediakan informasi dengan cepat dan akurat, merupakan kebutuhan dalam

Bab 5 Data Control Language dan Teknik Normalisasi

Pemodelan Basis Data. Rima Dias Ramadhani, S.Kom., M.Kom Wa:

BAB III LANDASAN TEORI. Jasa akan selalu melekat pada sumbernya atau pada penjualnya. Dengan

BAB III 3. LANDASAN TEORI. manajemen dan individu lain terhadap kejadian-kejadian internal dan eksternal

Tujuan Instruksional Khusus :

Kusnawi, S.Kom, M.Eng

Manajemen Transaksi. Praktikum Sistem Basis Data. Gentisya Tri Mardiani, S.Kom., M.Kom

SEKOLAH TINGGI MANAJEMEN INFORMATIKA & KOMPUTER JAKARTA STI&K SATUAN ACARA PERKULIAHAN

DEADLOCK & RECOVERY SYSTEM

DISTRIBUTED TRANSACTIONS. Willy Sudiarto Raharjo

Mekanisme Penanganan Deadlock Dalam Pemrosesan Transaksi Oleh DBMS Menggunakan Algoritma Backtracking

SISTEM MANAJEMEN FILE. Haryono Setiadi, ST, M.Eng D3 Ilkom UNS

Nama : Putra Adi Nugraha dan Priska Kalista Kelas : B

BAB 2 TINJAUAN PUSTAKA

DATABASE LINGKUNGAN DATABASE

Database dalam Sistem Terdistribusi

Distributed System. 8 Management Transaksi. Genap 2011/2012. Dahlia Widhyaestoeti, S.Kom dahlia74march.wordpress.

Konsep Backup dan Recovery. By: Arif Basofi

Transaction & Conccurency

Transkripsi:

DATABASE CONTROL 1. SECURITY DATABASE Authorization Authorization merupakan pemberian hak akses yang mengizinkan sebuah subyek mempunyai akses secara legal terhadap sebuah sistem atau obyek. Subyek Obyek user atau program basis data, tabel, view, application, procedure, atau obyek lainnya yang dibuat di dalam sebuah sistem Jenis-jenis hak akses (privileges) Penggunaan nama basis data yang spesifik Select (retrieve) data Membuat tabel (obyek lainnya) Update data, delete data, insert data (bisa untuk kolom-kolom tertentu) Menghasilkan output yang tidak terbatas dari operasi query (user tidak dibatasi untuk mengakses record tertentu) Menjalankan prosedur khusus dan utilitas program Membuat basis data Membuat (dan memodifikasi) DBMS user identifiers dan authorized identifiers jenis lainnya Anggota dari sebuah kelompok atau kelompok-kelompok user Views (Subschemas) Hasil yang dinamik dari satu atau lebih operasi relasi yang beroperasi pada relasi dasar untuk menghasilkan relasi lainnya disebut sebagai view (subschemas). View merupakan virtual relation yang tidak secara nyata ada di dalam sebuah basis data, tetapi dihasilkan atas permintaan pemakai secara khusus. Backing Up Backing up merupakan proses yang secara periodik menyalin basis data dan menjurnal (serta memprogram) ke dalam media penyimpanan offline Journaling Journaling merupakan proses penyimpanan dan pemeliharaan sebuah jurnal atau log seluruh perubahan terhadap basis data agar dapat me-recover secara efektif jika terjadi kegagalan. Checkpointing Checkpointing merupakan titik temu sinkronisasi antara basis data dan transaksi log file. Seluruh data yang disimpan di tempat sementara akan disimpan di media penyimpanan kedua. Suzan Agustri 81

Integrity Pengontrolan integritas juga membantu memelihara sistem basis data yang aman dengan mencegah data dari invalid Encryption Enkripsi merupakan penyandian (encoding) data dengan menggunakan algoritma khusus yang merubah data menjadi tidak dapat dibaca oleh program apapun tanpa mendeskripsikannya. 2. CONCURRENCY Hampir semua DBMS adalah sistem multi user. Sistem seperti ini memerlukan mekanisme pengontrolan konkuren. Tujuan dari mekanisme ini adalah untuk menjamin bahwa transaksi-transaksi yang konkuren tidak saling menggangu operasinya masing-masing. Jika transaksi-transaksi yang menggunakan record yang sama maka akan terdapat beberapa masalah yang akan timbul dalam menjalankan transaksi-transaksi yang konkuren. Tiga masalah yang umum adalah: a. Masalah Kehilangan Modifikasi Baca R t1 - - t2 Baca R Modifikasi R t3 - - t4 Modifikasi R - Transaksi A membaca R pada t1, transaksi B membaca R pada t2. Transaksi A memodifikasi R pada t3. Transaksi B memodifikasi record yang sama pada t4. Modifikasi dari transaksi A akan hilang karena transaksi B akan memodifikasi R tanpa memperhatikan modifikasi dari transaksi A pada t3. b. Masalah Modifikasi Sementara Masalah ini timbul jika transaksi membaca suatu record yang sudah dimodifikasi oleh transaksi lain tetapi belum terselesaikan (uncommited), terdapat kemungkinan kalau transaksi tersebut dibatalkan (rollback). Suzan Agustri 82

- t1 modifikasi R Baca R t2 - - t3 rollback Transaksi B memodifikasi record R pada t1 Transaksi A membaca R pada t2 Pada saat t3 transaksi B dibatalkan Maka transaksi A akan membaca record yang salah - t1 Modifikasi R Modifikasi R t2 - - t3 Rollback Pada waktu t2 transaksi A memodifikasi R Karena transaksi B dibatalkan pada waktu t3, maka transaksi A memodifikasi record yang salah. Suzan Agustri 83

c. Masalah Analisis yang Tidak Konsisten Nilai 1 = 40 Nilai 2 = 50 Nilai 3 = 30 Baca nilai 1(40) t1 - juml = 40 - Baca nilai 2 (50) t2 - juml = 90 - - t3 Baca nilai 3 (30) - t4 Modifikasi nilai 3-30 20 - t5 Baca nilai 1 (40) - t6 Modifikasi nilai 1-40 50 - t7 Commit - Baca nilai 3 (20) t8 juml = 110 (bukan 120) - Transaksi A menjumlahkan nilai 1, nilai 2 dan nilai 3 Transaksi B nilai 1 +10 ; nilai 3-10 Pada waktu t8, transaksi A membaca nilai yang salah karena nilai 1 sudah dimodifikasi menjadi 50 (transaksi B sudah melakukan commit sebelum transaksi A membaca nilai 1) Keterangan: Commit adalah operasi yang menyatakan bahwa suatu transaksi sudah terselesaikan/sukses (successfull end-of-transaction). Rollback adalah operasi yang menyatakan bahwa suatu transaksi dibatalkan (unsuccessfull end-oftransaction). Suzan Agustri 84

Locking Locking adalah salah satu mekanisasi pengontrol konkuren. Konsep dasar: pada saat suatu transaksi memerlukan jaminan kalau record yang diinginkan tidak akan berubah secara mendadak, maka diperlukan kunci untuk record tersebut. Fungsi kunci (lock) adalah menjaga record tersebut agar tidak dimodifikasi transaksi lain. Cara kerja dari kunci: 1. Pertama kita asumsikan terdapat 2 macam kunci: - Kunci X: kunci yang eksklusif. - Kunci S: kunci yang digunakan bersama-sama. 2. Jika transaksi A menggunakan kunci X pada record R, maka permintaan dari transaksi B untuk suatu kunci pada R ditunda, dan B harus menungggu sampai A melepaskan kunci tersebut. 3. Jika transaksi A menggunakan kunci S pada record R, kemudian terdapat kondisi: a. Bila transaksi B ingin menggunakan kunci X, maka B harus menunggu sampai A melepaskan kunci tersebut. b. Bila transaksi B ingin menggunakan kunci S, maka B dapat menggunakan kunci S bersama A. Tabel Kunci: X S - X = kunci X X N N Y S = kunci S S N Y Y N = No - Y Y Y Y = Yes 4. Bila suatu transaksi hanya melakukan pembacaan saja, secara otomatis memerlukan kunci S baca (S) Bila transaksi tersebut ingin memodifikasi record maka secara otomatis memerlukan kunci X memodifikasi (X) Bila transaksi tersebut sudah menggunakan kunci S, setelah itu akan memodifikasi record, maka kunci S akan dinaikan ke level kunci X. 5. Kunci X dan kunci S akan dilepaskan pada saat synchpoint (synchronization point). Synchpoint menyatakan akhir dari suatu transaksi dimana basis data berada pada keadaan yang konsisten. Bila synchpoint ditetapkan maka: - Semua modifikasi program menjalankan operasi commit atau rollback. - Semua kunci dari record dilepaskan. Suzan Agustri 85

Masalah Kehilangan Modifikasi Baca R t1 - (kunci S) - - t2 Baca R - (kunci S) Modifikasi R t3 - (kunci X) - Tunggu - : t4 Modifikasi R : (kunci X) : Tunggu : : : : Tunggu Tunggu Pada waktu t3, transaksi A memerlukan kunci X, maka transaksi A harus menunggu sampai B melepaskan kunci S. Transaksi B juga harus menunggu pada t4 Maka tidak akan ada yang kehilangan modifikasi, tetapi terdapat keadaan baru yaitu DEADLOCK. Masalah Modifikasi Sementara - t1 modifikasi R - (kunci X) Baca R t2 - kunci (S) - Tunggu - : t3 Synchpoint : (kunci X dilepas) Tunggu - Baca R kembali t4 - (kunci S) - Suzan Agustri 86

- t1 Modifikasi R - (kunci X) Modifikasi R t2 - kunci (X) - Tunggu - : t3 Synchpoint : (kunci X dilepas) Tunggu - Modifikasi R t4 - (kunci X) - Transaksi A pada t2 tidak dapat dijalankan langsung, tetapi harus menunggu sampai B melepas kunci X. Bila B sudah mencapai synchpoint, maka kunci X dilepaskan dan A dapat meneruskan prosesnya. Maka transaksi A tidak akan terjasi kesalahan dalam membaca, karena sudah mencapai synchpoint. Suzan Agustri 87

Masalah Analisa yang Tidak Konsisten Nilai 1 = 40 Nilai 2 = 50 Nilai 3 = 30 Baca nilai 1 t1 - (40) (kunci S) - jml = 40 - Baca nilai 2 t2 - (50) (kunci S) - jml = 90 - - t3 Baca nilai 3 (30) - (kunci S) - t4 Modifikasi nilai 3 - (kunci X) - 30 20 - t5 Baca nilai 1 (40) - (kunci S) - t6 Modifikasi nilai 1 - (kunci X) - Tunggu Baca nilai 3 t7 : (20) (kunci S) : Tunggu Tunggu : Transaksi B pada t6 tidak diijinkan, karena memerlukan kunci X maka B harus menunggu sampai A melepaskan kunci S kepada nilai 1. Pada t7 transaksi A juga tidak dapat langsung dilaksanakan, karena B menggunakan kunci X pada nilai 3. Maka A harus menunggu B melepaskan kunci X pada nilai 3. Transaksi A akan membaca nilaiyang benar, tapi timbul masalah baru yaitu DEADLOCK. Suzan Agustri 88

Time Stamping Salah satu alternatif mekanisme pengawasan konkuren yang dapat menghilangkan masalah deadlock adalah TIME STAMPING. Dalam skema ini tidak ada kunci yang digunakan sehingga tidak ada deadlock yang muncul. Time stamping untuk sebuah transaksi aksi merupakan suatu tanda pengenal yang unik yang menunjuk waktu mulai relatif dari transaksi. Time stamp dapat berupa pembacaan pada kunci internal pada waktu transaksi dimulai, dapat berupa nilai dari suatu penunjuk logikal yang dapat bertambah setiap kali suatu transaksi baru dimulai. Dalam hal ini nilai time stamp dari setiap transaksi adalah unik dan menunjukkan bagaimana lamanya transaksi tersebut. Pengaruh dari time stamping adalah menentukan suatu urutan serial transaksi. Setiap item data terdiri dari sebuah lead time stamp yang memberikan time stamp transaksi terakhir untuk membawa item dan sebuah write time stamp yang memberikan transaksi terakhir untuk menuliskan/memperbaharui item. Masalah dapat timbul dengan time stamping: 1. Suatu transaksi memerintahkan untuk membaca sebuah item yang sudah di-update oleh transaksi yang belakangan 2. Suatu transaksi memerintahkan untuk menulis sebuah item yang nilainya sudah dibaca/ditulis oleh transaksi yang belakangan 3. RECOVERY Recovery Facilities Sebuah DBMS sebaiknya menyediakan fasilitas-fasilitas berikut ini untuk membantu recovery: Backup mechanism Melakukan backup secara periodik terhadap basis data yang ada Logging facilities Mencatat transaksi-transaksi dan perubahan-perubahan yang terjadi terhadap basis data. DBMS memelihara file khusus yang disebut Log (Journal) yang menyediakan informasi mengenai seluruh perubahan yang terjadi pada basis data. Checkpoint facility Mengizinkan update terhadap basis data yang akan menjadi basis data yang permanen Recovery manager Mengizinkan sistem untuk restore basis data ke keadaan sebelum terjadi kerusakan Recovery Techniques Prosedur recovery yang digunakan tergantung dari kerusakan yang terjadi pada basis data. Terdapat 2 kasus kerusakan: 1. Jika basis data rusak secara fisik seperti: disk head crash dan menghancurkan basis data, maka yang terpenting adalah melakukan restore backup basis data yang terakhir dan mengaplikasikan kembali operasi-operasi update transaksi yang telah commit dengan menggunakan log file. Dengan asusmsi bahwa log file-nya tidak rusak. Suzan Agustri 89

2. Jika basis data tidak rusak secara fisik tetapi menjadi tidak konsisten, sebagai contoh: sistem crashed sementara transaksi dieksekusi, maka yang perlu dilakukan adalah membatalkan perubahanperubahan yang menyebabkan basis data tidak konsisten. Mengulang beberapa transaksi sangat diperlukan juga untuk meyakinkan bahwa perubahan-perubahan yang dilakukan telah disimpan di dalam secondory storage. Disini tidak perlu menggunakan salinan backup basis data, tetapi dapat merestore basis data ke dalam keadaan yang konsisten dengan menggunakan before- dan after-image yang ditangani oleh log file. Teknik recover berikut ini dilakukan terhadap situasi dimana basis data tidak rusak tetapi basis data dalam keadaan yang tidak konsisten. 1. Deferred Update Update tidak dituliskan ke basis data sampai sebuah transaksi dalam keadaan commit. Jika transaksi gagal sebelum mencapai keadaan ini, transaksi ini tidak akan memodifikasi basis data dan juga tidak ada perubahan-perubahan yang perlu dilakukan. Penulisan dilakukan secara inisial hanya terhadap log dan log record yang digunakan untuk actual update terhadap basis data. Jika sistem gagal, sistem akan menguji log dan menentukan transaksi mana yang perlu dikerjakan ulang, tetapi tidak perlu membatalkan semua transaksi. 2. Immediate Update Update diaplikasikan terhadap basis data tanpa harus menunggu transaksi dalam keadaan commit. Update dapat dilakukan terhadap basis data setiap saat setelah log record ditulis. Log dapat digunakan untuk membatalkan dan mengulang kembali transaksi pada saat terjadi kerusakan. Suzan Agustri 90