MySQL
Disusun Oleh :
Andri Afrianda (30113944)
Defi Alfian (32113128)
Erwin Parasian Hutapea (32113975)
I Dewa Gde Smaradana (34113153)
Maulana (35113347)
Defi Alfian (32113128)
Erwin Parasian Hutapea (32113975)
I Dewa Gde Smaradana (34113153)
Maulana (35113347)
Moch Dwi Nigalianto (35113520)
Yodhi Eko Wibowo (39113443)
ABSTRACT
MySQL adalah program database yang mampu mengirim dan
menerima data dengan sangat cepat dan multiuser. MySQL memiliki dua bentuk
lisensi, yaitu free software dan shareware.
KATA PENGANTAR
Puji syukur kami panjatkan ke hadirat Allah SWT bahwa
kami telah menyelesaikan tugas kelompok mata pelajaran Sistem Informasi
Manajemen dengan membahas tentang Bahasa Pemrograman Java.
Dalam mengerjakan tugas ini kami merasa masih banyak
kekurangan-kekurangan baik pada teknis penulisan maupun materi, mengingat akan
kemampuan yang dimiliki kami. Untuk itu kritik dan saran dari semua pihak
sangat kami harapkan demi penyempurnaan tugas ini.
Dalam mengerjakan tugas ini kami menyampaikan ucapan
terima kasih kepada Bapak Dosen Sistem Informasi Manajemen yang telah
memberikan tugas, petunjuk, kepada kami sehingga kami termotivasi dan
menyelesaikan tugas ini.
Semoga hasil dari tugas ini dapat bermanfaat dan menjadi
sumbangan pemikiran bagi pihak yang membutuhkan, khususnya bagi kami sehingga
tujuan yang diharapkan dapat tercapai, Amin.
Bekasi, 07 Januari 2015
Penyusun
Daftar Isi
Abstract...................................................................................................2
Kata Pengantar........................................................................................3
Daftar Isi.................................................................................................4
Bab 1 Pendahuluan.................................................................................5
1.1 Latar Belakang.................................................................................5
1.2 Tujuan..............................................................................................6
Kata Pengantar........................................................................................3
Daftar Isi.................................................................................................4
Bab 1 Pendahuluan.................................................................................5
1.1 Latar Belakang.................................................................................5
1.2 Tujuan..............................................................................................6
1.3
Manfaat............................................................................................6
Bab 2 Pembahasan.................................................................................7
Bab 2 Pembahasan.................................................................................7
2.1 Database...........................................................................................7
2.2 Sejarah MySQL................................................................................7
2.3 Kelebihan MySQL............................................................................8
2.2 Sejarah MySQL................................................................................7
2.3 Kelebihan MySQL............................................................................8
2.4 Kekurangan
MySQL.........................................................................8
2.5 pemakian Dasar.................................................................................8
2.6 Perintah Dasar MySQL dengan Menggunakan Query Select...........9
2.7 DDL..................................................................................................10
2.5 pemakian Dasar.................................................................................8
2.6 Perintah Dasar MySQL dengan Menggunakan Query Select...........9
2.7 DDL..................................................................................................10
2.8
DML..................................................................................................10
2.9 Pengantar
Sintak Dasar Mysql..........................................................13
2.10 Sistem Keamanan pada MySQL.....................................................14
Bab 3 Penutup.........................................................................................17
Daftar Pustaka.........................................................................................18
2.10 Sistem Keamanan pada MySQL.....................................................14
Bab 3 Penutup.........................................................................................17
Daftar Pustaka.........................................................................................18
BAB
I
PENDAHULUAN
1.1 Latar Belakang
MySQL adalah multiuser database yang
menggunakan bahasa structured query language ( SQL ). MySQL dalam
operasi client-server melibatkan
serverdaemon MySQL disisi server dan berbagai macam program serta library
yang berjalan disisi client.
Dalam bahasa SQL pada umumnya
informasi tersimpan dalam table - tabel yang secara logic merupakan struktur
dua dimensi terdiri dari baris ( row atau record ) dan kolom (column atau field ). Sedangkan dalam sebuah database dapat terdiri dari beberapa
tabel.
Pada saat ini, pengelolaan database dengan menggunakan berbagai jenis perangkat lunak sudah mempengaruhi
kehidupan masyarakat modern. Hal tersebut dapat dilihat dari kegiatan sehari
- hari yang tidak terlepas dari penggunaan database
dengan menggunakan DBMS ( DataBase
Management System ).
Manajemen data adalah sekumpulan
berbagai disiplin ilmu yang berkaitan untuk mengelola data sehingga menjadi
sumberdaya yang sangat bernilai. Sumberdaya manajemen data adalah pengembangan
dan eksekusi dari arsitektur database, kebijakan, pelatihan dan prosedur
yang dikelola secara baik dan secara menyeluruh untuk kepentingan manajemen data ini adalah :
1. Database :Kumpulan data yang saling
berhubungan secara logic, dirancang untuk memenuhi kebutuhan akan
informasi banyak pengguna.
2. Table : Baris-baris data yang berada dalam satu atau lebih kolom.
3. Field : Merupakan kolom yang
terdapat di dalam tabel atau disebut juga attribute.
4. Record : Data yang berada didalamdatabase
tersebut.
5. Tuple : Suatu baris dari suatu relasi.
Sebuah system basis data menyediakan
dua tipe bahasa yaitu : tipe untuk menspesifikasikan skema basis data, disebut
DDL, dan tipe untuk mengekspresikan
queri atau update basis data disebut
MDL.
1.2 Tujuan
Tujuan pembutaan Makalah ini yaitu agar pembaca dapat menganal
lebih seputar Database server pada MySQL dari mulai sejarah sampai menggunakan
MySQL itu sendiri dan Bekerja dengan Query Commandsnya
1.3 Manfaat
Saya
berharap makalah ini dapat bermanfaat bagi para pembaca yang tadinya belum
menguasai system penyimpanan pada Database MySQL dan menjadi lebih mengerti apa
itu system penyimpanan Database MySQL.
BAB
II
PEMBAHASAN
2.1 Data Base
Bahasa database adalah bahasa khusus yang ditetapkan
pembuat DMBS ( database management system ), tentang cara berinteraksi atau
berkomunikasi antara pemakai dengan database.
Bahasa ini terdiri atas sejumlah perintah yang
diformulasikan untuk dapat diberikan oleh pengguna dan dikenali oleh DBMS.
Salah satu bahasa database yang populer adalah SQL.
2.2 Sejarah
MySQL
MySQL
dikembangkan oleh sebuah perusahaan Swedia bernama MySQL AB, yang kala itu
bernama TcX DataKonsult AB, sejak sekitar 1994–1995, meski cikal bakal kodenya
bisa disebut sudah ada sejak 1979. Tujuan mula-mula TcX membuat MySQL pada
waktu itu juga memang untuk mengembangkan aplikasi Web untuk klien TcX adalah
perusahaan pengembang software dan konsultan database. Kala itu Michael
Widenius, atau “Monty”, pengembang satu-satunya di TcX, memiliki aplikasi
UNIREG dan rutin ISAM yang dibuat sendiri dan sedang mencari antarmuka SQL
untuk ditempelkan di atasnya.
MySQL adalah
sebuah perangkat lunak sistem manajemen basis data SQL (bahasa Inggris:
database management system) atau DBMS yang multithread, multi-user, dengan
sekitar 6 juta instalasi di seluruh dunia. MySQL AB membuat MySQL tersedia
sebagai perangkat lunak gratis dibawah lisensi GNU General Public License
(GPL), tetapi mereka juga menjual dibawah lisensi komersial untuk kasus-kasus
dimana penggunaannya tidak cocok dengan penggunaan GPL.
Tidak sama
dengan proyek-proyek seperti Apache, dimana perangkat lunak dikembangkan oleh
komunitas umum, dan hak cipta untuk kode sumber dimiliki oleh penulisnya
masing-masing, MySQL dimiliki dan disponsori oleh sebuah perusahaan komersial
Swedia MySQL AB, dimana memegang hak cipta hampir atas semua kode sumbernya.
2.3 Kelebihan
MySQL
· Handal, cepat dan mudah digunakan.
·
Dukungan SQL.
·
Multiplatform dan portable.
·
Perangkat lunak sumber terbuka.
·
Multi-user.
·
Performance Tuning.
·
Ragam tipe data.
2.4 Kekurangan
MySQL
· 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.
·
Data yang ditangani belum begitu besar.
·
Kelemahan MySQL dari dulu sampai sekarang itu adalah
'feature-creep', artinya MySQL berusaha kompatibel dengan beberapa standard
serta berusaha memenuhinya.
Sampai sini
terdengar bagus, namun kalau diungkapkan kenyataannya bahwa fitur-fitur itu
belum lengkap dan berperilaku sesuai standar.
2.5 Pemakaian Dasar
Secara umum, SQL terdiri dari dua bahasa, yaitu Data
Definition Language ( DDL ) dan Data Manipulation Language (DML). Implementasi
DDL dan DML berbeda untuk tiap sistem manajemen basis data (SMBD). Namun secara
umum implementasi tiap bahasa ini memiliki bentuk standar yang ditetapkan ANSI.
Artikel ini akan menggunakan bentuk paling umum yang dapat digunakan pada
kebanyakan SMBD.
2.6 Perintah
Dasar MySQL dengan Menggunakan Query Select.
·
Select Version.
Perintah query
tersebut dipergunakan untuk menampilkan server versi MySQL.
·
Select Current_Date.
Perintah query
tersebut dipergunakan untuk menampilkan tanggal saat ini.
·
Select Now.
Perintah query
tersebut dipergunakan untuk menampilkan tanggal dan jam saat ini
·
Select User.
Perintah
tersebut dipergunakan untuk mengetahui nama user yang bersangkutan dannama
client tempat user melakukan login. Dalam contoh di atas user yangmelakukan
login adalah root dan login melalui komputer lokal server MySQL ( localhost ).
·
Select Status.
Perintah query
ini tidak digunakan dalam MySQL / menampilkan pesan error saat dijalankan.
·
Status
Perintah query
ini digunakan untuk menampilkan status MySQL yang sedang digunakan.
·
Help.
Perintah query
ini digunakan untuk menampilkan perintah - perintah dos yang ada pada MySQL.
·
Select (*,/,-,+).
·
Select SIN.
Perintah query
ini digunakan untuk operasi dalam matematika yang mengubah angka menjadi
derajat Sinus.
·
Select COS.
Perintah query
ini digunakan untuk operasi dalam matematika yang mengubah angka menjadi
derajat Cosinus.
·
Select TAN.
Perintah query
ini digunakan untuk operasi dalam matematika yang mengubah angka menjadi
derajat Tangen.
2.7 Data
Defination Language (DDL).
DDL digunakan untuk mendefinisikan, mengubah, serta menghapus basis data dan objek yang diperlukan dalam basis data. Misalnya tabel, view, user, dan sebagainya.
Secara umum, DDL yang digunakan adalah CREATE untuk
membuat objek baru, USE untuk menggunakan objek, ALTER untuk mengubah objek
yang sudah ada, dan DROP untuk menghapus objek dan SHOW Database digunakan
untuk melihat database yang sudah ada pada DBMS MySQL. DDL biasanya digunakan
oleh administrator basis data dalam pembuatan sebuah aplikasi basis data.
Berikut perintah perintah yang masuk dalam golongan DDL.
1. Create
Digunakan untuk membuat database,tabel,dan objek lain
dalam database.
2. Alter
Digunakan untuk memodifikasi tabel ,seperti mengubah nama
tabel , field , dan menambah field
3. Drop
Digunakan untuk menghapus database, tabel, dan objek lain
dalam database
2.8 Data Manipulation Language (DML).
Berbeda dengan DDL yang cenderung mengarah pada struktur tabel.
DML atau yang memiliki kepanjangan dari Data Manipulation
Language merupakan basis data yang digunakan untuk melakukan modifikasi dan
pengambilan data pada suatu database(intinya itu untuk pengolahan data).
Berikut
ini merupakan pengolahan/modifikasi meliputi:
1. Insert
Digunakan untuk melakukan penambahan data.
2. Select
Digunakan untuk melakukan pengambilan data.
3. Update
Digunakan untuk melakukan perubahan data.
4. Delete
Digunakan untuk melakukan penghapusan data.
Fitur MySQL
Fitur MySQL
Kalau di seri 3.22 MySQL mulai diadopsi banyak orang dan
meningkat populasi penggunanya, maka di seri 3.23 dan 4.0-lah terjadi banyak
peningkatan dari sisi teknologi. Ini tidak terlepas dari tuntutan pemakai yang
semakin mengandalkan MySQL, namun membutuhkan fitur-fitur yang lebih banyak
lagi. Seri 3.23. Di seri 3.23 MySQL menambahkan tiga jenis tabel baru: pertama
MyISAM, yang sampai sekarang menjadi tipe tabel default; kedua BerkeleyDB, yang
pertama kali menambahkan kemampuan transaksi pada MySQL; dan ketiga InnoDB,
primadona baru yang potensial. Seri 4.x.
Di seri yang baru berjalan hingga 4.0 tahap alfa ini,
pengembang MySQL berjanji akan menjadikan MySQL satu derajat lebih tinggi lagi.
Fitur-fitur yang sejak dulu diminta akan dikabulkan, seperti subselek (di 4.1),
union (4.0), foreign key constraint (4.0 atau 4.1—meski InnoDB sudah
menyediakan ini di 3.23.x), stored procedure (4.1), view (4.2), cursor (4.1
atau 4.2), trigger (4.1). MySQL AB tetap berdedikasi mengembangkan dan
memperbaiki MySQL, serta mempertahankan MySQL sebagai database open source
terpopuler.
Tipe Data MySQL
·
Char(M)
Tipe data ini digunakan untuk menyimpan data string dengan jumlah karakter
tertentu. Panjang maksimum karakter tipe data Char harus dinyatakan secara
eksplisit seperti contoh berikut: Judul CHAR(50)
·
Varchar(M)
Tipe data ini cocok digunakan untuk menyimpan data string dengan panjang
yang bervariasi. Sama seperti tipe data Char, panjang maksimum karakter yang
akan ditampung dalam field harus dinyatakan Tipe Data. Beberapa jenis tipe data
dalam MySQL memiliki tipe tersendiri dalam tiap field di table databasenya.
MySQL mengenal
beberapa type data field, yaitu :
1. Tipe data
numeric
Tipe data numerik dapat dibedakan menajdi dua kelompok, yaitu tipe data
integer dan tipe data floating point. Tipe data integer untuk data bilangan
bulat sedangkan tipe data floating point digunakan untuk bilangan desimal. Tipe
data numeric dapat kita sajikan dalam contoh di bawah ini :
Tipe data Kisaran nilai
- Tinyint (-128)
– 127 atau 0-225
- Smallint (-32768)
– 32767 atau 0 – 65535
- Mediumint
(-8388608)-8388607 atau 0-16777215
- Int
(-2147683648)-(2147683647) atau 0-4294967295
- Bigint
(-9223372036854775808)-(9223372036854775807)
Atau 0 – 18446744073709551615
- Float(x)(-3.402823466E+38)-(-1.175494351E-38),0,dan
1.175494351E-38 – 3.402823466E + 38
- Float Idem
Double (-1.7976E+308)–(-2.22E-308),0,dan(2.22E-308)- (1.79E+308)
Besar kebutuhan memori penyimpanan
untuk masing-masing tipe data di atas sebagai berikut :
- Column
type Storage required
- TINYINT 1 byte
- SMALLINT 2 bytes
- MEDIUMINT 3 bytes
- INT 4 bytes
- INTEGER 4 bytes
- BIGINT 8 bytes
- FLOAT(4) 4 bytes
- FLOAT(8) 8 bytes
- FLOAT 4 bytes
- DOUBLE 8 bytes
- DOUBLE PRECISION 8 bytes
- REAL 8 bytes
- DECIMAL(M,D) M bytes (D+2, if M <
D)
- NUMERIC(M,D) M bytes (D+2, if M <
D)
2. Tipe data
char() dan varchar() pada prinsipnya sama. Yang menjadi perbedaannya adalah
pada jumlah memori yang dibutuhkan untuk penyimpanan. Memori penyimpanan yang
dibutuhkan tipe data char() bersifat statis, besarnya tergantung pada berapa
jumlah karakter yang ditetapkan pada saat field tersebut dideklarasikan.
Sebaliknya, tipe data varchar() besar memori penyimpanan tergantung terhadap
berapa karakter yang digunakan ditambah 1 byte yang berisi data jumlah karakter
yang digunakan.
2.9 Pengantar
Sintak Dasar Mysql
MySQL merupakan bahasa pemograman database di mana penulisan sintaknya tidak serumit bahasa pemograman lainnya seperti java, C++ dan sebagainya. Satu hal yang perlu diingat bahwa setiap penulisan script MySQL di Dos-Prompt harus selalu diakhiri dengan tanda titik koma (;).
Di dalam source MySQL yang telah terinstal secara default
telah terisi sebuah database yang bernama mysql dan tes . Untuk dapat
menampilkan apa saja nama database yang telah ada maupun yang akan kita buat,
gunakan sintak :
Membuat Database Baru
Membuat database
Untuk membuat sebuah database dengan nama ‘formulir’ kita tidak perlu harus keluar terlebih dahulu dari salah satu database walau kita sebelumnya telah masuk ke dalamnya, untuk membuatnya gunakan syntax berikut
create database Formulir;
mysql> create database Formulir -> ;
Query OK, 1 row affected (0.01 sec)
mysql>
Query OK, 1 row
affected (0.01 sec) berarti kita telah berhasil membuat sebuah database yang
bernama formulir. Dan untuk menghapusnya, gunakan sintak sebagai berikut :
mysql>drop database formulir;
Pada kondisi di
atas, apabila kita lupa meletakkan tanda titik koma (;) di akhir kalimat maka
pada baris setelahnya akan keluar tanda (->). Di samping tanda tersebut
harus kita beri tanda titik koma (;) agar dapat berjalan dengan baik.
Membuat table
Setelah kita memasuki sebuah database, kita dapat mulai membuat tabel – tabel sesuai dengan keperluan kita. Dalam database dikenal primary key, yaitu field yang menjadi acuan data terhadap field-field lainnya dan primary key tidak boleh null.Misalkan nama tabelnya adalah ‘data’, maka sintaknya.
2.10 Sistem Keamanan pada MySQL
Untuk keamanan pada MySQL, kita harus mengatur hak akses (privilage) dari setiap user karena tidak semua user dibolehkan untuk mengakses data yang ada.
Cara kerja sistem privilege :
Sistem privilege MySQL memastikan bahwa user dapat melakukan hanya hal-hal
yang diperbolehkan untuk mereka. Ketika anda connect ke server MySQL, identitas
anda ditentukan oleh host tempat anda melakukan koneksi dan username yang anda
ingin gunakan. Sistem memberi privilege sesuai dengan identitas anda dan apa
yang ingin ada lakukan.
MySQL mempertimbangkan baik hostname dan username dalam mengidentifikasi
karena mungkin ada alasan untuk menganggap bahwa username yang diberikan adalah
milik orang yang sama dimanapun di Internet. Sebagai contoh, user bill yang
connect dari whitehouse.gov tidak harus orang yang sama dengan user bill yang
connect dari microsoft.com. MySQL menangani hal ini dengan mengijinkan anda
untuk menentukan user dari host yang berbeda yang mungkin namanya sama : anda
dapat memberi bill sebuah himpunan privilege untuk koneksi dari whitehouse.gov,
dan himpunan privilege yang lain untuk koneksi dari microsoft.com.
Kendali akses
MySQL melibatkan dua tingkat:
·
Tingkat 1: server mengecek apakah anda diijinkan untuk
connect ke server.
·
Tingkat 2: Dianggap anda dapat connect, server mengecek
tiap permintaan yang anda jalankan untuk melihat apakah privilege anda cukup
untuk menjalankannya. Contohnya, jika anda mencoba untuk memilih baris dari
tabel dalam database atau menghapus sebuah tabel dari database, server
memastikan bahwa anda memiliki privilege select untuk tabel tersebut atau
privilege drop untuk database.
Dalam database mysql terdapat lima buah tabel yang dapat
digunakan untuk mengatur user dan izin akses masing-masing user-user privileges
Yaitu : user, db, host, tables_priv dan columns_priv. Kelima tabel ini disebut
grant tables.
Fungsi dari
kelima tabel tersebut :
1. User : Berisi
data user yang mendapatkan izin akses MySQL, asal koneksi dan izin akses kepada
user Tingkatan akses : Global
2. Db : Mengatur
database apa saja yang dapat diakses oleh seorang user dan jenis izin aksesnya
Tingkatan akses : Database
3. Host : Mengatur
asal host yang diperkenankan bagi user untuk mengakses MySQL, jika lebih dari
satu host. Tingkatan akses : Database
4. tables_priv :
Mengatur tabel apa saja yang dapat diakses oleh seorang user dan jenis izin
aksesnya Tingkatan akses : Tabel
5. columns_priv :
Mengatur kolom (field) apa saja yang dapat diakses oleh seorang user dan jenis
izin aksesnya Tingkatan akses : Kolom – field.
Jenis Izin Akses User - User Privileges
Izin akses bagi user terdirli dari tiga bagian, yaitu :
1. Tingkatan akses
user biasa
Mencakup izin
akses kedalam database atau kolom, yaitu :
a. ALTER
b. CRETATE
c. DELETE
d. DROP
e. INDEX
f. INSERT
g. SELECT
h. UPDATE
i. REFERENCES
2. Tingkatan akses
administrator - Global administrative
Hanya digunakan oleh user setingkat root atau
administrator dan tidak diberikan kepada user biasa, yaitu :
a. FILE
b. PROCESS
c. RELOAD
d. SHUTDOWN
e. CREATE TEMPORARY TABLE
f. EXCUTE
g. LOCK TABLES
h. REPLICATION CLIENT
l. REPLICATION SLAVE
j. SHOW DATABASES
k. SUPER
3. Tingkatan Akses
khusus — Special privileges
Dapat diterapkan pada setiap user dengan izin akses
sebagai berikut :
a. ALL
b. USAGE
Memberikan
Password Untuk Root Dapat dilakukan dengan perintah Update. update user set
password:password(’xxxxxxxxxx’)
where user=’root’ ;
Lanjutkan dengan perintah FLUSH
flush privileges
Fungsl flush :
Mysql membaca grant tables hanya satu kali pada saat
server pertama kali dijalankan, perintah flush akan memerintahkan kepada sistem
untuk membaca ulang kelima grant tables tanpa harus merestart server mysql.
BAB
III
PENUTUP
Kesimpulan
SQL (Structured Query Language) adalah
sebuah bahasa yang digunakan untuk mengakses data dalam basis data
relasional. Bahasa ini secara de facto merupakan bahasa standar yang digunakan
dalam manajemen basis data relasional. Saat ini hampir semua server basis data yang ada mendukung bahasa ini untuk melakukan
manajemen datanya.
Secara umum, SQL terdiri dari dua bahasa, yaitu Data
Definition Language (DDL)dan Data Manipulation Language (DML). Implementasi DDL
dan DML berbeda untuk tiap sistem manajemen basis data (SMBD), namun
secara umum implementasi tiap bahasa ini memiliki bentuk standar yang
ditetapkan ANSI.
Saran
MySQL merupakan database yang sangat
cepat, dapat diandalkan dan mudah untuk digunakan. Jika hal itu yang anda
cari maka anda harus mencobanya. Selain itu, source programnya pun dapat anda dapatkan secara gratis dan syntax - syntaxnya
mudah untuk dipahami dan tidak rumit serta pengaksesan database
dapat dilakukan dengan mudah dan cepat.
DAFTAR PUSTAKA
http://www.scribd.com/doc/90453663/Makalah-SQL
(Tanggal Akses : 05 Januari 2015 jam 09:21)
(Tanggal Akses : 05 Januari 2015 jam 09:21)
http://lifeopensourch.blogspot.com/2012/07/makalah-basis-data-xamppsql.html
(Tanggal Akses : 05 Januari 2015 jam 12:00)
(Tanggal Akses : 05 Januari 2015 jam 12:00)
http://www.slideshare.net/AmbarSusilowati/makalah-tentang-database
(Tanggal Akses : 05 Januari 2015 jam 15:00)
(Tanggal Akses : 05 Januari 2015 jam 15:00)
http://ma-noer.blogspot.com/2013/01/makalah-sistem-database.html
(Tanggal Akses : 07 Januari 2015 jam 14:45)
(Tanggal Akses : 07 Januari 2015 jam 14:45)
