0% menganggap dokumen ini bermanfaat (0 suara)
5 tayangan

Structured Query Language 1

Dokumen ini membahas pengenalan MySQL dan phpMyAdmin serta cara mengakses dan mengelola objek di database MySQL menggunakan perintah SQL melalui klien konsol dan berbasis web.

Diunggah oleh

Radian Baratasena
Hak Cipta
© © All Rights Reserved
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
5 tayangan

Structured Query Language 1

Dokumen ini membahas pengenalan MySQL dan phpMyAdmin serta cara mengakses dan mengelola objek di database MySQL menggunakan perintah SQL melalui klien konsol dan berbasis web.

Diunggah oleh

Radian Baratasena
Hak Cipta
© © All Rights Reserved
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 112

PENGOLAHAN BASIS DATA MYSQL

DENGAN PHPMYADMIN

R. Radian Baratasena, M.Kom.


Materi:
 Pengenalan MySQL
 Manajemen Objek di MySQL
 Data Manipulation Language (DML),
Manajemen User, dan Data Control
Language (DCL).
 Backup & Restore Database
Pengenalan MySQL
Pengenalan MySQL
 MySQL merupakan sistem manajamen
database open source SQL yang paling
populer, dikembangkan, didistribusikan,
dan didukung oleh Oracle Corporation.
 Database merupakan kumpulan data
terstruktur.
 MySQL bertindak sebagai sistem
manajemen database yang digunakan
untuk menambahkan, mengakses, dan
memproses data yang tersimpan di
database komputer.
Pengenalan MySQL
 MySQL merupakan database yang bersifat
relasional, dimana data disimpan pada
tabel-tabel terpisah daripada
menempatkannya pada sebuah tempat
penyimpanan yang besar.
 Struktur database dikelola kedalam file-file
fisik yang dioptimasi kecepatannya. Model
logikal dengan objek-objek seperti
databases, tables, views, rows, dan colums,
memberikan fleksibilitas lingkungan
pemrograman.
Pengenalan MySQL
 MySQL memiliki performansi yang sangat
cepat, handal (reliable), scalable, dan mudah
digunakan.
 MySQL merupakan sistem client/server dan
dapat beroperasi pada embedded systems.
 MySQL menggunakan Structured Query
Language (SQL) yang merupakan bahasa
standard yang digunakan untuk mengakses
database yang didefinisikan oleh ANSI/ISO
SQL Standard.
Pengenalan MySQL
 MySQL Software bersifat Open Source,
dimana memungkinkan siapapun untuk
menggunakan dan memodifikasi perangkat
lunaknya. Siapapun dapat mengunduh
software MySQL, dan menggunakannya
tanpa perlu membayar.
 MySQL dapat berjalan di beragam
platform sistem operasi, seperti Unix,
Linux, Windows, dan Mac OS.
Lisensi MySQL
 MySQL memiliki 2 jenis lisensi yaitu:
a. Pengguna dapat memilih untuk
menggunakan MySQL sebagai produk
Open Source dibawah lisensi GNU
General Public License (GNU/GPL).
b. Pengguna dapat membeli standard lisensi
komersil dari Oracle.
Bagaimana memperoleh MySQL?
 MySQL dapat diunduh melalui alamat
http://dev.mysql.com/downloads
Software Pendukung Pembelajaran
 Untuk mendukung materi pembelajaran
yang terdapat pada pelatihan “Pengolahan
Database dengan MySQL” ini, diperlukan
beberapa perangkat lunak yaitu MySQL
sebagai server database, dan program mysql
client berbasis web phpMyAdmin. Agar
phpMyAdmin dapat digunakan diperlukan
server web Apache, dan interpreter bahasa
pemrograman PHP.
Software Pendukung Pembelajaran
 Perangkat lunak ini dapat diunduh dari
Internet, dan diinstalasi satu per satu.
Namun untuk mempermudah proses
instalasi dari beberapa perangkat lunak yang
dibutuhkan tersebut, maka pada proses
pembelajaran pelatihan ini diputuskan untuk
menggunakan paket aplikasi XAMPP.
XAMPP
 XAMPP merupakan paket perangkat lunak cross
platform yang bersifat free, dan open source
sebagai solusi untuk membangun server web,
dimana terdiri dari HTTP server Apache,
database MySQL, dan interpreter untuk skrip
yang ditulis dengan bahasa pemrograman PHP,
dan Perl.
 Nama XAMPP merupakan akronim dari:
a. X - dibaca "cross", yang bermakna cross-
platform.
b. A - Apache HTTP Server.
c. M – MySQL.
d. P – PHP.
e. P – Perl.
XAMPP
 Terdapat 4 jenis distribusi XAMPP yaitu:
a. XAMPP for Linux.
b. XAMPP for Windows.
c. XAMPP for MAC OS X.
d. XAMPP for Solaris.
XAMPP
 Distribusi XAMPP yang akan digunakan
adalah versi Windows, yang didalamnya
telah memuat: Apache, MySQL, PHP +
PEAR, Perl, mod_php, mod_perl, mod_ssl,
OpenSSL, phpMyAdmin, Webalizer,
Mercury Mail Transport System for Win32
and NetWare Systems v3.32, Ming, FileZilla
FTP Server, mcrypt, eAccelerator, SQLite, and
WEB-DAV + mod_auth_mysql.
XAMPP
 Paket aplikasi XAMPP dapat diunduh
melalui situs http://www.apachefriends.org
PRAKTIKUM
INSTALASI &
KONFIGURASI XAMPP
Control Panel XAMPP
 XAMPP menyediakan fitur Control Panel
yang dapat digunakan untuk
memanajemen service, seperti Apache
untuk layanan web, MySQL untuk layanan
database, FileZilla untuk layanan FTP, dan
Mercury untuk layanan Email.
 Control Panel dari XAMPP dapat diakses
melalui icon shorcut pada Desktop, atau
melalui Start menu > All Programs > XAMPP
For Windows > XAMPP Control Panel.
Control Panel XAMPP
Memverifikasi XAMPP
 Setelah mengaktifkan service-service
terkait melalui Control Panel XAMPP, Anda
dapat melakukan verifikasi melalui browser
dengan mengakses alamat berikut:
http://localhost atau http://127.0.0.1
PATH Binary MySQL
 Lokasi binary dari program aplikasi
MySQL terdapat pada direktori
C:\XAMPP\MySQL\bin.
 Untuk dapat menggunakan program
MySQL Client versi console/terminal,
diperlukan pengaturan PATH dari binary
MySQL.
PRAKTIKUM
KONFIGURASI &
VERIFIKASI PATH BINARY
MYSQL PADA SISTEM
OPERASI WINDOWS
Mengakses Server MySQL
 Untuk dapat mengakses database yang
terdapat pada Server MySQL dari
komputer client, maka digunakan program
mysql-client.
Mengakses Server MySQL
 Terdapat 3 jenis program mysql-client yaitu:
a. Berbasis console/terminal.
b. Graphical User Interface (GUI) berbasis
desktop, menggunakan program MySQL
Workbench atau lainnya yang berbayar
seperti Navicat.
c. Web based, menggunakan PhpMyAdmin.
Mengakses Server MySQL

 Pengguna yang ingin mengakses Server


MySQL harus melalui 2 tahapan yaitu:
a. Otentikasi, yaitu pengecekan username
(nama pengguna), dan password (sandi)
yang digunakan untuk koneksi.
b. Otorisasi, yaitu mengecek ijin akses
(privilege) user tersebut.
Mengakses Server MySQL
 Secara default, MySQL telah membuatkan
satu pengguna dengan hak akses penuh,
yang dapat digunakan untuk mengakses ke
server secara lokal (localhost), dengan
nama login “root”, dan sandi kosong
(blank).
MySQL Client via Console/Terminal
 Untuk dapat mengakses Server MySQL
menggunakan program mysql-client
berbasis console/terminal dapat dilakukan
dengan cara membuka program Command
Prompt dari Windows melalui Start menu >
All Programs > Accessories > Command
Prompt.
 Program mysql-client pada console atau
terminal dapat diakses menggunakan
perintah “mysql” pada command prompt.
MySQL Client via Console/Terminal
 Perintah “mysql” memiliki beragam
parameter. Untuk menampilkan informasi
paramater-parameter yang dimiliki
digunakan perintah “mysql --help”.
MySQL Client via Console/Terminal
 Untuk dapat mengkoneksikan ke server MySQL,
perintah “mysql” membutuhkan beberapa
parameter yaitu:
 -h : digunakan untuk menentukan hostname,
dimana dapat berupa nama komputer atau
alamat IP dari Server MySQL yang akan diakses.
 -u : digunakan untuk menentukan nama
pengguna (username) yang digunakan untuk login
ke Server MySQL.
 -p : digunakan untuk menentukan sandi login
(password) sesuai dengan nama login pengguna
yang digunakan. Apabila nilai dari paramater ini
dikosongkan maka akan ditanyakan dari terminal.
MySQL Client via Console/Terminal
 Sebagai contoh untuk terkoneksi ke server
MySQL dengan nama host (hostname)
“localhost” yaitu komputer lokal/diri
sendiri, menggunakan nama login pengguna
“root” dengan sandi kosong (blank), maka
perintah mysql beserta parameternya akan
tampak sebagai berikut:
MySQL Client via Console/Terminal
 Apabila koneksi berhasil dilakukan maka
akan tampil prompt “mysql>” pada
console/terminal.

 Melalui “mysql>” prompt ini selanjutnya


Anda dapat memasukkan perintah-perintah
SQL untuk memanajemen objek-objek pada
MySQL.
MySQL Client via Console/Terminal
 Untuk memutuskan koneksi ke Server
MySQL digunakan perintah “quit”.
MySQL Client via Console/Terminal
 Terdapat beberapa hal yang harus Anda
pahami terkait pengunaan “mysql>”
prompt yaitu:
a. Sebuah perintah umumnya terdiri dari
statement SQL yang diakhiri dengan tanda
semicolon “;”. Terdapat beberapa
pengecualian dimana tanda semicolon
dapat diabaikan, sebagai contoh perintah
“quit” dapat dieksekusi tanpa diakhiri
dengan tanda “;”.
MySQL Client via Console/Terminal
b. Ketika perintah dimasukkan, mysql-client akan
mengirimkannya ke server untuk dieksekusi,
dan menampilkan hasilnya, serta menampilkan
mysql> prompt berikutnya yang
mengindikasikan kesiapan untuk menerima
perintah selanjutnya.
MySQL Client via Console/Terminal
c. MySQL menampilkan hasil query dalam
format tabular (baris, dan kolom), dimana
baris pertama memuat label dari kolom,
dan baris selanjutnya merupakan hasil dari
query.
MySQL Client via Console/Terminal
d. MySQL menampilkan jumlah baris sebagai
hasil dari eksekusi, dan berapa lama query
tersebut dieksekusi.
MySQL Client via Console/Terminal
e. Keyword yang diketikkan dapat
menggunakan huruf apapun (tidak bersifat
case-sensitive).
MySQL Client via Console/Terminal
f. Beberapa statement dapat diketikkan pada
sebuah baris dengan ketentuan masing-
masing statement diakhiri dengan tanda
semicolon.
MySQL Client via Console/Terminal
g. Perintah tidak harus diketikkan dalam satu
baris.
MySQL Client via Console/Terminal
h. Untuk membatalkan eksekusi perintah
yang dimasukkan digunakan “\c”.
PRAKTIKUM
MYSQL CLIENT VIA
CONSOLE/TERMINAL
MySQL Client via Web Based
 phpMyAdmin dapat diakses melalui alamat
http://localhost/phpmyadmin atau
http://127.0.0.1/phpmyadmin
PRAKTIKUM
MYSQL CLIENT VIA
WEB BASED
Manajemen Objek MySQL
 Untuk memanajemen objek-objek di
MySQL digunakan perintah-perintah yang
dikelompokkan ke dalam beberapa
kategori yaitu:
a) Data Definition Language (DDL).
b) Data Manipulation Language (DML).
c) Data Query Language (DQL).
d) Data Control Language (DCL).
Data Definition Language (DDL)
 Merupakan sekumpulan perintah SQL
yang digunakan untuk memanajemen
struktur logikal, dan definisi metadata dari
objek-objek database.
 Objek-objek yang dimanajemen meliputi
database, table, view, index, stored procedure,
function, trigger.
DDL – MANAJEMEN DATABASE
 Manajemen Database meliputi aktivitas
membuat database baru, dan menghapus
database yang telah dibuat.
 Secara ringkas terdapat 2 perintah SQL
yang umum digunakan untuk melakukan
aktivitas manajamen database yaitu
CREATE DATABASE, dan DROP
DATABASE.
DDL – MANAJEMEN DATABASE
 Perintah CREATE DATABASE digunakan
untuk membuat database baru.
 Sintak penulisan perintahnya adalah sbb:
CREATE DATABASE nama_database;
 Dimana parameter “nama_database”
merupakan nama database yang akan dibuat.
Sebagai contoh untuk membuat database
dengan nama “latihan” digunakan perintah
berikut:
CREATE DATABASE latihan;
DDL – MANAJEMEN DATABASE
 Untuk menampilkan informasi database-
database yang terdapat pada MySQL
digunakan perintah:
SHOW DATABASES;
 Untuk mengakses database tertentu yang
telah dibuat, digunakan perintah:
USE nama_database;
Dimana “nama_database” merupakan
nama dari database yang ingin diakses.
DDL – MANAJEMEN DATABASE
 Sebagai contoh untuk mengakses database
dengan nama “latihan”, maka perintah
yang digunakan adalah sbb:
USE latihan;
 Untuk menampilkan informasi nama
database yang sedang diakses, maka
digunakan perintah:
SELECT DATABASE();
DDL - MANAJEMEN DATABASE
 Untuk menghapus database tertentu
digunakan perintah SQL DROP
DATABASE.
 Sintak penulisan perintahnya adalah sbb:
DROP DATABASE nama_database;
 Dimana parameter “nama_database”
merupakan nama database yang akan
dihapus. Contoh untuk menghapus
database dengan nama “latihan”:
DROP DATABASE latihan;
DDL – MANAJEMEN TABEL
 Manajemen tabel meliputi aktivitas
membuat tabel, mengubah nama tabel,
mengubah nama field, atau tipe data dari
suatu field pada sebuah tabel, dan
menghapus tabel.
DDL – MANAJEMEN TABEL
 Perintah CREATE TABLE digunakan untuk
membuat tabel.
 Secara umum pembuatan tabel memerlukan
informasi meliputi nama dari tabel yang akan
dibuat, nama-nama dari field, dan definisi dari
masing-masing field seperti tipe data dan
batasannya.
 Sintak penulisan perintahnya adalah sbb:
CREATE TABLE nama_tabel
(nama_kolom tipe_data) type=jenis_tabel;
Storage Engines MySQL
 MySQL mendukung beragam jenis storage
engines untuk menangani jenis tabel yang
berbeda.
 Storage engines MySQL mendukung baik tabel
yang mampu menangani transaksi maupun yang
tidak mendukung transaksi.
 Transaksi merupakan sekumpulan instruksi
atau operasi yang dilakukan secara keseluruhan
atau tidak sama sekali.
 Perintah SHOW ENGINES digunakan untuk
mengetahui storage engine yang didukung oleh
server MySQL.
Storage Engines MySQL
 Adapun beberapa storage engines yang
didukung oleh MySQL adalah sebagai
berikut:
a. MyISAM
b. Memory
c. InnoDB
d. Archive
e. NDB
Storage Engines MySQL
 MyISAM merupakan jenis storage engine
yang digunakan secara default ketika
membuat tabel di MySQL. MyISAM tidak
mendukung fitur transaksi.
 InnoDB merupakan jenis storage engine
yang mendukung transaksi, dan
mendukung row-level locking, serta foreign
key untuk memelihara integritas data.
Storage Engines MySQL
 Untuk memperoleh detail informasi
tentang perbedaan dari masing-masing
storage engines dari MySQL, dapat diakses
di situs MySQL pada alamat berikut:
http://dev.mysql.com/doc/refman/5.1/en/st
orage-engines.html
Tipe Data MySQL
 MySQL mendukung 3 kategori tipe data
yaitu numerik, tanggal & waktu (date &
time), dan karakter (string).
Tipe Data Numerik di MySQL
 INT, integer yang berukuran normal dapat
bertanda (signed) atau tanpa tanda (unsigned).
Jika signed maka memiliki jangkauan -
2147483648 sampai dengan 2147483647,
sebaliknya unsigned maka memiliki jangkauan 0
sampai dengan 4294967295. Panjang
maksimum 11 digit.
 TINYINT, integer yang berukuran sangat
kecil dapat bertanda (signed) atau tanpa tanda
(unsigned). Jika signed maka memiliki jangkauan
-128 sampai dengan 127, sebaliknya unsigned
maka memiliki jangkauan 0 sampai dengan 255.
Panjang maksimum 4 digit.
Tipe Data Numerik di MySQL
 SMALLINT, integer yang berukuran kecil
dapat bertanda (signed) atau tanpa tanda
(unsigned). Jika signed maka memiliki jangkauan
-32768 sampai dengan 32767, sebaliknya
unsigned maka memiliki jangkauan 0 sampai
dengan 65535. Panjang maksimum 5 digit.
 MEDIUMINT, integer yang berukuran
menengah dapat bertanda (signed) atau tanpa
tanda (unsigned). Jika signed maka memiliki
jangkauan -8388608 sampai dengan 8388607,
sebaliknya unsigned maka memiliki jangkauan 0
sampai dengan 16777215. Panjang maksimum 9
digit.
Tipe Data Numerik di MySQL
 BIGINT, integer yang berukuran besar
dapat bertanda (signed) atau tanpa tanda
(unsigned). Jika signed maka memiliki
jangkauan -9223372036854775808 sampai
dengan 9223372036854775807, sebaliknya
unsigned maka memiliki jangkauan 0
sampai dengan 18446744073709551615.
Panjang maksimum 11 digit.
Tipe Data Numerik di MySQL
 FLOAT(M,D), bilangan floating-point dan
tidak dapat berupa unsigned. Dapat
ditentukan panjang (M), dan jumlah decimal
(D).
 DOUBLE(M,D), bilangan floating-point
dengan presisi ganda dan tidak dapat berupa
unsigned, Dapat ditentukan panjang (M), dan
jumlah decimal (D). REAL adalah sinonim
dari DOUBLE.
Tipe Data Numerik di MySQL
 DECIMAL(M,D), bilangan floating-point
yang unpacked (bilangan disimpan sebagai
string, menggunakan 1 karakter disetiap
digitnya) dan tidak dapat berupa unsigned.
Harus ditentukan panjang (M), dan jumlah
decimalnya (D). NUMERIC adalah sinonim
dari DECIMAL.
Tipe Data Date & Time di MySQL
 DATE, tanggal dengan format YYYY-MM-DD,
dengan jangkauan antara ‘1000-01-01’ sampai
dengan ‘9999-12-31’. Dimana Y adalah tahun
(Year), M adalah bulan (Month), dan D adalah
tanggal (Date).
 DATETIME, gabungan dari tanggal, dan
waktu dalam format YYYY-MM-DD HH:MM:SS,
dengan jangkauan nilai antara ‘1000-01-01
00:00:00’ sampai dengan ‘9999-12-31 23:59:59’.
 TIMESTAMP, sebuah timestamp dengan
jangkauan antara 1 Januari 1970 hingga suatu
waktu di tahun 2037.
Tipe Data Date & Time di MySQL
 TIME, menyimpan waktu dengan format
hh:mm:ss, dimana h adalah jam (hour), m
adalah menit (minute), s adalah detik (second).
 YEAR(M), tahun dalam angka dengan
format 2 atau 4 digit. Jika ditentukan YEAR(2)
maka tahun dapat berupa 1970-2069 (70-69).
Jika ditentukan YEAR(4) maka tahun dapat
berupa 1901-2155. Defaultnya adalah 4 digit.
M merupakan panjang digit.
Tipe Data String di MySQL
 CHAR(M), string dengan panjang tetap antara 1
sampai dengan 255. M menyatakan panjang
maksimum.
 VARCHAR(M), string dengan panjang bervariasi
antara 0 sampai dengan 65.535.
 BLOB atau TEXT, sebuah field dengan panjang
maksimum 65.535 karakter. Binary Large Object
(BLOB) digunakan untuk menyimpan data binary
yang besar seperi gambar, atau tipe file lainnya. TEXT
juga dapat menampung data dengan jumlah yang
besar. Perbedaannya terletak pada pengurutan dan
perbandingan data yang disimpan, dimana BLOB
bersifat case-sensitive, sebaliknya TEXT tidak. Panjang
dari BLOB atau TEXT tidak perlu dicantumkan.
Tipe Data String di MySQL
 TINYBLOB atau TINYTEXT, sebuah field
BLOB atau TEXT dengan panjang maksimum
255 karakter. Panjang dari TINYBLOB atau
TINYTEXT tidak perlu dicantumkan.
 MEDIUMBLOB atau MEDIUMTEXT,
sebuah field BLOB atau TEXT dengan panjang
maksimum 16.777.215 karakter. Panjang dari
MEDIUMBLOB atau MEDIUMTEXT tidak perlu
dicantumkan.
 LONGBLOB atau LONGTEXT, sebuah
field BLOB atau TEXT dengan panjang
maksimum 4.294.967.295 karakter. Panjang
dari LONGBLOB atau LONGTEXT tidak perlu
dicantumkan.
Tipe Data String di MySQL
 ENUM, sebuah enumerasi, yaitu objek string
dengan nilai yang dipilih hanya satu dari daftar
yang telah dispesifikasikan pada kolom ketika
pembuatan tabel. Maksimum memiliki 65.535
elemen/pilihan, dan penulisan dari masing-
masing elemen diapit menggunakan tanda petik.
Sebagai contoh jenis kelamin yang hanya terdiri
dari 2 pilihan yaitu ‘L’ untuk laki-laki dan ‘P’
untuk perempuan, dapat menggunakan tipe
data ini dengan penulisan sebagai berikut:
jenis_kelamin(‘L’,’P’)
DDL – MANAJEMEN TABEL
 Sebagai contoh akan dibuat sebuah tabel
dengan nama produk dengan ketentuan sbb:
Nama Tipe Data Panjang Keterangan
Field/Kolom

kode_produk char 5 Digunakan untuk


menyimpan data kode
produk

nama_produk varchar 100 Digunakan untuk


menyimpan data nama
produk

Field kode_produk dijadikan sebagai Primary Key.


DDL – MANAJEMEN TABEL
 Berikut adalah perintah untuk membuat
tabel dengan ketentuan tersebut:

CREATE TABLE produk (


kode_produk CHAR(5),
nama_produk VARCHAR(100),
PRIMARY KEY (kode_produk)
);
DDL – MANAJEMEN TABEL
 Perintah “SHOW TABLES;” digunakan
untuk menampilkan informasi tabel-tabel
yang telah terdapat pada suatu database.
 Perintah “DESCRIBE nama_tabel;”
digunakan untuk menampilkan informasi
tentang struktur tabel yang meliputi nama
field/kolom, tipe data, null, key, default, dan
extra.
DDL – MANAJEMEN TABEL
 Perintah RENAME TABLE digunakan
untuk mengubah nama tabel.
 Sintak penulisan perintahnya adalah sbb:
RENAME TABLE
nama_tabel_yang_akan_diubah TO
nama_tabel_baru;
 Sebagai contoh perintah untuk mengubah
nama tabel “produk” menjadi “barang”
adalah sbb:
RENAME TABLE produk TO barang;
DDL – MANAJEMEN TABEL
 Perintah ALTER TABLE digunakan untuk
mengubah nama field pada tabel tertentu.
 Sintak penulisan perintahnya adalah sbb:
ALTER TABLE nama_tabel CHANGE
nama_field_lama nama_field_baru
tipe_data batasan;
 Sebagai contoh perintah untuk mengubah
nama field “nama_produk” menjadi
“nama_barang” dengan tipe data
“varchar(75)” pada tabel “barang” adalah sbb:
ALTER TABLE barang CHANGE
nama_produk nama_barang varchar(75);
DDL – MANAJEMEN TABEL
 Perintah DROP TABLE digunakan untuk
menghapus tabel.
 Sintak penulisan perintahnya adalah sbb:
DROP TABLE nama_tabel;
 Sebagai contoh untuk menghapus tabel
dengan nama “barang” adalah sbb:
DROP TABLE barang;
PRAKTIKUM
DDL – MANAJEMEN
TABEL
Data Manipulation Language (DML)
 Merupakan sekumpulan perintah SQL
yang digunakan untuk memanajemen data
pada suatu tabel, meliputi proses
memasukkan, mengubah, dan menghapus
data.
 Perintah-perintah DML terdiri dari
perintah INSERT, UPDATE, dan
DELETE.
DML - INSERT
 Digunakan untuk memasukkan data ke
suatu tabel.
 Sintak penulisan perintah INSERT adalah
sebagai berikut:
INSERT INTO nama_tabel
[(nama_kolom1, nama_kolom2, …)]
VALUES
(nilai_kolom1, nilai_kolom2, …)
DML - INSERT
 Sebagai contoh untuk memasukkan data
ke tabel “barang” dengan nilai dari
kolom/field “kode_barang” adalah
“P0001” dan kolom “nama_barang”
adalah “Pepsodent”, adalah sbb:
INSERT INTO barang
(kode_barang, nama_barang)
VALUES
(‘P0001,’Pepsodent’);
DML - UPDATE
 Digunakan untuk mengubah data yang sudah
tersimpan pada suatu tabel di database.
 Perubahan nilai dapat dilakukan pada satu,
atau beberapa kolom/field dari satu,
beberapa, atau semua record pada suatu
tabel.
 Sintak penulisan perintah UPDATE adalah
sbb:
UPDATE nama_tabel
SET nama_kolom1=nilai1,
[nama_kolom2=kolom2 …]
WHERE
kondisi
DML - UPDATE
 Sebagai contoh untuk mengubah nilai dari
salah satu record pada tabel “barang”
yang memiliki “kode_barang” sama
dengan “P0001” dengan nilai pada kolom
“kode_barang” menjadi “P0002” dan
kolom “nama_barang” menjadi
“Lifebouy”, adalah sebagai berikut:
UPDATE barang SET
kode_barang=‘P0002’,
nama_barang=‘Lifebouy’ WHERE
kode_barang=‘P0001’;
DML - DELETE
 Digunakan untuk menghapus satu, beberapa,
atau semua record yang terdapat pada suatu
tabel.
 Sintak penulisan perintah DELETE untuk
menghapus seluruh record adalah sbb:
DELETE FROM nama_tabel
 Sintak penulisan perintah DELETE untuk
menghapus satu atau beberapa record
berdasarkan kriteria tertentu adalah sbb:
DELETE FROM nama_tabel
WHERE kondisi
Kondisi digunakan untuk membatasi record
mana yang akan dihapus.
DDL - DELETE
 Sebagai contoh untuk menghapus salah
satu record pada tabel “barang” yang
memiliki nilai “kode_barang“ sama
dengan “P0002”, adalah sbb:
DELETE FROM barang WHERE
kode_barang=‘P0002’;
 Klausa WHERE digunakan untuk
memfilter record yang akan dihapus.
Manajemen User MySQL
 Sintak perintah untuk membuat user baru
adalah sbb:
CREATE USER nama_pengguna
IDENTIFIED BY sandi_pengguna
 Format nama_pengguna adalah
‘nama_pengguna’@’hostname’.
 Contoh membuat user dengan nama “ali”
yang terkoneksi dari “localhost” dengan
sandi “123456”:
CREATE USER ‘ali’@’localhost’
IDENTIFIED BY 123456
Manajemen User MySQL
 Untuk mengijinkan pengguna tertentu
dapat mengakses Server MySQL dari host
manapun, digunakan wildcard ‘%’ yang
memiliki makna dari host manapun.
 Sebagai contoh membuat user dengan
nama ‘hasan’ yang dapat terkoneksi dari
manapun dengan sandi ‘bumigora’:
CREATE USER ‘hasan’@’%’
IDENTIFIED BY ‘bumigora’;
Mengubah Sandi User MySQL
Perintah yang digunakan untuk mengubah
sandi user adalah sbb:
USE mysql;

UPDATE user SET


password=PASSWORD(‘sandi_pengguna’)
WHERE user=‘nama_pengguna’ AND
host=‘nama_host’;

FLUSH PRIVILEGES;
Mengubah Sandi User MySQL
 Perintah FLUSH PRIVILEGES; digunakan
untuk membaca ulang privilege dari table
grant di database MySQL.
 Sebagai contoh untuk mengubah sandi dari
user ‘hasan’@’%’ dengan sandi “mataram”,
adalah sbb:
USE mysql;
UPDATE user SET
password=PASSWORD(‘mataram’)
WHERE user=‘hasan’ AND host=‘%’;
FLUSH PRIVILEGES;
Data Control Language (DCL)
 Merupakan sekumpulan perintah SQL
yang digunakan untuk mengatur ijin akses
(permission) pengguna terhadap objek-
objek database dan isinya, baik
memberikan maupun mencabut ijin akses.
 Inti dari DCL adalah terkait dengan
keamanan.
 Perintah-perintah DCL terdiri dari
perintah GRANT, dan REVOKE.
DCL - GRANT
 Perintah GRANT digunakan untuk
memberikan ijin akses (privileges) ke user
tertentu.
 Sintak penulisan perintahnya adalah
sebagai berikut:
GRANT privileges (daftar_kolom)
ON [jenis_objek] level_privilege
TO akun [IDENTIFIED BY
‘sandi_pengguna’];
DCL - GRANT
 Dimana privileges mengindikasikan ijin akses
yang diberikan ke akun, sebagai contoh privilege
CREATE untuk membuat database, dan tabel.
Anda dapat memberikan beberapa privilege
dalam satu eksekusi perintah, gunakan tanda
koma sebagai pemisah antar ijin akses.
daftar_kolom menspesifikasikan kolom-kolom
dimana ijin akses diterapkan. level_privilege
menspesifikasikan pada level mana ijin akses
diterapkan. akun menspesifikasikan akun yang
akan diberikan ijin aksesnya. password
menentukan sandi yang diberikan ke akun.
DCL - GRANT
 Apabila akun sudah ada, maka MySQL
akan mengubah ijin aksesnya (privileges).
Sebaliknya apabila tidak ada, maka
perintah GRANT akan membuatkan akun
baru dengan ijin akses tersebut.
DCL - GRANT
 Berikut daftar beberapa ijin akses
(privileges) yang dapat digunakan bersama
MySQL GRANT :
Privilege Deskripsi
ALL Memberikan semua ijin akses pada level privilege yang ditentukan.

SELECT Mengijinkan pengguna untuk menggunakn perintah SELECT

INSERT Mengijinkan pengguna untuk menggunakan perintah INSERT

UPDATE Mengijinkan pengguna untuk menggunakan perintah UPDATE

DELETE Mengijinkan pengguna untuk menggunakan perintah DELETE


DCL - GRANT
 Sintak perintah GRANT untuk
memberikan seluruh ijin akses pada
database tertentu kepada user adalah sbb:
GRANT ALL ON nama_database.*
TO ‘nama_pengguna’@’nama_host’
[IDENTIFIED BY ‘sandi_pengguna’];
DCL - GRANT
 Sebagai contoh untuk memberikan
seluruh ijin akses pada database “latihan”
ke pengguna dengan nama ‘ali’, adalah sbb:
GRANT ALL ON latihan.*
TO ‘ali’@’localhost’;
DCL - REVOKE
 Perintah REVOKE digunakan untuk
mencabut ijin akses (privilege) user
tertentu.
 Sintak penulisan perintahnya adalah sbb:
REVOKE jenis_privilege ON
level_privilege FROM nama_pengguna
DCL - REVOKE
 Dimana jenis_privilege menentukan jenis
hak akses yang akan dicabut (dapat lebih
dari satu, gunakan tanda koma sebagai
pemisah), dan level_privilege
menentukan pada level mana hak akses
yang akan dicabut, sedangkan
nama_pengguna merupakan nama user
yang akan dicabut hak aksesnya.
DCL - REVOKE
 Sebagai contoh untuk mencabut seluruh
ijin akses yang diberikan ke user
‘ali’@’localhost’ adalah sbb:

REVOKE ALL PRIVILEGES FROM


‘ali’@’localhost’;
MANAJEMEN USER
 Perintah DROP USER digunakan untuk
menghapus user di MySQL.
 Sintak penulisan perintahnya adalah sbb:
DROP USER nama_pengguna;
 Sebagai contoh untuk menghapus user
‘ali’, adalah sbb:
DROP USER ‘ali’@’localhost’;
Backup Database MySQL
 MySQL menyediakan tool yang sangat
berguna untuk melakukan backup atau
dump database MySQL secara lokal pada
server dengan sangat cepat, yaitu
mysqldump.
 File hasil backup akan disimpan pada file
system di server, dan didalamnya memuat
sekumpulan perintah SQL yang digunakan
untuk membuat & memasukkan data ke
dalam tabel-tabel.
Backup Database MySQL
 mysqldump dapat digunakan untuk
membackup suatu database tertentu, dan
menyimpan hasilnya pada sebuah file.
 Sintak penulisan perintahnya adalah sbb:
mysqldump -u [nama_pengguna]
-p[sandi_pengguna] [nama_database] >
[namafile_backup.sql]
Backup Database MySQL
 Dimana –u [nama_pengguna] adalah nama
login pengguna yang digunakan untuk
mengakses server MySQL,
-p[sandi_pengguna] adalah sandi dari
pengguna yang digunakan login,
[nama_database] adalah nama dari
database yang akan dibackup, dan
[namafile_backup.sql] adalah nama file
yang digunakan untuk menyimpan hasil
proses backup database, serta tanda
redirection > menyatakan output ke file.
Backup Database MySQL
 Sebagai contoh untuk melakukan backup
database dengan nama “training, dan
menyimpan hasil backupnya dengan nama
“db_training.sql”, adalah sbb:

mysqldump -u root –p training >


db_training.sql
Backup Hanya Struktur dari Database
MySQL
 mysqldump dapat digunakan untuk membackup
hanya struktur dari database tanpa disertai
dengan datanya, dan menyimpan hasilnya pada
sebuah file.
 Sintak penulisan perintahnya adalah sbb:
mysqldump -u [nama_pengguna]
-p[sandi_pengguna] –d [nama_database]
> [namafile_backup.sql]
 Dimana parameter -d digunakan untuk
menentukan hanya struktur dari database yang
akan dibackup tanpa disertai dengan datanya.
Backup Hanya Struktur dari
Database MySQL
 Sebagai contoh untuk melakukan backup
hanya struktur dari database dengan nama
“training” tanpa disertai dengan datanya, dan
menyimpan hasil backupnya dengan nama
“struktur_training.sql”, adalah sbb:

mysqldump -u root –p -d training >


struktur_training.sql
Backup Hanya Data dari Database
MySQL
 mysqldump dapat digunakan untuk membackup
hanya data dari database tanpa disertai dengan
struktur databasenya, dan menyimpan hasilnya
pada sebuah file.
 Sintak penulisan perintahnya adalah sbb:
mysqldump -u [nama_pengguna]
-p[sandi_pengguna] –t [nama_database] >
[namafile_backup.sql]
 Dimana parameter -t digunakan untuk
menentukan hanya data dari database yang akan
dibackup.
Backup Hanya Data dari Database
MySQL
 Sebagai contoh untuk melakukan backup
hanya data dari database dengan nama
“training” tanpa disertai dengan struktur
databasenya, dan menyimpan hasil backupnya
dengan nama “data_training.sql”, adalah sbb:
mysqldump -u root –p –t training >
data_training.sql
Backup Beberapa Database MySQL
 mysqldump dapat digunakan untuk
membackup beberapa database sekaligus, dan
menyimpan hasilnya pada sebuah file.
 Sintak penulisan perintahnya adalah sbb:
mysqldump -u [nama_pengguna]
-p[sandi_pengguna] -B [database1,
database2,…] > [namafile_backup.sql]
 Dimana parameter -B digunakan untuk
menentukan beberapa nama database yang
akan dibackup.
Backup Beberapa Database MySQL
 Sebagai contoh untuk melakukan backup
database dengan nama “training” dan
“akademik”, serta menyimpan hasil
backupnya dengan nama
“db_training_akademik.sql”, adalah sbb:
mysqldump -u root –p –B
training,akademik >
db_training_akademik.sql
Backup Seluruh Database MySQL
 mysqldump dapat digunakan untuk
membackup seluruh database, dan
menyimpan hasilnya pada sebuah file.
 Sintak penulisan perintahnya adalah sbb:
mysqldump -u [nama_pengguna]
-p[sandi_pengguna] -A >
[namafile_backup.sql]
 Dimana parameter -A digunakan untuk
menentukan seluruh database akan dibackup.
Backup Seluruh Database MySQL
 Sebagai contoh untuk melakukan backup
seluruh database di server MySQL dan
menyimpan hasil backupnya dengan nama
“seluruh_database.sql”, adalah sbb:
mysqldump -u root -p
-A > seluruh_database.sql
Restore Database MySQL
 Untuk melakukan restore database MySQL
dari file backup (*.sql) yang telah dibuat
menggunakan mysqldump, digunakan
perintah berikut:
mysql –u [nama_pengguna]
-p[sandi_pengguna] [nama_database]
< [namafile_backup.sql]
 Dimana tanda redirection < menyatakan
input dari file.
PRAKTIKUM
BACKUP & RESTORE
DATABASE
MENGGUNAKAN
PHPMYADMIN
Materi pembelajaran ini disadur,
diterjemahkan, dan dirangkum dari
beberapa sumber referensi
berikut:
 MySQL Tutorial,
http://www.mysqltutorial.org
 Learning MySQL,
http://www.tutorialspoint.com
ADA PERTANYAAN?

Apabila rekan-rekan menghadapi kendala


ketika mempelajari materi-materi pada
modul ini, jangan segan untuk
mengirimkannya melalui email ke alamat
berikut:
[email protected]
TERIMAKASIH

Anda mungkin juga menyukai