Copyright © My Blog
Design by Dzignine
Jumat, 19 September 2014

Tugas Praktikum DBD Modul 1



LAPORAN PRAKTIKUM
DESAIN BASIS DATA


Dosen Pengampu: Aziz Musthofa, S.Kom
 logoUIN
Oleh :
Badruz Zamanil Charis
13650120

JURUSAN TEKNIK INFORMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UIN MAULANA MALIK IBRAHIM MALANG
2014

Pengertian MySQL

MySQL adalah sebuah implementasi dari sistem manajemen basisdata relasional (RDBMS) yang didistribusikan secara gratis. Setiap pengguna dapat secara bebas menggunakan MySQL, namun dengan batasan perangkat lunak tersebut tidak boleh dijadikan produk turunan yang bersifat komersial. MySQL sebenarnya merupakan turunan salah satu konsep utama dalam basisdata yang telah ada sebelumnya; SQL (Structured Query Language). SQL adalah sebuah konsep pengoperasian basisdata, terutama untuk pemilihan atau seleksi dan pemasukan data, yang memungkinkan pengoperasian data dikerjakan dengan mudah secara otomatis.
Kehandalan suatu sistem basisdata (DBMS) dapat diketahui dari cara kerja pengoptimasi-nya dalam melakukan proses perintah-perintah SQL yang dibuat oleh pengguna maupun program-program aplikasi yang memanfaatkannya. Sebagai peladen basis data, MySQL mendukung operasi basisdata transaksional maupun operasi basisdata non-transaksional. Pada modus operasi non-transaksional, MySQL dapat dikatakan unggul dalam hal unjuk kerja dibandingkan perangkat lunak peladen basisdata kompetitor lainnya. Namun demikian pada modus non-transaksional tidak ada jaminan atas reliabilitas terhadap data yang tersimpan, karenanya modus non-transaksional hanya cocok untuk jenis aplikasi yang tidak membutuhkan reliabilitas data seperti aplikasi blogging berbasis web (wordpress), CMS, dan sejenisnya. Untuk kebutuhan sistem yang ditujukan untuk bisnis sangat disarankan untuk menggunakan modus basisdata transaksional, hanya saja sebagai konsekuensinya unjuk kerja MySQL pada modus transaksional tidak secepat unjuk kerja pada modus non-transaksional.

Keistimewaan MySQL

  1. Portabilitas. MySQL dapat berjalan stabil pada berbagai sistem operasi seperti Windows, Linux, FreeBSD, Mac Os X Server, Solaris, Amiga, dan masih banyak lagi.
  2. Perangkat lunak sumber terbuka (open source). MySQL didistribusikan sebagai open source sehingga dapat digunakan secara gratis.
  3. Multi-user. MySQL dapat digunakan oleh beberapa pengguna dalam waktu yang bersamaan tanpa mengalami masalah atau konflik.
  4. Performance tuning, MySQL memiliki kecepatan yang menakjubkan dalam menangani query sederhana, dengan kata lain dapat memproses lebih banyak SQL per satuan waktu.
  5. Ragam tipe data. MySQL memiliki ragam tipe data yang sangat kaya, seperti signed / unsigned integer, float, double, char, text, date, timestamp, dan lain-lain.
  6. Perintah dan Fungsi. MySQL memiliki operator dan fungsi secara penuh yang mendukung perintah Select dan Where dalam perintah (query).
  7. Keamanan. MySQL memiliki beberapa lapisan keamanan seperti password yang terenkripsi.
  8. Skalabilitas dan Pembatasan. MySQL mampu menangani basis data dalam skala besar, dengan jumlah record lebih dari 50 juta dan 60 ribu tabel serta 5 milyar baris. Selain itu batas indeks yang dapat ditampung mencapai 32 indeks pada tiap tabelnya.
  9. Konektivitas. MySQL dapat melakukan koneksi dengan klien menggunakan protokol TCP/IP, Unix soket (UNIX), atau named pipes (NT). 
  10. Lokalisasi. MySQL dapat mendeteksi pesan kesalahan pada klien dengan menggunakan lebih dari dua puluh bahasa. Meski pun demikian, bahasa Indonesia belum termasuk di dalamnya.
  11. Antar Muka. MySQL memiliki antar muka (interface) terhadap berbagai aplikasi dan bahasa pemrograman dengan menggunakan fungsi API (Application Programming Interface).
  12. Klien dan Peralatan. MySQL dilengkapi dengan berbagai tool  yang dapat digunakan untuk administrasi basis data, dan pada setiap peralatan yang ada disertakan petunjuk online.
  13. Struktur tabel. MySQL memiliki struktur tabel yang lebih fleksibel dalam menangani ALTER TABLE, dibandingkan basis data lainnya semacam PostgreSQL ataupun Oracle. 

1.Laporan Praktikum Dengan Menggunakan DBMS mysql.

1.Membuat user dengan nama depan pribadi dan password


·badruz13650120 adalah nama dari user yang akan dibuat
·13650120 adalah password yang harus dituliskan pada saat nama_user mengakses MySQL server.


2. Buatlah 2 database dengan nama : namaNIM masing-masing praktikan. Misal : “aziz05550057” dan nama database : contoh1.

Ketik "create database badruz13650120;"  dan  "create database contoh1;"  kemudian ketik  "show databases;"  untuk menge-cek isi dari database.


3.  Hapuslah database contoh1.
"drop database if exists contoh1;"  maka database contoh1 akan terhapus kemudian cek kembali database


4.  Jawablah soal matematika berikut menggunakan query buffer 9 - 5 + 5 x 0 + 3 : 2 = .... ?
     Ketik  "select 9-5+5*0+3/2;"  kemudian tekan enter maka hasil akan muncul



5.  Jawablah soal matematika berikut menggunakan query buffer 5%2=...?
    Ketik  "select 5%2;"  kemudian tekan enter maka hasil akan muncul



6.  Tampilkan qurey untuk memperoleh tanggal dan jam sekarang?
Untuk menampilkan tgl-bln-th dan jam      :  select current_timestamp;
Untuk menampilkan tgl-bln-th                    :  select current_date;
Untuk menampilkan jam                             :  select current_time;



7.Menampilkan umur di mysql

Ketik "select year(current_date)-year('1994-4-5');"


Kekurangan Posgre SQL :
1. kurang begitu populer dan cocok bekerja di lingkungan web jika   dibandingkan dengan mysql.
2. Kurang fokus dalam hal kelangsingan dan kecepatan.
3. arsitektur dengan multiproses ini sulit diterapkan ke Windows, sebab Windows amat thread-oriented.

Kelebihan PostgreSQL
1. PostgreSQL memiliki arsitektur multiproses (forking) yang berarti memiliki stabilitas yang lebih tinggi, sebab satu proses anak yang mati tidak akan menyebabkan seluruh daemon mati—meskipun pada kenyataannya, dulu ini sering terjadi.
2. Dalam kondisi load tinggi (jumlah koneksi simultan besar), kecepatan PostgreSQL sering mengalahkan MySQL untuk query dengan klausa JOIN yang kompleks, hal ini
dikarenakan PostgreSQL mendukung locking di level yang lebih rendah, yaitu row.

Kelebihan MySQL:
Dapat bekerja di beberapa platform yang berbeda seperti LINUX, Windows, MacOS, FreeBSD, Solaris, dll.
Dapat dikoneksikan pada bahasa C, C++, Java , Perl, PHP, dan Python.

Kekurangan MySQL:
Untuk koneksi kebahasa pemrograman visual seperti VB(Virus Basic), delphi, dan foxpro, MySQL kurang support, karena koneksi ini menyebabkan field yang dibaca harus sesuai dengan koneksi dari program visual tersebut, dan ini yang menyebabkan MySQL jarang dipakai dalam program visual.
Data yang ditangani belum begitu besar. Tidak cocok baik menyimpan data maupun untuk memproses data. 



2.Membuat Rancangan Tabel  Suatu Sistem Disertakan Dengan ERD, Tujuan Dari Pembangunan Sistem. 

ERD

Pengertian dari ERD (Entity Relationship Diagram) adalah suatu model untuk menjelaskan hubungan antar data dalam basis data berdasarkan objek-objek dasar data yang mempunyai hubungan antar relasi.
ERD untuk memodelkan struktur data dan hubungan antar data, untuk menggambarkannya digunakan beberapa notasi dan simbol.




1.Entitas Adalah segala sesuatu yang dapat digambarkan oleh data. Entitas juga dapat diartikan sebagai individu yang mewakili sesuatu yang nyata (eksistensinya) dan dapat dibedakan dari sesuatu yang lain (Fathansyah, 1999). Ada dua macam entitas yaitu entitas kuat dan entitas lemah. Entitas kuat merupakan entitas yang tidak memiliki ketergantungan dengan entitas lainnya. Contohnya entitas anggota. Sedangkan entitas lemah merupakan entitas yang kemunculannya tergantung pada keberadaaan entitas lain dalam suatu relasi.

2.Atribut,Atribut merupakan pendeskripsian karakteristik dari entitas. Atribut digambarkan dalam bentuk lingkaran atau elips. Atribut yang menjadi kunci entitas atau key diberi garis bawah.

3.Relasi atau Hubungan, Relasi menunjukkan adanya hubungan diantara sejumlah entitas yang berasal dari himpunan entitas yang berbeda.Penghubung antara himpunan relasi dengan himpunan entitas dan himpunan entitas dengan atribut dinyatakan dalam bentuk garis.



Cardinality Krardinalitas relasi menunjukan jumlah maksimum tupel yang dapat berelasi dengan entitas pada entitas yang lain. Terdapat 3 macam kardinalitas relasi yang terdapat pada ERD , yaitu :

One to One (1 to 1)
Hubungan relasi satu ke satu yaitu setiap entitas pada himpunan entitas A berhubungan paling banyak dengan satu entitas pada himpunan entitas B.
One to Many (1 to M) atau Many to One (N to 1)
Setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak entitas pada himpunan entitas B, tetapi setiap entitas pada entitas B dapat berhubungan dengan satu entitas pada himpunan entitas A.
Many to Many (M to N)
Setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak entitas pada himpunan entitas B.


Contoh Sistem ERD Perpustakaan :

DALAM BENTUK TABEL 


DALAM BENTUK DIAGRAM




Tujuan Pembangunan Sistem :

 Untuk memudahkan sistem informasi di perpustakaan . Sistem informasi seperti pemimjam buku, identitas buku ,pengarang buku, penerbit buku dll.

Entitas :                                             Hubungan  / Relasi:
1. Buku                                                       : 1. Meminjam (Anggota – Buku)
2. Pengarang                                             : 2. Menerbitkan (Buku – Penerbit)
3. Penerbit                                                 : 3. Menulis (Buku – Pengarang)
4. Anggota                                                 : 4. Membayar (Anggota  – Denda)
5. Denda

Entity Relationship Diagram (ERD) Perpustakaan

Relationship
            A. Relationship Anggota – Peminjaman (1 –N)
            B. Relationship Buku – Peminjaman(1-N)
            C. Relationship Buku – Pengarang (1-N)
            D. Relationship Buku – Penerbit (1-N)
            E. Relationship Anggota – Denda(1-N)

Perbedaan MySql dan PostgreSql

Saat ini dengan mudah kita bisa mengatakan, dua produk database open source paling terkenal dan banyak digunakan adalah MySQL dan PostgreSQL. “Mana yang lebih bagus?” adalah pertanyaan yang hingga akhir zaman nanti akan selalu terlontar. Kami tahu pertanyaan ini tidak ada artinya, dan tidak membantu sama sekali. Namun di artikel ini kami mencoba menyusun beberapa aspek dari kedua database yang berbeda satu sama lain. Harapan kami, perbandingan ini membantu Anda menjawab pertanyaan “mana yang sebaiknya dipakai untuk [sebutkan kebutuhan Anda di sini].” Jangan lupa pula, sebelum memutuskan selalu ceklah dulu homepage kedua database sebab dari waktu ke waktu fitur tiap database berubah/bertambah. Perbandingan di artikel ini sendiri menggunakan versi MySQL 3.23.49/4.0.1 dan PostgreSQL 7.2.
Tujuan Desain
Dari semula latar belakang dikembangkannya kedua database ini sudah berbeda. MySQL berkembang dari solusi yang dipakai oleh pembuatnya, TcX AB, dalam memroses data untuk aplikasi Web. Fokusnya adalah pada kecepatan. PostgreSQL, di lain pihak, berkembang dari riset akademik. Fokus pengembangan PostgreSQL adalah pada fitur OO, reliabilitas, dan dukungan SQL yang mantap. Namun, seiring kedua produk ini bertambah matang, keduanya semakin banyak memiliki sifat-sifat ini. MySQL versi 4.x misalnya, berjanji menambahkan fitur-fitur yang sejak lama diidamkan pemakainya: subselect, view, dsb. Sementara PostgreSQL, yang sempat memiliki masalah stabilitas dan skalabilitas di seri awal versi 6.x, juga kini telah amat menarik dari segi kecepatan.
Pengembangan
Pengembangan MySQL diatur secara sentral oleh perusahaan komersial di Swedia bernama MySQL AB (sebelumnya TcX AB). Perusahaan ini memperoleh pemasukan utamanya dari menjual layanan support dan konsultasi MySQL. PostgreSQL dikembangkan secara lebih terdesentralisasi dan merakyat, namun tetap diatur oleh sebuah kelompok online bernama PostgreSQL Development Group.
MySQL dirilis dalam satuan yang lebih sering (sebulan bisa lebih dari satu kali), sementara PostgreSQL sekitar 4–6 bulan sekali.
Jumlah Pengguna
Menurut MySQL AB, saat ini jumlah instalasi MySQL sekitar 3 juta. PostgreSQL sendiri tidak diketahui pasti berapa jumlah penggunanya; kemungkinan masih berada di bawah MySQL karena banyaknya situs Web dan perusahaan webhosting yang hanya menggunakan MySQL. Plus secara keseluruhan popularitas MySQL (trafik milis, tutorial/artikel yang membahas, dsb) lebih besar daripada PostgreSQL. Tapi karena PostgreSQL juga disertakan secara default di distro-distro Linux seperti Red Hat dan SuSE, jumlah penggunanya pun sudah pasti banyak.
Arsitektur dan Portabilitas
MySQL memiliki arsitektur multithreading, sementara PostgreSQL multiproses (forking). Ini berarti PostgreSQL potensial memiliki stabilitas yang lebih tinggi, sebab satu proses anak yang mati tidak akan menyebabkan seluruh daemon mati—meskipun pada kenyataannya, dulu ini sering terjadi. Di sisi lain, arsitektur dengan forking ini sulit diterapkan ke Windows, sebab Windows amat thread-oriented. Karena itulah, baru MySQL yang memiliki port natif ke Windows. PostgreSQL sendiri saat ini bisa dijalankan di Windows, tapi melalui lapisan emulasi Cygwin.
ACID compliance
Sampai sekarang masih banyak yang bilang MySQL itu tidak ACID-compliant. Padahal sejak 2 tahun lalu MySQL sudah mempunyai handler tabel BerkeleyDB, dan belakangan ini InnoDB, sehingga MySQL sudah mendukung transaksi. Handler tabel MySQL yang lama, ISAM dan MyISAM, tidak ACID-compliant. PostgreSQL sendiri sejak lama telah ACID-compliant.
Lisensi
Lisensi PostgreSQL lebih liberal. Inilah sebabnya ada banyak produk closed-source dan komersial yang bisa dikembangkan dari source code PostgreSQL. MySQL, karena dilisensi di bawah GPL, tidak boleh dimodifikasi menghasilkan produk turunan yang closed-source.
Kecepatan
Soal kecepatan ini relatif dan kadang juga jadi isu sensitif. Baik kedua pihak, maupun pihak ketiga, pernah menerbitkan benchmark yang lalu ditepis atau dicibir karena tidak objektif.
Pada dasarnya perbandingan kecepatan keduanya seperti ini: MySQL terkenal cepat dalam melakukan query sederhana. Dengan kata lain, dapat memroses lebih banyak SQL per satuan waktu. Tapi dalam kondisi load tinggi (jumlah koneksi simultan besar), PostgreSQL sering mengalahkan MySQL untuk query dengan klausa JOIN yang kompleks, seperti dialami Tim Perdue saat mencoba kedua database untuk diimplementasikan di SourceForge.net. Penyebab utamanya adalah karena MySQL menggunakan locking level table dalam UPDATE, sehingga koneksi yang lain tidak bisa membaca table ybs sama sekali. Locking inilah juga sebabnya mengapa pada banyak benchmark, MySQL menunjukkan penurunan kinerja yang cukup drastis untuk kondisi jumlah klien simultan tinggi. PostgreSQL mendukung locking di level yang lebih rendah, yaitu row. Table handler baru di MySQL, InnoDB, juga mendukung row level locking. Benchmark InnoDB pada jumlah koneksi tinggi menunjukkan hasil yang cukup menjanjikan.
Masalah locking tabel bisa diakali dengan membelah-belah tabel, agar satu kelompok row dapat dilock tanpa mengganggu kelompok row lain. Bahkan ada pengguna MySQL yang membelah sebuah tabel besar berisi jutaan record menjadi ribuan tabel kecil-kecil.

Kesimpulan,Manfaat Pembaca,Saran dan kritik

     1.      Rangkuman
Keduanya memilki kelemahan dan kekuatan masing-masing.  Bahkan jika dibandingkan lebih cermat tidak ada yang saling melebihi, karena keduanya memilki porsinya masing-masing dalam dunia database, bahkan kedua database ini dapat digunakan untuk suatu sistem misalnya untuk GIS pada web, kita dapat menyimpan data GIS pada postgresql dan menggunakan pula mysql sebagai buffer untuk mempercepat akses basis data melalui web.
      2.      Saran
     Saran saya belajarlah memakai ke dua DBMS tersebut karena dengan belajar tersebut bisa membandingakan, dan bias mengetahui kedua-duanya.
3.    Kritik
      Masih banyak Evaluasi yang perlu dibenahi dalam laporan ini, dan perlu adanya integrasi tujuan dan hasil
4.    Manfaat Membaca Laporan Ini
          a. Pastinya tau apa itu database
          b. Bisa mengevaluasi kerjaan sendiri dengan hasil laporan ini
          c. Bisa tahu jalan belajarnya perkuliahan dan membuat karya.

Daftar Pustaka

http://www.mysqltutorial.org/
http://id.wikipedia.org/wiki/MySQL
www.tutorialspoint.com/mysql/


Buku : Yakub, 2008, “ Sistem Basis Data : Tutorial Konsep “; Graha Ilmu: Yogyakarta
           Kadir Abdul, 2000, Konsep & Tuntutan Praktis Basis Data, Yogyakarta: Andi

           Sutanta Edhy, 2011, Basis Data Dalam Tinjauan Konseptual. Yogyakarta: Andi

0 komentar:

Posting Komentar