Pages

Wednesday, December 14, 2016

SISTEM MANAJEMEN BASIS DATA


Implementasi Nested Query
Implementasi Union, Intersect dan Except
Implementasi View, Trigger, Store procedured dan Function
Implementasi Backup, Recovery, Replika dan User control access







LAPORAN
SISTEM MANAJEMEN BASIS DATA





Disusun oleh :



                                              Apri Liga P (L200140125)
                                             Topan Ramadhan (L200140138)





PRODI INFORMATIKA
FAKULTAS KOMUNIKASI & INFORMATIKA
UNIVERSITAS MUHAMMADIYAH SURAKARTA
2016








1  1.      Implementasi Nested Query
a.      In
Tampilkan nama pasien yang memakai no ruang 3
>>  SELECT Nama_pasien
FROM pasien
WHERE Kode_Register IN
(SELECT pasien_use_ruang.Kode_Register
                              FROM pasien_use_ruang
                              WHERE No_Ruang=3)



b.      Exists
Tampilkan nama dokter dan jam prakteknya yang memeriksa pasien dengan kode register P11
>>  SELECT Nama_Dokter, Jam_Praktek
FROM dokter p
WHERE EXISTS(SELECT * FROM pasien r WHERE p.Kode_Dokter = r.Kode_Dokter
      AND Kode_Register='P11')


1  2.      Implementasi Union, Intersect dan Except
a.      Union
>>  SELECT Nama_Dokter FROM dokter
UNION
SELECT Nama_Pasien FROM pasien


b.      Intersect
>>  SELECT Nama_Dokter FROM dokter
WHERE Kode_Dokter IN(
                  SELECT Kode_Dokter
                  FROM pasien)

c.      Except
>>  SELECT Nama_Pasien FROM Pasien
WHERE Kode_Dokter NOT IN(
                  SELECT Kode_Dokter
                  FROM Dokter)

1  3.      Implementasi View, Trigger, Store procedured dan Function
a.      View
Membuat view baru:
>>  CREATE VIEW vDetailrmhskt AS
SELECT p.Kode_Register, p.Nama_Pasien, d.Nama_Dokter, d.Jam_Praktek
FROM pasien p, dokter d
WHERE (p.kode_Dokter=d.kode_Dokter)

Menampilkannya:
>>  SELECT * FROM vDetailrmhskt


b.      Trigger
Membuat tabel log_dokter terlebih dahulu:
>>  CREATE TABLE log_dokter(
Kejadian VARCHAR(25) PRIMARY KEY,
Waktu DATETIME);

Membuat trigger untuk insert:
>>  CREATE TRIGGER ins_dok AFTER INSERT ON dokter
FOR EACH ROW INSERT INTO log_dokter VALUES('Tambah data',NOW());

>>  INSERT INTO dokter VALUES('D007','Ronald','Dokter Umum','12:00 - 15:00');

Membuat trigger untuk update:
>>  CREATE TRIGGER updt_dok AFTER UPDATE ON dokter
FOR EACH ROW INSERT INTO log_dokter VALUES('Ubah data',NOW());

>>  UPDATE dokter SET Nama_Dokter='Ronald oo' WHERE Kode_Dokter='D007';

>>  SELECT Kode_Dokter, Nama_Dokter FROM dokter;


Membuat trigger untuk delete:
>>  CREATE TRIGGER del_dok AFTER DELETE ON dokter
FOR EACH ROW INSERT INTO log_dokter VALUES('Hapus data',NOW());

>>  DELETE FROM dokter WHERE Kode_Dokter='D007';

Menampilkan hasil trigger:
>>  SELECT * FROM log_dokter



c.      Store procedured
>>  DELIMITER //
CREATE PROCEDURE pRuangrs(OUT X VARCHAR(45))
BEGIN
SELECT Nama_Ruang X FROM ruang WHERE No_Ruang='1';
END
//

>>  CALL pRuangrs(@Nama_Ruang)

d.      Function
>>  DELIMITER //
CREATE FUNCTION fcNamaDokter(X VARCHAR(45)) RETURNS VARCHAR(50)
RETURN CONCAT ('Nama_Dokter : ',X);
//

>>  SELECT fcNamaDokter('Eko Waluyo');


1  4.      Implementasi Backup, Recovery, Replika dan User control access
a.      Backup
Dengan menggunakan SQLyog Enterprise






b.      Recovey

Sebelum proses recovery


Proses recovey
>>  source E:\backuprs.sql



 Sesudah proses recovery


c.      Replika
Replikasi database adalah seperangkat teknologi yang digunakan untuk menyalin dan mendistribusikan data dari satu database ke database yang lain. Dan selanjutnya, mensinkronisasikan antar database untuk menjaga konsistensi. Dengan replikasi, data dapat didistribusikan ke lokasi yang berbeda dan pengguna yang jauh melalui LAN, WAN, Dial-up Connection, wireless connections, dan internet.
                  Cara melakukan replikasi:
Pertama buat 2 server
Server A ip 10.100.1.34
Server B ip 10.100.1.35
Pada masing-masing server install terlebih dahulu mysql server, bisa dengan cara Install Mysql di Freebsd atau juga dengan cara yang lain terserah anda. Install webserver bisa apache/nginx atau yang lain berikut install phpmyadminnya.
Langkah konfigurasinya:
Server A

1.      Pada server A akan kita konfigurasi menjadi master terlebih dahulu. sebelumnya  
tambahkan di konfigurasi my.cnf nya dibawah section [mysqld] baris berikut:


2.      Jangan lupa restart service mysqlnya, kemudian login sebagai root pada server A dengan phpmyadmin.



3.      Masuk ke menu -> Replication, klik ->Add Slave User Replication.


4.      Isikan user “replika” , password “replika”, host ” 10.100.1.34″ (sesuaikan dengan ip master server A).


5.      Kemudian start slavenya pada menu Replication -> Control Slave -> Full start. Jika berhasil bisa dilihat status slave seperti berikut.


d.      Kemudian start slavenya pada menu Replication -> Control Slave -> Full start. Jika berhasil bisa dilihat status slave seperti berikut.







Semoga bermanfaat . . . 


























1 comments:

Powered by Blogger.

Blogger templates