Saturday, September 20, 2014

Laporan Prakt. Desain Basis Data (Modul 1)



Nama      =  Ahmad Nafis Syahroni
Nim        = 13650131
Matkul    = Laporan Prak. Desain Basis Data (Kelas D)

Pengenalan dan Instalasi

A.     Bahasan dan Tujuan
1.      Bahasan

Membahas tentang pengertian basis data secara umum, pemahaman umum tentang PostgreSQL, serta dasar-dasar pengoperasian database di PostgreSQL.
2.      Tujuan
-Mahasiswa memahami pengertian basis data secara umum dan peranannya.
-Mahasiswa memahami kegunaan software PostgreSQL serta kemungkinan penggunaannya.
-Mahasiswa memahami berbagai software yang bisa digunakan untuk mengakses database PostgreSQL.
-Mahasiswa memahami cara mengkonfigurasi basis data PostgreSQL.
-Mahasiswa memahami cara membuat dan memanajemen database baik dengan query maupun GUI.
B.     Dasar Teori
Definisi database adalah kumpulan data yang saling berhubungan (relasi). Istilah tersebut biasa digunakan pada sistem-sistem yang terkomputerisasi, dalam pengertian umum database diartikan sebagai gabungan dari elemen-elemen data yang berhubungan dan terorganisir. Relasi biasanya ditunjukkan dengan kunci dari  file yang ada. Dalam satu file terdapat record-record yang sejenis, sama besar, sama bentuk yang merupakan satu kumpulan entitas yang seragam. Satu record terdiri dari field yang saling berhubungan menunjukkan bahwa field tersebut dalam satu pengertian yang lengkap dan direkam dalam satu record.
Database merupakan proses penyimpanan beragam informasi untuk diolah sedemikian rupa agar mudah untuk dipergunakan kembali. Suatu software basis data merupakan software yang digunakan untuk menyimpan dan memungkinkan data yang telah disimpan untuk diakses dengan perintah-perintah tertentu. Software basis data sering dikenal dengan sebutan DBMS (Database Management System). Perintah-perintah yang digunakan untuk mengelola basis data mempunyai standar yang disebut dengan SQL (Structured Query Language). Standar ini dibuat oleh suatu badan yang berwenang (ANSI) sehingga sering disebut juga dengan istilah ANSI SQL. Saat ini standar SQL yang diacu kebanyakan software adalah SQL92 dan SQL99. Pada umumnya, data yang tersimpan merupakan data relasional (data yang saling terhubung). Proses untuk merancang suatu basis data disebut dengan istilah normalisasi. Pada dasarnya, suatu basis data terdiri atas berbagai tabel yang saling terhubung. 
1.      Panduan Instalasi
     Panduan instalasi postgresSQL disini tidak jauh berbeda dengan software-software yang lainnya. Paling-paling Cuma next, next, dan next dan finish. Oke Jadi nggak perlu saya jelasin panjang lebar,. Yakin semua nya udah bisa.


     2. Pengenalan mysql

MySQL merupakan Database Management System (DBMS) tools open source yang mendukung multiuser, multithreaded, populer dan free. MySQL dimiliki oleh perusahaan asal Swedia, MySQL AB, di mana perusahaan tersebut memegang seluruh hak cipta atas kode sumbernya. MySQL AB didirikan oleh David Axmark, Allan Larsson, dan Michael “Monty” Widenius.
MySQL sebenarnya merupakan turunan salah satu konsep utama dalam database sejak lama, yaitu SQL (Structured Query Language). SQL adalah sebuah konsep pengoperasian database, terutama untuk pemilihan atau seleksi dan pemasukan data, yang memungkinkan pengoperasian data dikerjakan dengan mudah secara otomatis. Keandalan suatu sistem database (DBMS) dapat diketahui dari cara kerja optimizer-nya dalam melakukan proses perintah-perintah SQL, yang dibuat oleh user maupun program-program aplikasinya. Sebagai database server, MySQL dapat dikatakan lebih unggul dibandingkan database server lainnya dalam query data.
Hal ini terbukti untuk query yang dilakukan oleh single user, kecepatan query MySQL bisa sepuluh kali lebih cepat dari PostgreSQL dan lima kali lebih cepat dibandingkan Interbase. Selain itu MySQL juga memiliki beberapa keistimewaan,

1. Portability
MySQL dapat berjalan stabil pada berbagai sistem operasi seperti Windows, Linux, FreeBSD, Mac Os X Server, Solaris, Amiga, dan masih banyak lagi.
2. Open Source
MySQL didistribusikan secara open source (gratis), dibawah lisensi GPL sehingga dapat digunakan secara cuma-cuma.
3. Multiuser
MySQL dapat digunakan oleh beberapa user 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. Column types
MySQL memiliki tipe kolom yang sangat kompleks, seperti signed / unsigned integer, float, double, char, text, date, timestamp, dan lain-lain.
6. Command dan functions
MySQL memiliki operator dan fungsi secara penuh yang mendukung perintah Select dan Where dalam query.
7. Security
MySQL memiliki beberapa lapisan sekuritas seperti level subnetmask, nama host, dan izin akses user dengan sistem perizinan yang mendetail serta password terenkripsi.
8. Scalability dan limits
MySQL mampu menangani database dalam skala besar, dengan jumlah records 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. Connectivity
MySQL dapat melakukan koneksi dengan client menggunakan protokol TCP/IP, Unix soket (UNIX), atau Named Pipes (NT).
10. Localisation
MySQL dapat mendeteksi pesan kesalahan pada client dengan menggunakan lebih dari dua puluh bahasa. Meskipun demikian, bahasa Indonesia belum termasuk didalamnya.
11. Interface
MySQL memiliki interface (antar muka) terhadap berbagai aplikasi dan bahasa pemrograman dengan menggunakan fungsi API (Application Programming Interface).
12. Clients dan tools
MySQL dilengkapi dengan berbagai tool yang dapat digunakan untuk administrasi database, dan pada setiap tool yang ada disertakan petunjuk online.
13. Struktur tabel
MySQL memiliki struktur tabel yang lebih fleksibel dalam menangani ALTER TABLE, dibandingkan database lainnya semacam PostgreSQL ataupun Oracle.


 
 


C.     Hasil praktikum (PostgresSQL)
1.  Buat user baru dengan nama user nama depan pribadi mahasiswa dan password      menggunakan nim masing-masing.
                  Ketik CREATE USER nafis with created password ‘13650131’;                                        
Dan cara untuk melihat daftar USER ketik \du

 


2.      Buat 2 database:  database pertama nama_nim dan database kedua contoh1 
Ketik CREATE DATABASE ahmadnafis13650131;
Ketik CREATE DATABASE CONTOH1;
Dan cara melihat database tersebut ketik \l




  


3.      Hapuslah Database contoh1
Ketik DROP DATABASE CONTOH1;
Sama cara mengeceknya dengan mengetik \l

4.      Jawablah soal matematika berikut menggunakan query buffer 9 - 5 + 5 x 0 + 3 : 2 = .... ? 

 

Ketik select masukkan angka yang di hitung

5.      Jawablah soal matematika berikut menggunakan query buffer 5 % 2=...? 

 
Sama dengan soal yang no 4.. ketikkan select dan angka yang akan di hitung

6.      Tampilkan qurey untuk memperoleh tanggal dan jam sekarang? 


Untuk menampilkan waktu dan tanggal ketikkan SELECT CURRENT_TIMESTAMP;
Untuk menampilkan tanggal ketikkan SELECT CURRENT_DATE;
Untuk menampilkan waktu ketikkan SELECT CURRENT_TIME;


7.      Tampilkan selisih hari dalam untuk pengurangan waktu sekarang dengan waktu lahir praktikan?

 
Ketikkan SELECT (CAST (‘Tanggal_Lahir_Anda’ as timestamp)) - (CAST(‘Tanggal sekarang’ as timestamp));



D.     Hasil DBMS mysql
1.      Membuat user dengan password di DBMS mysql.
User yang baru saja dibuat, dapat diakses oleh siapapun sepanjang ia mengetahui username yang digunakan, Untuk menambah keamanan, kita seharusnya menambahkan password yang harus diinputkan oleh user pada saat login. Format dasar query nya:
CREATE USER ‘nama_user’ IDENTIFIED BY ‘password’;
Nama user adalah nama dari user yang akan di buat maksimal 16 karakter
Password adalah password yang harus di tuliskan pada saat nama_user mengakses MySQL.
Langsung saja praktek broo??

2.      Membuat database
Bentuk perintah di atas akan membuat sebuah database baru dengan nama nama_database. Aturan penamaan sebuah database sama seperti aturan penamaan sebuah variabel, dimana secara umum nama database boleh terdiri dari huruf, angka dan under-score (_). Jika database yang akan dibuat sudah ada, maka akan muncul pesan error. Namun jika ingin otomatis menghapus database yang lama jika sudah ada, aktifkan option IF NOT EXISTS
CREATE DATABASE nama_database;
CREATE DATABASE [IF NOT EXISTS] nama_database;
Langsung saja broo kita praktekkan??

Dan database tersebut akan muncul di pojok kiri atas lebih tepatnya :



3.      Menghapus database
Untuk menghapus database beserta seluruh table di dalamnya. Perintah ini tidak berlaku jika database tidak ada atau anda tidak memiliki privilege. Sintaksnya : DROP DATABASE nama_db

Dan database contohl yang ada di sebelah pojok kanan atas akan hilang.

sebelum
 sesudah



4.      Aritmatika Dasar
Fungsi operator aritmetika dasar yang dimiliki oleh MySQL adalah penjumlahan, pengurangan, perkalian, dan pembagian. Operator aritmetika tersebut disertakan dalam perintah select yang bertujuan untuk memanipulasi data yang sifatnya sederhana.
Penjumlahan (+)
Digunakan untuk menjumlahkan dua buah data numerik dengan hasil data numerik juga. Contoh: select 3+2; Hasil: 5
Pengurangan (-)
Digunakan untuk operasi pengurangan data numerik, dimana bilangan yang sebelah kiri dikurangkan dengan yang sebelah kanan. Menghasilkan data numerik.
Contoh: select 3-2; Hasil: 1
Perkalian (*)
Digunakan untuk melakukan operasi perkalian pada data numerik dan menghasilkan data numerik. Contoh: select 3*2; Hasil: 6
Pembagian (/)
Digunakan untuk melakukan operasi pembagian data numerik, dimana bilangan sebelah kiri dibagi dengan bilangan yang ada disebelah kanan. Operasi aritmetika ini menghasilkan data numerik. Contoh: select 8/2; Hasil: 4
Pembagian Sisa (%)
Digunakan untuk mendapatkan sisa bagi dari suatu operasi pembagian, bilangan disebelah kiri dibagi dengan bilangan yang disebelah kanan. Sisa dari hasil pembagian tersebut menjadi hasil dari operasi ini yang biasa disebut Modulus.
Contoh: Select 3%2; Hasil: 1
    
Langsung kita peraktek

Ini hasilnya??





Ini juga contoh nya?

 

 




5.      Tanggal dan waktu dalam mysql
-Menampilkan jam dan tanggal sekarang



 
Ketik select current_timestamp; (unt menampilkan jam dan tanggal sekaligus)
Ketik select current_date; (unt menampilkan tanggal)
Ketik select current_time; (unt menampilkan jam atau waktu)

-          Menghitung selisih hari tanggal lahir

 
Penjelasan Fungsi MySQL
TIMEDIFF = Fungsi untuk membandingkan jam
TIME_TO_SEC = Fungsi untuk merubah jam menjadi detik
SUM = FUNGSI untuk menjumlahkan
SEC_TO_TIME = Fungsi untuk merubah detik menjadi jam

E.      Perbandingan 2 DBMS Postgres dan mysql
Beberapa kelebihan lain dari Mysql :
v   Mysql didistribusukan secara open source (gratis) dibawah license GPL (General Public Licene)
v  Mysql dapat digunakan oleh beberapa user dalam waktu yang bersamaan tanpa mengalami masalah atau konflik
v  Mysql memiliki tipe kolom seperti signed/usigned integer, float, double, char, text, date, timestamp
v   Mysql memiliki operator dan fungsi secara penuh yang mendukung perintah select dan where dalam query
v  Mysql dilengkapi dengan tools yang dapat digunakan untuk administrator
v  Mysql memiliki struktur tabel yang lebih flexibel dalam menangani alter table
v  Mendukung penuh terhadap kalimat SQL GROUP BY dan ORDER BY. Mendukung terhadap fungsi penuh  
v   ( COUNT(),COUNT (DISTINCT), AVG ( ), STD ( ), SUM ( ), MAX ( ) AND MIN ( ) )
v  Menggunakn GNU automake, autoconf, dan LIBTOOL untuk portabilitas

Beberapa Kekurangan Mysql
v  Untuk koneksi ke bahasa pemrograman visual seperti vb, 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.
v   Data yang ditangani belum begitu besar

Adapun kekurangan Postgresql, yaitu :
v  Belum mendukung selectable stored procedure seperti firebird
v  Physical database (table) file nya berserakan
v  Konsep penyimpanan fisiknya satu objek = 1 atau lebih file, bukan 1 database = 1 file
Selain itu PostgreSQL juga dapat di extend sesuai kebutuhan pengguna melalui beberapa metode dengan menambangkan obyek baru, seperti :
v  Penambahan Tipe Data
v   Penambahan Fungsi
v  Penambahan Operator
v  Penambahan Fungsi Aggregate
v   Metode Index
v  Bahasa procedur
F.      Kesimpulan
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. Oke broo. Semoga bermanfaat.




 Daftar Pustaka

 http://endra-dwi-putra.blogspot.com/2013/11/cara-membuat-sintak-atau-query-database.html
http://artechinovation.wordpress.com/2012/11/20/fungsi-dalam-mysql-fungsi-aritmatikadasar/
http://klmpk10id101k.blogspot.com/2012/10/perbandingan-database-mysql-dan.html
http://www.swalt.info/web/mysql/88-pengenalan-mysql.html









0 comments:

Post a Comment