Anda di halaman 1dari 17

LisensiPocketBook

PocketBookinidapatandadistribusikanulang,dicopy,dandicetakuntukpembelajaran.

SebelummemulaitutorialMySQL,andaterlebihdahuluinstallMySQLdiLubuntu.Kaliinisaya menggunakanLAMP.LAMPadalahkependekandariLinux,Apache,MySQL,danPhp.Di dalamLAMPsudahterdapatsoftwarelengkapuntukpemrograman. Apachedigunakan sebagaiwebserver.MySQLadalahsebagaiDBMSdanPhpadalahbahasapemrograman yangdigunakanuntukmembuataplikasiberbasisweb.UntukmemudahkaninstallLAMPsaya menggunakanTasksel.Taskseladalahsebuahpaketsoftwareyangcukuplengkap.Dengan TaskselandadapatmelakukaninstalasisoftwaredenganmudahsepertiLAMP,MailServer, DNSServer,dsb.LangsungsajasayaberikantutorialinstallLAMPdenganTasksel. Bukaterminaldanketikkan sudoaptgetinstalltasksel

UntukmenjalankanTaskselketikkan sudotasksel

Setelahituandaakandibawakemenusepertiberikut

PilihLAMPServer,dengancaramenekantombolspasiuntukmemilihsoftwareyangakan diinstalldilanjutkandenganmenekantombolTabuntukmemilihok. Bisajugadengancaramengetikkanperintahberikutini sudotaskselinstalllampserver Kemudiantungguprosesnyasampaiselesai

KalausudahmasukkanpasswordMySQL

MasukkanpasswordMySQLsekalilagi

Tunggukembaliprosesinstallsampaiselesai.

Prosesinstallselesai.

UntukmasukkedalamMySQL,bukaterminaldanmasukkanperintah mysqlurootp

LangkahpertamaadalahmembuatdatabasediMySQL.Padacontohkaliini,membuat databasedengannamauniversitas. CREATE DATABASE universitas;

Untukmelihatdatabaseyangsudahpernahdibuatketikkan SHOW DATABASES;

Langkahselanjutnyasetelahmembuatdatabaseadalahmembuattable.Sebelummembuat tableandaharusmasukkedalamdatabasedulu.Kalaudiibaratkandatabaseadalahsebuah rumahmakauntukmasukkedalamrumahtersebutmembutuhkankunci.Nahuntukmasuk kedalamdatabasemenggunakanperintah USE universitas;

Padacontohinisayamembuattabledengannama mahasiswa.DenganField nim,nama,alamat,jurusan.Nimsayabuatmenjadiprimarykey.PrimaryKeydigunakan agartidakadadatadengannimsamayangdisimpan,artinyanimtersebutbersifat unique/hanyaadasatu. CREATE TABLE mahasiswa ( nim int(10) primary key, nama varchar(25) not null, alamat varchar(35) not null, jurusan varchar(20) not null );

Untukmelihatstrukturtablegunakanperintah atau DESC mahasiswa; DESCRIBE mahasiswa;

Untukmengubahstrukturtabledapatmenggunakanperintah ALTERTABLE,sepertiberikut MenambahField ALTER TABLE namaTable ADD namaField; MenambahkanPrimaryKey ALTER TABLE namaTable ADD PRIMARY KEY namaField; MerubahField ALTER TABLE namaTable CHANGE namaField_yangDiubah namaField_baru; MenghapusField ALTER TABLE namaTable DROP namaField; Mengubahnamatable ALTER TABLE namaTable RENAME TO namaTabel_baru;

Setelahmembuattable,langkahselanjutnyaadalahmengisikandata/recordkedalamfield fieldyangtelahdibuattadi.Untukinsertrecordkedalamfieldgunakanperintah INSERT INTO mahasiswa (nim,nama,alamat,jurusan) VALUES (121210,'Resa','Yogya','TI'), (121211,'Ayu','Jakarta','SI') ;

untukmelihatrecordketikkanperintah SELECT * FROM mahasiswa;

Jikainginmelakukanupdatedata/record.Menggunakanperintah UPDATE.Contohnyapada fieldjurusandenganrecordTIakansayarubahmenjadiSI. UPDATE mahasiswa SET jurusan='SI' WHERE nim=121210;

Sekarangjurusantelahbergantimenjadi SI

Untukmenghapusrecorddapatmenggunakanperintah DELETE. Contohnyasayaakanmenghapusrecordfieldnimdengandata121210. DELETE FROM mahasiswa WHERE nim=121210;

Datadengannim121210berhasildihapus.

SelaindenganmenggunakanquerySELECT*FROMnamaTabel.Andajugadapat menampilkandatasesuaikebutuhandenganmenggunakankondisi. MenampilkanSeluruhdata/record SELECT * FROM mahasiswa;

Menampilkandatanimdannamadarijurusan SELECT nim,nama FROM mahasiswa WHERE jurusan='TI';

Menampilkandatanamadarinim SELECT nama FROM mahasiswa WHERE NIM=121211;

Padatutorialselanjutnyasayabahasrelasitabeldidatabase.Ada6jenisrelasitabeldi MySQL. 1) InnerJoin 2) CrossJoin 3) StraightJoin 4) RightJoin 5) LeftJoin 6) NaturalJoin Padacontohrelasiinisayamembuat2tabel.Tabelpertamaadalah dosendantabelkedua adalahmatkul.Disinisayaakanmenampilkankodedosensesuaidengannamamatakuliah dosentersebut.Caramembuattabelsedahsayajelaskancaranyadiatas.Setelahmembuat tabel,isidengandatasepertidibawahinisebagaicontoh.

Tabeldosen

Tabelmatkul

1.INNERJOIN a.INNERJOINON RelasiINNERJOINONadalahuntukmenampilkandata/recorddariduatabelyang berelasi. SELECT * FROM dosen INNER JOIN matkul ON dosen.kd_dosen = matkul.kd_dosen;

b.INNERJOINUSING BerbedadenganrelasiINNERJOINON.RelasiINNERJOINUSINGmenampilkandata yangsalingberelasitetapihanyamenampilkansatufieldsajayangdigunakansebagai penghubung. SELECT * FROM dosen INNER JOIN matkul USING (kd_dosen);

2.CROSSJOIN BerikutiniadalahcontohrelasitabeldenganmenggunakanCROSSJOIN SELECT matkul.kd_matkul,matkul.nama_matkul,matkul.sks,dosen.nama,dosen.email FROM dosen CROSS JOIN matkul ON dosen.kd_dosen = matkul.kd_dosen;

3.STRAIGHTJOIN BerikutiniadalahcontohrelasitabeldenganmenggunakanSTRAIGHTJOIN SELECT kd_matkul,nama_matkul,sks,nama,email FROM dosen STRAIGHT JOIN matkul;

JadiSTRAIGHTJOINdanCROSSJOINhampirsama.

4. RIGHTJOIN UntukmembuatrelasitabelRIGHTJOINdanLEFTJOIN,kitarubahdulustuktur datanyadanrecordnyamenjadisepertiini

Padatabelmatkulterdapatkodedosenyangsamayaitu11,biasanyadalambeberapamata kuliahterdapatdosenyangsamamengajarmatakuliahtersebut.BerikutiniqueryRIGHT JOINuntukmelihatrelasikeduatabel. SELECT matkul.kd_matkul,matkul.nama_matkul,matkul.sks,matkul.jurusan,dosen.nama,dosen.email FROM dosen RIGHT JOIN matkul ON dosen.kd_dosen = matkul.kd_dosen ORDER BY dosen.email;

DaridatayangditampilkandapatdilihatbahwaRIGHTJOINmenampilkanrecordpadatabel sebelahkanan. 5.LEFTJOIN SelainRIGHTJOINkitajugadapatmenggunakanLEFTJOINuntukmenampilkan record.BerikutinicontohjikamenggunakanqueryLEFTJOIN. SELECT matkul.kd_matkul,matkul.nama_matkul,matkul.sks,matkul.jurusan,dosen.nama,dosen.email FROM dosen LEFT JOIN matkul ON dosen.kd_dosen = matkul.kd_dosen ORDER BY dosen.email;

DaridatayangditampilkandapatdilihatbahwaLEFTJOINmenampilkanrecordpadatabel sebelahkiri.TerdapatrecorddengannilaiNULL,karenatidakadapasangantidakada pasangandaritabeldosendengantabelmatkul.Karenatidakadapasanganmakaakandiisi denganNULL.PenjelasannyaadalahdosendengannamaCandraadadidalamdatadosen tetapidiatidakmengajarkuliahdisemestertersebut. 6.NATURALJOIN Jikaandainginmerelasikantabeldenganmudahdancepat,andadapatmenggunakan NATURALJOIN.NATURALJOINakanmerelasikantabeltersebutsecaraotomatis.Berikutini queryNATURALJOIN SELECT matkul.kd_matkul,matkul.nama_matkul,matkul.sks,matkul.jurusan,dosen.nama,dosen.email FROM dosen NATURAL JOIN matkul;

Untukberjagajagaterhadapkerusakandatabaseatauhilangnyadatabase,maka langkahyangpalingpentingadalahbackupdatabasedenganmenggunakan mysqldump.Berikutinisayaakanberikancontohdumpdatabasedenganmysql.

mysqldump -u root -p universitas > /home/resa/universitas.sql =usernamemysql =passwordmysql =namadatabase =lokasipenyimpananfilehasilbackupmysql =namafilesqlnya

Penjelasan: u p universitas >/home/resa/ universitas.sql

Lokasifilesqldidirectory/home/resa

Jikainginmembackupnyasekaligusdicompressdenganzip.Makaperintahnya

mysqldump -u root -p universitas | gzip > /home/resa/universitas.sql.gz Penjelasan: u p universitas |gzip>/home/resa/ universitas.sql.gz

=usernamemysql =passwordmysql =namadatabase =jeniskompresidanlokasipenyimpanan =namafilekompresi

Lokasifilesqlyangtelahdikompresdidirectory /home/resa

Untukmencobarestoredatabase,drop/hapusdatabaseyangpernahdibuat.Menghapus databasedenganperintah DROP DATABASE universitas;

Kalausudahberhasildihapus,sekarangwaktunyauntukmerestoredatabase.Pertamabuat duludatabasediMySQL.Contohnyadatabaseuniversitas.Untukmerestoreketikkanperintah

mysql -u root -p universitas < /home/resa/universitas.sql Penjelasan: u p universitas </home/resa/ universitas.sql

=usernamemysql =passwordmysql =namadatabase =lokasifilerestoresqlnya =namafilesqlnya

Databaseyangberhasildirestore

Selamatmencobadansemogabermanfaat:)

Author : Resa C.R Founder and Chiefwww.marisharingilmu.wordpress.com

Anda mungkin juga menyukai