Anda di halaman 1dari 44

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/317210979

Administrasi Database Server MySQL

Book · April 2002

CITATIONS READS

4 1,045

1 author:

Didik Dwi Prasetya


State University of Malang
39 PUBLICATIONS   76 CITATIONS   

SEE PROFILE

Some of the authors of this publication are also working on these related projects:

Advanced Learning Technologies View project

Mobile apps View project

All content following this page was uploaded by Didik Dwi Prasetya on 10 May 2020.

The user has requested enhancement of the downloaded file.


BAB
1 Mengenal MySQL

1.1 Apa Itu MySQL ?


MySQL adalah Relational Database Management Sistem (RDBMS) yang di
distribusikan secara gratis di bawah lisensi GPL (General Public License).
Di mana setiap orang bebas untuk menggunakan MySQL, namun tidak
boleh dijadikan produk turunan yang bersifat closed source atau
komersial.
MySQL sebenarnya merupakan turunan dari salah satu konsep utama
dalam database sejak lama yaitu SQL (Structured Query Language). SQL
adalah sebuah konsep pengoperasian database, terutama untuk
pemilihan/seleksi dan pemasukan data, yang memungkinkan
pengoperasian data dikerjakan dengan mudah secara otomatis.
Kehandalan 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. Kemampuan yang cukup menakjubkan untuk sebuah
software gratisan.
MySQL adalah satu dari sekian banyak sistem database, merupakan
terobosan solusi yang tepat dalam aplikasi database. Di dukung oleh
ribuan bahkan jutaan komunitas pengguna di internet yang siap

1
membantu. Selain itu juga tersedia mailing list dan homepage khusus
yang memberikan tutorial serta dokumentasi lengkap.

1.2 Sejarah Singkat MySQL


MySQL dikembangkan sekitar tahun 1994 oleh sebuah perusahaan
pengembang software dan konsultan database bernama MySQL AB yang
bertempat di Swedia. Waktu itu perusahaan tersebut masih bernama
TcX DataKonsult AB, dan tujuan awal dikembangkannya MySQL adalah
untuk mengembangkan aplikasi berbasis web pada client.
Awalnya Michael Widenius “Monty”, pengembang satu-satunya di TcX,
memiliki sebuah aplikasi UNIREG dan rutin ISAM buatannya sendiri dan
sedang mencari antarmuka SQL yang cocok untuk di implementasikan
kedalamnya. Mula-mula Monty memakai miniSQL (mSQL) pada
eksperimennya itu, namun mSQL dirasa kurang sesuai, karena terlalu
lambat dalam dalam pemrosesan query.
Akhirnya Monty menghubungi David Hughes, pembuat mSQL yang
sedang merilis versi kedua dari mSQL. Kemudian Monty mencoba
membuat sendiri mesin SQL yang memiliki antarmuka mirip dengan
SQL, tapi dengan kemampuan yang lebih sesuai dan lahirlah MySQL.
Tentang pengambilan nama MySQL, sampai saat ini masih belum jelas
asal usulnya. Ada yang berpendapat nama My diambil dari huruf depan
dan belakang Monty, tetapi versi lain mengatakan nama itu diambil dari
putri Monty yang kebetulan juga bernama My.

1.3 Keistimewaan MySQL


Sebagai database server yang memiliki konsep database modern, MySQL
memiliki banyak sekali keistimewaan. Berikut ini adalah beberapa
keistimewaan yang dimiliki oleh MySQL:
Portability
MySQL dapat berjalan stabil pada berbagai sistem operasi di
antaranya adalah seperti Windows, Linux, FreeBSD, Mac OS X
Server, Solaris, Amiga, HP-UX dan masih banyak lagi.

2
Open Source
MySQL di distribusikan secara open source (gratis), di bawah lisensi
GPL sehingga Anda dapat menggunakannya secara cuma-cuma
tanpa dipungut biaya sepeser pun.
Multiuser
MySQL dapat digunakan oleh beberapa user dalam waktu yang
bersamaan tanpa mengalami masalah atau konflik. Hal ini
memungkinkan sebuah database server MySQL dapat di akses client
secara bersamaan.
Performance Tuning
MySQL memiliki kecepatan yang menakjubkan dalam menangani
query sederhana, dengan kata lain dapat memroses lebih banyak
SQL per satuan waktu.
Column Types
MySQL memiliki tipe kolom yang sangat kompleks, seperti
signed/unsigned integer, float, double, char, varchar, text, blob,
date, time, datetime, timestamp, year, set serta enum.
Command dan Functions
MySQL memiliki operator dan fungsi secara penuh yang
mendukung perintah SELECT dan WHERE dalam query.
Security
MySQL memiliki beberapa lapisan sekuritas seperti level
subnetmask, nama host, dan izin akses user dengan sistem
perizinan yang mendetail serta password terenkripsi.
Scalability dan Limits
MySQL mampu menangani database dalam skala besar, dengan
jumlah records lebih dari 50 juta dan 60 ribu tabel serta 5 miliar
baris. Selain itu, batas indeks yang dapat ditampung mencapai 32
indeks pada tiap tabelnya.
Connectivity
MySQL dapat melakukan koneksi dengan client menggunakan
protokol TCP/IP, Unix soket (Unix), atau Named Pipes (NT).

3
Localisation
MySQL dapat mendeteksi pesan kesalahan (error code) pada client
dengan menggunakan lebih dari dua puluh bahasa. Meski demikian,
bahasa Indonesia belum termasuk di dalamnya.
Interface
MySQL memiliki interface (antar muka) terhadap berbagai aplikasi
dan bahasa pemrograman dengan menggunakan fungsi API
(Application Programing Interface).
Clients dan Tools
MySQL dilengkapi dengan berbagai tool yang dapat digunakan
untuk administrasi database, dan pada setiap tool yang ada
disertakan petunjuk online.
Struktur Tabel
MySQL memiliki struktur tabel yang lebih fleksibel dalam
menangani ALTER TABLE, dibandingkan database lainnya semacam
PostgreSQL ataupun Oracle.

1.4 Posisi Pasar MySQL


Saat ini MySQL merupakan software database yang memegang kendali
terbesar pada aplikasi database berbasis web. Arsitektur databasenya
sangat cocok bekerja pada lingkungan tersebut, didukung
kemampuannya dalam berinteraksi dengan berbagai bahasa
pemrograman side-server seperti PHP, ASP, CGI dan JSP. Seperti kita
ketahui, untuk saat ini masih belum ada yang mampu menggantikan
kedudukan bahasa-bahasa pemrograman tersebut dalam dunia web
maupun internet.
Keluwesan MySQL yang mampu berjalan pada berbagai sistem operasi
semakin menjanjikan masa depan yang cerah. Khususnya pada web
database di mana posisi web server saat ini masih dipegang kuat oleh
Linux dengan berbagai distronya.
Ringan dan cepat begitulah kesan yang melekat pada database open
source ini, meski bukan merupakan SQL server yang sesungghunya,
karena belum memiliki semua fitur-fitur seperti yang ada pada database
berbasis desktop. Namun pengembang MySQL, sudah berniat untuk
melengkapi fitur-fitur tersebut pada versi mendatang.

4
Seiring dengan perkembangannya, MySQL mulai banyak di lirik
pengguna database non-web. Apa sebabnya? Karena selain handal di
platform web, MySQL juga telah memenuhi syarat sebagai database
desktop. Terbukti banyaknya pengguna database seperti Yahoo! Finance,
perusahaan sekuritas Jepang Aizawa bahkan Badan Antariksa Amerika
Serikat, NASA menggunakan MySQL untuk mengelola data keuangan dan
transaksi bisnisnya. Lebih lengkapnya, Anda dapat mengunjungi
http://www.mysql.com untuk menyimak perkembangan terakhir
produk dan profil pengguna MySQL.

1.5 Penambahan Fitur Baru


MySQL AB, selaku pengembang utama terus berusaha menambahkan
fitur-fitur baru dalam MySQL, untuk memenuhi tuntutan-tuntutan para
pengguna database ini yang terus meningkat jumlahnya..
Berikut ini fitur-fitur yang dijanjikan pada MySQL mendatang:
Subselect
Penambahan fitur pada versi 4.1
Subselect merupakan rangkaian select yang dikombinasikan pada query
dalam level yang sama.

Foreign Key Constraint


Penambahan fitur pada versi 4.1
Atribut Foreign Key berfungsi untuk membuat batasan (constraint) pada
kolom di dalam tabel lain, dengan syarat kolom tersebut harus
mempunyai hubungan dengan kolom primary key pada tabel lain.

Full Join
Penambahan fitur pada versi 4.1
Full Join adalah pengambilan data pada lebih dari satu tabel yang saling
berhubungan tanpa menggunakan index. Normalnya untuk
mendapatkan join dengan cepat maka memerlukan suatu index.

Stored Procedure
Penambahan fitur pada versi 5.0
Stored Procedure merupakan sekumpulan pernyataan SQL yang
ditempatkan pada server untuk di eksekusi. Dengan menggunakan
stored procedure akan dapat meningkatkan kecepatan, karena database

5
server terlebih dahulu akan melakukan perhitungan yang paling efisien
sebelum menjalankan stored procedure.

View
Penambahan fitur pada versi 5.0
View merupakan objek database seperti tabel namun secara fisik tidak
memiliki data. Oleh karena itu view juga disebut sebagai virtual table
atau tabel palsu. Meski demikian view juga dapat di SELECT
sebagaimana layaknya sebuah tabel.

Cursor
Penambahan fitur pada versi 4.1
Cursor memungkinkan query select menjadi nama dan individual untuk
mendapatkan kembali hasil baris yang dibutuhkan oleh client.

Trigger
Penambahan fitur pada versi 5.0
Trigger berfungsi untuk memeriksa nilai dalam suatu record sebelum
record tersebut disimpan dalam tabel, dengan kata lain trigger
memanggil suatu fungsi pada saat setiap record mengalami perubahan.

Privileges (Izin Akses)


Penambahan fitur pada versi 4.0.2
Privileges merupakan sistem perizinan pada MySQL, izin akses ini
sudah ada pada MySQL. Hanya saja, nantinya akan ada beberapa
penambahan, seperti create temporary tables, execute dan super.

1.6 Cara Mempelajari Buku Ini?


Materi yang dibahas dalam buku ini dapat Anda praktekkan pada sistem
operasi Windows maupun Linux, meski di sini lebih banyak mengambil
contoh pada Windows. Pada dasarnya tidak ada perbedaan jauh
penggunaan perintah pada kedua sistem operasi tersebut, jika Anda
sudah masuk dan bekerja pada direktori utama serta command prompt
MySQL. Hanya proses instalasi serta konfigurasi yang membedakannya,
sehingga Anda perlu menyesuaikan sistem operasi mana yang Anda
gunakan. Namun Anda tidak perlu cemas, karena instalasi serta

6
konfigurasi kedua sistem operasi tersebut akan dibahas secara rinci
nantinya.
Buku ini tidak membahas mengenai konsep-konsep database secara
mendalam, akan tetapi lebih memfokuskan pada pengelolaan atau
administrasi database. Sehingga bagi Anda yang masih pemula dan
awam dengan database, dapat mencari referensi dari buku-buku lain.
Jika Anda benar-benar ingin mematangkan konsep-konsep database.
Selain itu, jika Anda baru belajar MySQL, disarankan untuk mempelajari
buku ini dari bab awal, karena bab-bab selanjutnya sangat berkaitan.
Dengan demikian, Anda akan merasa mudah dalam memahami isi buku
ini.
Bagi Anda yang sudah paham dengan dasar-dasar MySQL, Anda dapat
langsung mempelajari materi yang lebih spesifik tentang administrasi
user, backup dan recovery, performance tuning dan security database.
Pada bagian terakhir, yaitu Bab Lampiran, Anda akan dituntun cara
melakukan administrasi database MySQL menggunakan phpMyAdmin
serta MySQL-Front. Kedua tool tersebut tidak akan disertakan ketika
Anda menginstal MySQL, sehingga Anda perlu melakukan instalasi serta
konfigurasi sendiri.

7
BAB
2 Instalasi dan Konfigurasi

Pada bab ini akan kita bahas secara lengkap urutan instalasi MySQL baik
pada sistem operasi Linux maupun yang sudah di porting pada Windows.
Untuk pembahasan pada buku ini, penulis menggunakan Windows 2000
Professional dan Linux Redhat 7.2. Tetapi bagi Anda yang masih setia
menggunakan keluarga Windows 9x tidak perlu cemas, karena Anda juga
bisa menggunakan Windows 95/98/Me untuk menginstal MySQL.
Selain itu juga akan dibahas langkah-langkah yang harus dilakukan
setelah proses instalasi berjalan dengan baik. Pembahasan itu meliputi
konfigurasi dan cara mengakses MySQL Server pada kedua sistem
operasi tersebut.

2.1 Paket Aplikasi


MySQL merupakan software yang didistribusikan secara gratis dengan
lisensi GPL, dan cukup mudah untuk mendapatkannya. Jika ingin
mendapatkan versi terbaru, Anda dapat mengunjungi web site utama
aplikasi ini di http://www.mysql.com/. Sampai buku ini ditulis, paket
terbaru yang bisa Anda dapatkan adalah versi MySQL-4.0.0-alpha.
Namun jika versi yang lebih tinggi telah beredar, sebaiknya Anda
menggunakan versi tersebut.
Selain itu jika Anda ingin menggunakan versi lain sebelumnya, usahakan
mencari yang terstabil. Untuk versi 3.22.xx di anjurkan memakai versi
3.22.32 sedangkan pada versi 3.23.xx, di anjurkan memakai versi
3.23.33.

8
Jika Anda berada dalam lingkungan Windows, Anda dapat menggunakan
paket installer dalam bentuk zip. Sedangkan pada Linux paket aplikasi
ini lebih mudah didapatkan, karena telah disertakan pada CD installer
Linux, meski juga tersedia aplikasi dari source code-nya.
Paket aplikasi yang Anda perlukan untuk instalasi pada Linux adalah:
mysql-3.23.41-1
mysql-devel-3.23.41-1
mysql-server-3.23.41-1
mysqlclient9-3.23.22-6

2.2 Instalasi MySQL


Mengingat komunitas pengguna database MySQL cukup banyak dan
beragam, dengan berbagai platform sistem operasi maka kurang adil
kalau penulis hanya membahas pada satu sistem operasi saja.
Selanjutnya kita akan membahas proses instalasi MySQL pada Windows
dan Linux. Hal itu disebabkan pengguna database MySQL pada kedua
sistem operasi tersebut sangat dominan. Bagi Anda yang kurang begitu
familiar dengan Linux dapat mencobanya pada Windows.

2.2.1 Instalasi pada Windows


Instalasi MySQL pada Windows cukup mudah, sebagaimana Anda
menginstal program-program lainnya. Di sini tidak diperlukan keahlian
atau ketrampilan khusus. Meski demikian, kita akan membahas proses
instalasi ini secara lengkap, sehingga bagi Anda yang masih pemula tetap
dapat mengikuti materi buku ini dengan sempurna.

Berikut langkah-langkah menginstal MySQL pada Windows:


1. Setelah Anda mendapatkan paket aplikasi dalam bentuk zip, lalu
lakukan unzip pada folder yang Anda sukai, kemudian jalankan file
Setup.exe sehingga muncul tampilan seperti Gambar 2.1.

9
Gambar 2.1 Tampilan saat setup.exe dijalankan

2. Ketika muncul kotak Welcome seperti Gambar 2.2, klik Next.


3. Setelah itu akan muncul kotak dialog Information seperti pada
Gambar 2.3, dan klik Next

Gambar 2.2 TampilanWelcome pada instalasi

10
Gambar 2.3 Tampilan kotak dialog Information

4. Kemudian akan muncul kotak dialog Choose Destination Location


seperti Gambar 2.4, pada Destination Folder terdapat tempat dan
nama MySQL akan terinstal. Sebaiknya Anda tidak mengubah lokasi
default ini, klik Next.

Gambar 2.4 Tampilan lokasi instalasi

11
5. Selanjutnya akan muncul kotak dialog Setup Type seperti Gambar
2.5, pilih Typical, kemudian klik Next.

Gambar 2.5 Tampilan pemilihan jenis instalasi

6. Setelah itu akan muncul tampilan proses instalasi seperti tampak


pada Gambar 2.6.

Gambar 2.6 Tampilan proses instalasi

12
7. Setelah proses instalasi selesai, akan muncul kotak dialog konfirmasi
Setup Complete seperti Gambar 2.7. Hal itu menandakan bahwa
proses instalasi telah berhasil dengan baik. Klik Finish untuk
mengakhiri MySQL Servers and Clients 4.0.0-alpha Setup.

Gambar 2.7 Tampilan saat instalasi sudah berhasil

Sampai di sini, Anda sudah berhasil melakukan instalasi MySQL dengan


baik. Selanjutnya untuk menjalankan atau mengaksesnya akan kita
bahas nanti, berikut konfigurasi setelah proses instalasi untuk pertama
kalinya.

2.2.2 Instalasi pada Linux


Untuk instalasi pada Linux ini penulis menggunakan paket aplikasi
MySQL-3.23.32, yang telah disertakan pada distro Redhat 7.2. Kita tidak
akan membahas proses instalasi dari shell (text mode), tetapi
menggunakan tool instalasi GnoRPM. Tool bawaan Redhat ini cukup
familiar karena juga menggunakan tampilan grafis.
Semua administrasi pada sistem operasi Linux, di handle oleh root, dan
Anda harus login sebagai root untuk memulai proses instalasi ini. Jadi
ketika Anda masih login sebagai user biasa, dan mencoba menjalankan
GnoRPM, Anda akan di minta memasukkan password root terlebih
dahulu.

13
Berikut langkah-langkah menginstal MySQL pada Linux:
1. Masukkan CD kedua Linux Redhat pada CD-ROM, dan akan di mount
secara otomatis oleh Redhat.
2. Jalankan GnoRPM dengan menekan logo GNOME pada pojok kiri
bawah, lalu pilih System > GnoRPM. Kemudian akan muncul
tampilan seperti Gambar 2.8.

Gambar 2.8 Tampilan utama GNORPM

3. Kemudian klik tombol Install, dan akan muncul kotak dialog Install
seperti Gambar 2.9.

14
Gambar 2.9 Tampilan kotak dialog Install

4. Selanjutnya berikan tanda cek pada paket aplikasi yang akan di


install, kemudian klik Install, dan akan terlihat tampilan proses
instalasi seperti Gambar 2.10.

Gambar 2.10 Tampilan proses instalasi

5. Setelah tampilan proses instalasi selesai maka MySQL sudah


terinstal pada sistem operasi Linux Anda, dan tutup GNORPM
dengan menekan tombol Close.

15
2.3 Konfigurasi MySQL Server
Konfigurasi ini sangat diperlukan ketika Anda ingin melakukan
administrasi seperti backup database, mengoptimalkan kerja server
serta mengaktifkan tool-tool MySQL. Konfigurasi utama MySQL terletak
pada dua buah file, yaitu my.ini dan my.cnf.
Normalnya, Anda hanya perlu memilih salah satu dari kedua file tersebut
di atas. Jadi ketika Anda telah melakukan konfigurasi pada my.ini, Anda
tidak perlu lagi melakukan konfigurasi yang sama pada my.cnf. Hanya
saja, di sini kita akan menggunakan my.cnf untuk konfigurasi nantinya,
karena pada file tersebut sudah ada contoh-contoh konfigurasi yang
diperlukan.

2.3.1 Konfigurasi File my.ini


File ini terletak pada direktori C:\my.ini, dan akan Anda temukan begitu
Anda menjalankan tool winmysqladmin (pada Windows) untuk pertama
kalinya.
Berikut ini contoh file my.ini setelah proses instalasi, ketika belum
dilakukan perubahan:

#This File was made using the WinMySQLAdmin 1.3 Tool


#30/08/2002 13:29:42
#Uncomment or Add only the keys that you know how works.
#Read the MySQL Manual for instructions

[mysqld]
basedir=C:/mysql
#bind-address=127.0.0.1
datadir=C:/mysql/data
#language=C:/mysql/share/your language directory
#slow query log#=
#tmpdir#=
#port=3306
#set-variable=key_buffer=16M
[WinMySQLadmin]
Server=C:/mysql/bin/mysqld-nt.exe
user=test
password=terserah

16
File my.ini, berisi informasi direktori utama MySQL, direktori data, jenis
server yang digunakan dan nama user beserta password ketika MySQL
pertama kali dijalankan. Misalnya ketika Anda melakukan perubahan
pada jenis server, maka perubahan tersebut akan langsung di simpan
dalam file ini. Anda cukup memahami fungsi file ini terlebih dahulu,
mengenai cara perubahan MySQL Server akan dijelaskan nanti pada Bab
10.

2.3.2 Konfigurasi File my.cnf


Selanjutnya kita akan membahas file utama yang kedua, letak default file
ini adalah pada C:\my.cnf. Akan tetapi mungkin Anda belum mendapati
file ini pada direktori tersebut jika Anda baru pertama kali menginstal
MySQL, karena file ini perlu di konfigurasikan terlebih dahulu. Sebagai
gantinya Anda akan mendapati file bernama my-example pada
C:\mysql, yang merupakan contoh file my.cnf.
File ini berisi konfigurasi tool-tool seperti mysql, mysqladmin, mysqld,
mysqldump dan beberapa tool lainnya yang akan kita bahas pada Bab
selanjutnya.
Perlu di ingat, Anda tidak dapat membuka file ini dengan cara klik ganda
langsung. Untuk membukanya, terlebih dulu buka teks editor, baru
kemudian cari lokasi file ini.

2.4 Mengakses MySQL


Setelah proses instalasi MySQL berhasil dengan baik, selanjutnya kita
akan membahas cara mengakses MySQL Server dengan benar.
Pembahasan ini meliputi cara mengakses MySQL pada Windows dan
Linux untuk pertama kalinya. Lebih jelasnya, berikut akan kita bahas
satu-persatu secara rinci.

2.4.1 Mengakses MySQL pada Windows


Apabila Anda menggunakan keluarga Windows 2000 (NT/XP), Anda
dapat menjalankan MySQL Server pada service. Untuk itu cari file
winmysqladmin yang terletak di C:\mysql\bin kemudian klik dua kali.
Ketika dijalankan pertama kali, file aplikasi ini akan membuat
konfigurasi pada file my.ini. Namun perlu di ingat, Anda cukup

17
menjalankan file ini sekali saja, karena untuk selanjutnya MySQL akan
dijalankan secara otomatis begitu Anda masuk pada Windows.
Jika Anda baru pertama kali menginstal MySQL, setelah Anda
menjalankan file aplikasi ini, akan muncul tampilan WinMySQLadmin
Quick Setup seperti Gambar 2.11.

Gambar 2.11 Tampilan setelah menjalankan winmysqladmin

Anda wajib mengisikan User name dan Password di atas, untuk proses
pembuatan file my.ini. Jika Anda mengabaikannya maka konfigurasi
my.ini tidak akan mendeteksi direktori utama dan direktori database
MySQL. Walaupun sebenarnya pengisian user name dan password di
atas hanya sebuah syarat untuk membuat file my.ini.
Pada pengisian form tersebut, Anda boleh sembarang mengisi karena
tidak akan dipakai untuk seterusnya. Perlu Anda ketahui, administrasi
user MySQL terletak pada user root dan akan kita bahas nanti pada Bab
4. Seperti terlihat pada tampilan di atas, misalnya kita memberikan user
name test dengan password terserah, lalu klik OK.
Sampai di sini Anda sudah berhasil menjalankan MySQL server, dengan
di tandai munculnya ikon mirip lampu traffic pada pojok kanan bawah
yang menyala hijau.

18
Untuk menguji konfigurasi, lakukan tes koneksi pada MySQL Server
dengan langkah-langkah seperti berikut:

1. Masuk pada direktori utama mysql seperti perintah berikut:

2. Setelah itu, berikan perintah seperti contoh berikut:

3. Meski sebenarnya, Anda juga dapat langsung memberikan


perintah dari shell ketika Anda membuka command prompt.
Namun yang paling penting adalah, Anda harus mengetahui
bahwa direktori utama perintah MySQL terletak pada
C:\mysql\bin. Berikut ini perintah yang dapat Anda ketikkan
langsung dari shell:

4. Selanjutnya server akan merespon seperti berikut:

Tampilan di atas menandakan bahwa Anda telah berhasil melakukan


koneksi dengan MySQL Server.

Mengontrol MySQL Server


Seperti telah dijelaskan sebelumnya, normalnya MySQL akan dijalankan
secara otomatis. Jika Anda tidak menginginkan hal tersebut, Anda juga
dapat mengubahnya.
Untuk itu lakukan langkah-langkah berikut:

19
1. Buka Start Menu > Settings > Control Panel > Administrative
Tools, lalu klik dua kali pada Services. Sehingga akan muncul
tampilan seperti Gambar 2.12.

Gambar 2.12 Tampilan konfigurasi Services

2. Pada tampilan di atas, Anda dapat melakukan administrasi


seperti start, stop, pause dan restart service pada MySQL dengan
memilih kontrol-kontrol yang sesuai.
3. Terlihat pada Startup Type, MySQL dijalankan secara Automatic,
untuk mengubahnya, pilih service MySql kemudian klik kanan
dan pilih Properties. Sehingga akan muncul tampilan kotak
dialog MySql Properties seperti Gambar 2.13.

20
Gambar 2.13 Tampilan konfigurasi MySql Properties

4. Pada Startup type, Anda dapat memilih Automatic untuk


menjalankan server saat startup, Manual untuk menjalankan
server secara manual dan Disabled untuk menon-aktifkan
MySQL server.
5. Setelah Anda memilih Startup type sesuai yang Anda inginkan,
lalu klik Apply untuk menerapkan pilihan Anda tersebut, dan
klik OK.

Selain konfigurasi di atas, Anda juga dapat menjalankan atau


menghentikan MySQL server dengan cara klik pada Start Menu > Run.
Lalu ketikkan net start mysql untuk menjalankan MySQL server dan net
stop mysql untuk menghentikan MySQL server. Perintah ini juga dapat
Anda lakukan pada shell atau command prompt.

21
2.4.2 Mengakses MySQL pada Linux
Pada sistem operasi Linux, setelah Anda selesai melakukan instalasi
MySQL, maka akan dimasukkan file eksekusi bernama mysqld pada
direktori /etc/rc.d/init.d. File eksekusi atau daemon ini berfungsi untuk
menjalankan, menghentikan dan merestart MySQL Server.

Mengontrol MySQL Server pada Linux


Berbeda dengan Windows yang menjalankan server secara otomatis,
pada Linux, MySQL belum dijalankan begitu Anda selesai menginstalnya.
Anda dapat mencobanya dengan memberikan perintah berikut pada
shell atau command prompt:

[root@localhost didik]# mysql

Perintah di atas, akan mendapatkan respon sebagai berikut:

ERROR 2002: Can’t connect to local MySQL server through


socket ‘var/lib/mysql/mysql.sock’ (2)

Anda tidak perlu cemas, pesan di atas menandakan MySQL Server tidak
dapat melakukan koneksi, karena Anda belum menjalankan servernya.
Untuk menjalankan MySQL Server pada Linux, lakukan langkah-langkah
berikut:
1. Cari daemon mysqld dengan masuk pada direktori
/etc/rc.d/init.d, seperti perintah berikut:

[root@localhost didik]# cd/etc/rc.d/init.d

2. Kemudian jalankan MySQL Server dengan perintah seperti


berikut:

[root@localhost init.d]# ./mysqld start


Starting MySQL: [ OK ]

3. Setelah MySQL Server berjalan dengan tampilan seperti di atas,


lakukan testing dengan kembali memberikan perintah berikut:

22
[root@localhost init.d]# mysql

4. Setelah perintah di atas, Anda lakukan, hasilnya server akan


merespon demikian :

Kemudian untuk menghentikan MySQL Server, lakukan seperti contoh


perintah berikut:

[root@localhost init.d]# ./mysqld stop


Stoping MySQL: [ OK ]

Sedangkan untuk me-restart MySQL, Anda dapat menggunakan perintah


seperti berikut:

[root@localhost init.d]# ./mysqld restart


Stoping MySQL: [ OK ]
Starting MySQL: [ OK ]

Anda dapat memastikan apakah MySQL Server telah berjalan atau


belum, dengan memberikan perintah berikut:

[root@localhost init.d]# /usr/bin/mysqladmin ping


mysqld is alive
[root@localhost init.d]#

Pada contoh di atas, terlihat MySQL memberikan respon ‘mysqld is alive’


yang artinya bahwa MySQL Server sedang berjalan pada server Anda.

Menjalankan MySQL Secara Otomatis


Perlu di ingat bahwa konfigurasi yang Anda lakukan di atas sifatnya
adalah sementara. Jadi ketika Anda mematikan komputer maka daemon
mysqld juga akan dihentikan. Kemudian untuk menghidupkan kembali,
Anda harus memberikan perintah-perintah seperti di atas lagi.

23
Agar MySQL Server dapat dijalankan secara otomatis, sehingga setiap
Anda menghidupkan komputer, daemon mysqld juga ikut di-boot secara
otomatis, Anda perlu melakukan konfigurasi pada program ntsysv.
Untuk itu lakukan langkah-langkah seperti berikut:
1. Masuk pada shell atau terminal dengan login sebagai root,
seperti perintah berikut:

[root@localhost didik]#

2. Jalankan program ntsysv dengan memberikan perintah seperti


contoh berikut:

[root@localhost didik]# ntsysv

3. Setelah perintah di atas Anda jalankan, kemudian akan muncul


tampilan seperti Gambar 2.14.

Gambar 2.14 Menjalankan MySQL Server saat booting

4. Pada tampilan utama program ntsysv di atas, terlihat banyak


program daemon yang dapat Anda pilih untuk dijalankan setiap
kali server di-reboot.

24
5. Kemudian pilih daemon mysqld, yang merupakan daemon
MySQL Server. Untuk menjalankan layanan ini secara otomatis,
berikan tanda bintang dengan menekan spasi.
6. Setelah itu, klik Ok untuk menutup program ntsysv.

Untuk selanjutnya, MySQL Server akan di-boot secara otomatis setiap


kali Anda menghidupkan Linux, dan Anda tidak perlu lagi menghidupkan
secara manual setiap kali Anda ingin mengakses MySQL Server.

25
BAB
3 Perintah Dasar SQL

SQL (Structured Query Language) merupakan bahasa ANSI (American


National Standard Input) yang digunakan untuk melakukan query data
pada database. Semua pengoperasian data dapat dikerjakan secara
mudah dengan menggunakan bahasa ini, terutama dalam pemasukan
dan seleksi data.
Hampir semua software database mengimplementasikan bahasa ini
sebagai komponen utama dari produknya. Contohnya adalah database
server modern semacam MySQL, PostgreSQL, Oracle, Informix, Sybase,
Informix dan beberapa database lain yang memiliki konsep database
modern. Bahkan Microsoft Access yang merupakan database stand-alone
juga mendukung bahasa SQL.
Bab ini akan menjelaskan kepada Anda bagaimana cara menggunakan
perintah-perintah dasar SQL untuk mengakses data yang tersimpan pada
MySQL. Anda akan cepat memahami perintah-perintah SQL dengan cara
mempraktekkannya langsung pada command prompt MySQL. Bagi Anda
yang sudah menguasai bahasa SQL, Anda dapat melewati bab ini dan
melanjutkan ke bab selanjutnya

3.1 Menggunakan SQL


Bahasa SQL memiliki struktur yang mudah dipahami, karena
menggunakan perintah-perintah dalam bahasa Inggris. Anda dapat
melakukan perintah-perintah SQL pada database MySQL, seperti:

26
Memasukkan atau menambahkan record baru kedalam
database.
Mengeksekusi query database.
Mengambil data dari database.
Mengubah record pada database.
Menghapus record pada database.

Sebelum pembahasan ini kita lanjutkan, Anda perlu mengetahui bahwa


perintah SQL dapat Anda ketikkkan dengan huruf besar maupun kecil.
Hanya saja, di sini penulis menggunakan huruf besar agar Anda lebih
mudah membedakan antara perintah SQL dengan objek-objek lainnya.
Juga perlu di ingat, setelah selesai mengetikkan perintah SQL pada
prompt MySQL maka Anda wajib memberikan tanda titik koma yang
menandakan akhir dari perintah SQL.
Sekarang kita akan mulai menggunakan perintah SQL pada database
MySQL. Untuk saat ini Anda cukup menjalankan petunjuk yang ada,
karena perintah ini akan dijelaskan lebih rinci pada Bab 7 nanti.
Agar pemahaman Anda lebih jelas, kita akan memulai dengan bagian
paling awal, yakni pembuatan database baru. Sebagai contoh, buatlah
database dengan nama coba, dengan menggunakan perintah seperti
berikut:

Untuk memulai bekerja dengan database tersebut, Anda terlebih dahulu


harus memilih database tersebut sebagai database aktif dengan
menggunakan perintah berikut:

Setelah database aktif, kemudian buat sebuah tabel dengan nama sobat,
perhatikan contoh berikut:

27
Perintah di atas akan membuat sebuah tabel dengan nama sobat, yang
berisi kolom id dengan tipe integer dengan panjang 2 karakter, nama
tipe char dengan panjang 30 karakter, alamat tipe char panjang 20
karakter dan usia tipe integer panjang 2 karakter.
Kemudian isikan data-data berikut ke dalam tabel sobat, gunakan
perintah seperti berikut:

Jika semua perintah di atas selesai Anda kerjakan, maka dalam tabel
sobat telah terisi enam buah record.

3.2 Melihat Data dengan SELECT


Perintah SELECT digunakan untuk menampilkan data di dalam tabel,
perintah ini memiliki cakupan yang sangat luas. Agar Anda dapat
memahami fungsi perintah ini, Anda dapat mempraktekkan langsung
pada prompt mysql.

28
Menampilkan Semua Kolom
Anda dapat menampilkan seluruh data yang ada pada tabel sobat dengan
menggunakan perintah berikut:

Atau untuk lebih praktisnya, Anda dapat mengganti semua kolom


tersebut dengan tanda * (wildcard), dengan demikian Anda tidak perlu
lagi memberikan nama-nama kolom tersebut. Lebih jelasnya, perhatikan
contoh perintah berikut ini:

Menampilkan Kolom Tertentu


Sedangkan untuk query yang hanya melibatkan kolom-kolom tertentu,
Anda dapat menggunakan perintah sebagai berikut:

29
Perintah di atas hanya akan menampilkan data pada kolom nama dan
alamat yang ada pada tabel sobat.
DISTINCT
DISTINCT dipergunakan untuk menghindari pengulangan (redundant)
data pada kolom yang di inginkan. Perintah ini tidak akan menampilkan
lagi data-data yang memiliki nilai sama. Perhatikan contoh berikut:

Pada contoh di atas, terlihat data dalam kolom alamat yang ditampilkan
menggunakan perintah DISTINCT. Meskipun sebenarnya ada beberapa
data yang memiliki nilai sama, akan tetapi hanya ditampilkan sekali saja.

LIMIT
Apabila Anda memiliki data dalam jumlah banyak, Anda dapat
menggunakan LIMIT untuk membatasi data yang ditampilkan. Klausa ini
memudahkan Anda dalam melihat data yang berjumlah banyak, dan
dengan batas tertentu yang Anda sukai.
Untuk memperjelas pemahaman Anda, lakukan perintah seperti contoh
berikut ini:

30
Perintah di atas akan menampilkan data yang di mulai dari baris
pertama sampai baris ketiga. Kemudian untuk menampilkan data
selanjutnya, lakukan perintah berikut:

Terlihat pada contoh di atas, akan menyambung atau meneruskan data


dari baris ketiga sampai baris enam.

3.2.1 Mengurutkan Data dengan ORDER BY


Klausa ORDER BY digunakan untuk mengurutkan data, klausa ini
memiliki pilihan ascending dan descending. Ascending (ASC) akan
mengurutkan data menaik dari data yang terkecil, sedangkan descending
(DESC) adalah kebalikannya.
Untuk menampilkan data secara ascending, lakukan perintah seperti
contoh berikut :

31
Sedangkan untuk menampilkan data secara descending, perhatikan
contoh berikut:

3.2.2 Menyaring Data dengan WHERE


Klausa WHERE digunakan untuk menampilkan data dengan kondisi
tertentu, sehingga hasil yang dikeluarkan hanya yang sesuai dengan
kriteria yang Anda inginkan tersebut. Perintah ini sangat membantu
Anda untuk melakukan pencarian dengan cepat.Perhatikan contoh
berikut:

32
Pada kedua contoh di atas, terlihat data yang ditampilkan hanyalah data
yang sesuai dengan kriteria yang ditentukan saja.

Operator Logika
Operator logika digunakan untuk menggabungkan beberapa kondisi
dalam perintah query. Untuk lebih jelasnya, perhatikan contoh-contoh
seperti berikut:

BEETWEEN
BETWEEN digunakan untuk memberikan batas data pada suatu kolom di
dalam tabel. Perhatikan contoh berikut:

33
Hasil query di atas, akan menampilkan data dengan usia yang memenuhi
batas yang ditentukan.

LIKE
LIKE digunakan untuk mencari data dengan kriteria tertentu. Untuk
lebih jelasnya, perhatikan contoh berikut:

Selain contoh di atas, Anda juga dapat menggunakan tanda % (wildcard)


sebagai berikut:
%keyword : Mencari data yang diakhiri dengan keyword.
%keyword% : Mencari data yang mengandung kata keyword.

Untuk lebih jelasnya, perhatikan contoh-contoh berikut ini:

34
3.3 Fungsi Agregate
Fungsi agregate merupakan suatu fungsi untuk menghitung sejumlah
nilai dalam suatu tabel. Berikut ini adalah fungsi-fungsi agregate yang
dapat Anda gunakan:

Nama Fungsi Deskripsi


SUM( ) Untuk menghitung jumlah nilai pada suatu
kolom
AVG( ) Untuk menghitung nilai rata-rata pada suatu
kolom
MAX( ) Untuk mencari nilai maksimal pada suatu kolom
MIN( ) Untuk mencari nilai minimal pada suatu kolom
COUNT( ) Untuk menghitung jumlah baris pada suatu
kolom

Tabel 3.1 Fungsi-fungsi agregate

Selanjutnya kita akan membahas cara menggunakan fungsi-fungsi di


atas, yang akan kita praktekkan pada tabel sobat.

Fungsi SUM( )
Anda dapat mengetahui jumlah nilai pada suatu kolom dengan
menggunakan fungsi ini. Misalnya Anda ingin mengetahui jumlah
keseluruhan usia pada tabel sobat. Untuk itu, lakukan perintah seperti
contoh berikut:

35
Fungsi AVG( )
Anda dapat menghitung nilai rata-rata dari kolom usia dengan
menggunakan fungsi ini. Perhatikan contoh berikut:

Fungsi MAX()
Fungsi ini digunakan untuk mencari nilai maksimal pada suatu kolom.
Misalnya kita ingin mencari nilai maksimal dari kolom usia, perhatikan
contoh perintah berikut:

Fungsi MIN()
Sedangkan untuk mengetahui nilai minimal, Anda dapat menggunakan
perintah berikut ini:

36
Fungsi COUNT(*)
Fungsi ini dapat digunakan untuk menghitung jumlah record atau baris
yang tidak bernilai kosong pada suatu tabel. Perhatikan contoh berikut:

Selain itu, Anda juga dapat mengetahui record yang sama maupun yang
tidak sama, serta berapa jumlah record-nya. Untuk itu lakukan perintah
seperti berikut:

GROUP BY
GROUP BY merupakan salah satu fungsi agregate yang berguna untuk
mengelompokkan data. Klausa ini juga dapat digabung dengan fungsi
agregate lainnya. Perhatikan contoh berikut:

37
Pada contoh di atas, kita menggunakan fungsi GROUP BY untuk
mengelompokkan data dalam tabel sobat berdasarkan kolom nama dan
menggabungkannya dengan fungsi AVG.

3.4 Fungsi dalam SELECT


Jika sebelumnya Anda sudah memahami dan menggunakan fungsi untuk
melakukan perhitungan pada tabel, selanjutnya kita akan menggunakan
fungsi di luar tabel. Dengan kata lain, disini Anda tidak harus mempunyai
tabel untuk menggunakan fungsi ini.
Fungsi-fungsi ini dikelompokkan menjadi beberapa bagian, dan akan
dijelaskan sebagai berikut:

3.4.1 Non Tipe


Fungsi ini tidak memiliki tipe khusus, sehingga disebut dengan non tipe
dan memiliki beberapa operator. Kita hanay akan membahas beberapa
operator yang sering digunakan saja.

Parenthesis
Parenthesis adalah penggunaan tanda kurung untuk mendapatkan hasil
operator suatu bilangan. Perhatikan contoh berikut:

38
Hasil di atas akan berbeda dengan jika Anda memberikan operator
Parenthesis seperti berikut:

Comparison
Operator ini akan mengembalikan nilai 1 jika hasilnya benar (TRUE) dan
sebaliknya bernilai 0 jika salah (FALSE). Perhatikan contoh berikut:

Logical
Operasi yang digunakan pada operator ini adalah NOT (!), OR (||) dan
AND (&&). Seperti halnya pada COMPARISON, operator ini juga bernilai
1 jika benar dan sebaliknya bernilai 0 jika salah. Perhatikan contoh
berikut:

39
3.4.2 Fungsi String
Fungsi ini akan menghasilkan nilai NULL atau kosong apabila panjang
hasil akhir melebihi parameter server, dan memiliki banyak operator.
Kita akan membahas beberapa operator saja, misalnya untuk meng-
konversi bilangan atau mengubah huruf.
Misalnya, Anda ingin meng-konversi bilangan desimal ke bilangan biner.
Lakukan perintah seperti berikut:

Selain itu, Anda juga dapat mengubah huruf kapital dalam suatu kalimat
menjadi huruf kecil. Untuk itu perhatikan contoh berikut:

Sebaliknya untuk mengubah huruf kecil menjadi menjadi huruf besar


semua, gunakan fungsi string UCASE. Perhatikan contoh berikut:

40
3.4.3 Fungsi Numerik
Fungsi Numerik dapat digunakan untuk menghitung operasi Aritmetik
dan Matematika. Mengingat banyaknya fungsi yang ada, kita akan
membahas beberapa fungsi yang sering digunakan saja.
Aritmetika
Operasi ini meliputi penjumlahan, pengurangan, perkalian dan
pembagian bilangan. Contoh penggunaannya mirip dengan Comparison
pada fungsi string. Lebih jelasnya perhatikan contoh berikut:

Matematika
Kita dapat mencari hasil perhitungan matematika dengan mudah
menggunakan fungsi ini. Operasi-operasi matematika yang disediakan
cukup banyak sekali. .
Misalnya Anda ingin mencari nilai sinus atau tangen dari suatu bilangan,
berikut ini contoh perintah yang dapat Anda gunakan:

41
3.4.4 Fungsi Date dan Time
Fungsi ini memiliki fasilitas yang banyak sekali untuk menampilkan dan
melakukan manipulasi date/time. Perlu Anda ketahui, format default
date/time pada MySQL adalah ‘yyyy-mm’dd’. Sehingga ketika Anda
memasukkan suatu tanggal ke dalam tabel, maka harus menyesuaikan
dengan format tersebut.
Untuk mengetahui nama hari pada tanggal tertentu, Anda dapat
menggunakan contoh perintah berikut:

Anda juga dapat memanipulasi format default date/time MySQL dengan


menggunakan perintah DATE_FORMAT. Lebih jelasnya perhatikan
contoh berikut:

42
Untuk mengetahui lebih jelas lagi fungsi-fungsi diatas, Anda dapat
melihat dokumentasi manual yang disertakan setelah Anda menginstal
MySQL.

43

View publication stats

Anda mungkin juga menyukai