Teori & Instalasi

Site: Elearning Muhidin Saimin
Course: Web Development
Book: Teori & Instalasi
Printed by: Guest user
Date: Thursday, 21 November 2024, 8:00 PM

1. Pengertian & Kelebihan

Tutorial Belajar MySQL Part 1: Pengertian MySQL dan Kelebihan MySQL

Tutorial MySQL kali ini kita akan membahas tentang pengertian MySQL dan kelebihan MySQL jika dibandingkan dengan aplikasi database lainnya. Kepopuleran MySQL tidak hanya karena gratis, tetapi juga merupakan sebuah aplikasi database yang dapat disandingkan dengan aplikasi database berbayar lain, seperti Oracle dan Microsoft SQL Server.

Kepopuleran MySQL juga disebabkan karena MySQL merupakan salah satu aplikasi standar dalam pengembangan web, bersama dengan Web Server Apache, dan bahasa pemrograman PHP.

Pengertian MySQL sebagai RDBMS

Bagi mahasiswa maupun web developer, kalau bicara database, kemungkinan besar akan membicarakan MySQL. Tapi, kenapa harus MySQL? Bagaimana dengan Oracle? Jawaban singkat, padat dan tepat adalah: gratis dan user friendly.

MySQL adalah salah satu aplikasi RDBMS (Relational Database Management System). Pengertian sederhana RDBMS adalah: aplikasi database yang menggunakan prinsip relasional. Apa itu prinsip relasional? Kita akan membicarakannya dalam tutorial berikutnya.

MySQL juga bukan satu-satunya RDBMS, list lengkapnya ada di wikipedia. Diantaranya yang banyak dikenal adalah: Oracle, Sybase, Microsoft Access, Microsoft SQL Server, dan PostgreSQL.

MySQL bersifat gratis dan open source. Artinya setiap orang boleh menggunakan dan mengembangkan aplikasi ini. Namun walaupun gratis, MySQL di support oleh ribuan programmer dari seluruh dunia, dan merupakan sebuah aplikasi RDBMS yang lengkap, cepat, dan reliabel.

Situs Resmi MySQL

Berikut beberapa keunggulan MySQL dibandingkan dengan RDBMS lainnya:

Speed

Sebuah studi dari eWeek di February 2002 yang membandingkan performa kecepatan MySQL dengan RDBMS lainnya, seperti Microsoft SQL Server 2000, IBM DB2, Oracle 9i dan Sybase :

MySQL has the best overall performance and that MySQL scalability matches Oracle … MySQL had the highest throughput, even exceeding the numbers generated by Oracle.”

Yang terjemahan bebasnya, MySQL memiliki kecepatan yang lebih dibandingkan pesaing yang berbayar. Bagi anda ingin membaca paper tersebut, tersedia di situs MySQL

Reliability

Biasanya sesuatu yang gratis susah diandalkan, bahkan banyak bug dan sering hang. Tidak demikian dengan MySQL, karena sifatnya yang open source, setiap orang dapat berkontribusi memeriksa bug dan melakukan test case untuk berbagai skenario yang memerlukan sistem 24 jam online, multi-user dan data ratusan GB. Hasilnya, MySQL merupakan RDBMS yang reliabel namun memiliki performa diatas rata-rata.

Skalability

MySQL dapat memproses data yang sangat besar dan kompleks, tanpa ada penurunan performa yang berarti, juga mendukung sistem multi-prosesor. MySQL juga dipakai oleh perusahaan-perusahaan besar di dunia, seperti Epson, New York Times, Wikipedia, Google, Facebook, bahkan NASA.

User Friendly

Instalasi dan mempelajari MySQL cukup mudah dan tidak dipusingkan dengan banyak settingan. Cukup download aplikasi MySQL dan install, kita dapat menggunakan MySQL dalam waktu kurang dari 5 menit (dengan asumsi tidak mati lampu).

Portability and Standard Compliance

Database MySQL dapat dengan mudah berpindah dari satu sistem ke sistem lainnya. Misalkan dari sistem Windows ke Linux. Aplikasi MySQL juga dapat berjalan di sistem Linux (RedHat, SuSE, Mandrake, Debian), Embedded Linux (MontaVista, LynuxWorks BlueCat),Unix (Solaris, HP-UX, AIX), BSD (Mac OS X, FreeBSD), Windows (Windows 2000, Windows NT) dan RTOS (QNX).

Multiuser Support

Dengan menerapkan arsitektur client-server. Ribuan pengguna dapat mengakses database MySQL dalam waktu yang bersamaan.

Internationalization

Atau dalam bahasa sederhananya, mendukung beragam bahasa. Dengan dukungan penuh terhadap unicode, maka aksara non-latin seperti jepang, cina, dan korea bisa digunakan di dalam MySQL.

Wide Application Support

Biasanya database RDBMS tidak digunakan sendirian, namun ditemani dengan aplikasi atau bahasa pemrograman lainnya untuk menyediakan interface, seperti C, C++, C#, Java, Delphi, Visual Basic,  Perl Python dan PHP. Ke semua itu di dukung oleh API (Application Programming Interface) oleh MySQL.

Open Source Code

Kita pun bisa (jika mampu dan mengerti), mengembangkan MySQL dengan mempelajari kode programnya. MySQL di kembangkan dengan bahasa C and C++. Bahkan sudah terdapat berbagai variasi rasa RDBMS baru yang dikembangkan dari code MySQL, diantaranya: Drizzle, MariaDB, Percona Server dan OurDelta.


Bagaimana dengan MariaDB?

Pada tahun 2010, MySQL dibeli oleh perusahaan Oracle. Hal ini membuat khawatir banyak kalangan. Karena sebagaimana yang kita tau, Oracle merupakan perusahaan database terbesar di dunia, yang salah satu saingannya adalah MySQL.

Banyak yang khawatir bahwa suatu saat pengembangan MySQL akan dihentikan oleh Oracle. Untuk mengantisipasi hal ini, dikembangkanlah MariaDB sebagai pengganti MySQL. MariaDB dibuat oleh tim yang dulunya juga membuat MySQL.

Pada dasarnya, MariaDB adalah cloningan MySQL. Boleh dibilang bahwa MariaDB berisi MySQL yang diberi “merk” MariaDB serta penambahan fitur dan perbaikan performa. Seluruh materi yang dibahas dalam tutorial MySQL di duniailkom ini bisa berjalan baik di MariaDB maupun MySQL.

Faktanya, jika kita mendownload aplikasi XAMPP, sekarang sudah di bundle dengan database MariaDB, bukan lagi MySQL. Anda mungkin tidak sadar akan hal ini, karena di sisi programming (misalnya menggunakan PHP) dan query yang dipakai, tidak ada perbedaan antara MySQL dengan MariaDB.

Situs Resmi MariaDB


Sekian tentang pengertian dan kelebihan MySQL, serta alasan kenapa MySQL lebih banyak digunakan dan populer di kalangan web programmer. Namun jika kita bertanya kepada pegawai IT perusahaan enterprise besar, mereka mungkin akan menyebutkan Oracle atau Microsoft SQL Server sebagai RDBMS favorit.

Untuk tutorial selanjutnya, kita akan membahas tentang sejarah dan masa depan MySQL, apakah pembelian MySQL oleh Oracle membuat MySQL tidak lagi gratis dan bebas digunakan? selanjutnya pada Tutorial Belajar MySQL: Sejarah dan Masa Depan MySQL.

Sumber :

  1. Wikipedia – MySQL
  2. MySQL.com
  3. Vikram Vaswani : MySQL Database Usage & Administration, McGraw-Hill 2010

2. Sejarah & Masa Depan

Tutorial Belajar MySQL Part 2: Sejarah MySQL dan Masa Depan MySQL

Kisah tentang UNIREG dan Tcx

Cerita tentang MySQL bermula pada tahun 1979, ketika Michael Widenius (a.k.a. Monty), seorang programmer asal Swedia, mengembangkan sebuah sistem database sederhana yang dinamakan UNIREG. UNIREG ini menggunakan koneksi low-level ISAM database engine dengan indexing (baca : sistem database sederhana yang mendukung index).

Monty bekerja pada perusahaan bernama TcX di Swedia. TcX pada tahun 1994 mulai mengembangkan aplikasi berbasis web, dan berencana menggunakan UNIREG sebagai sistem databasenya. Namun malang bagi Monty, UNIREG dianggap tidak cocok untuk database yang dinamis seperti web.

TcX mencoba mencari alternatif sistem database lainnya, salah satunya adalah mSQL (miniSQL), sebuah RDBMS yang tidak terlalu mahal dan hampir open source, maksudnya jika anda membeli aplikasi ini, anda juga akan mendapatkan source code nya juga. Namun mSQL versi 1 ini juga memiliki kekurangan, yaitu tidak mendukung indexing, sehingga performanya tidak terlalu bagus.

Dengan hasutan petinggi-petinggi TcX, Monty mencoba menghubungi David Hughes (programmer yang mengembangkan mSQL) untuk menanyakan apakah ia tertarik mengembangkan sebuah konektor di mSQL yang dapat dihubungkan dengan UNIREG ISAM sehingga mendukung indexing. Pada saat itu Hughes menolak, dengan alasan sedang mengembangkan teknologi indexing yang independen untuk mSQL versi 2.

Michael "Monty" Widenius

Dikarenakan penolakan David HughesTcX (dan juga Monty) akhirnya memutuskan untuk merancang dan mengembangkan sendiri konsep sistem database baru. Sistem ini merupakan gabungan dari UNIREG dan mSQL (yang source codenya dapat bebas digunakan). Sehingga pada May 1995, sebuah RDBMS baru, yang dinamakan MySQL dirilis.

David Axmark dari Detron HB, rekanan TcX mengusulkan agar MySQL di ‘jual’ dengan model bisnis baru. Ia mengusulkan agar MySQL dikembangkan dan dirilis dengan gratis. Pendapatan perusahaan selanjutnya di dapat dari menjual jasa “support” untuk perusahaan yang ingin mengimplementasikan MySQL. Konsep bisnis yang juga diterapkan perusahaan-perusahaan Open Source lainnya.


Asal Nama MySQL

Asal penamaan MySQL sendiri agak unik. Monty berkata :

“It is not perfectly clear where the name MySQL derives from. TcX’s base directory and a large amount of their libraries and tools have had the prefix ‘My’ for well over ten years. However, my daughter (some years younger) is also named My. So which of the two gave its name to MySQL is still a mystery.”

Berbagai sumber menyatakan, bahkan juga di situs MySQL sendiri bahwa “My” dari MySQL berasal dari nama anak perempuan Monty. Namun seperti kutipan diatas, Monty pun mengakui bahwa selama ia di TcX, library dan aplikasi yang dikembangkan perusahaan itu juga banyak dimulai dengan awalan “My”.

Logo lumba-lumba dalam lambang MySQL di namai Sakila, yang berasal dari sebuah kontest “Name the Doplhin” yang diadakan MySQL AB. Nama Sakila ini diajukan oleh  Ambrose Twebaze, seorang programmer open source dari Swaziland, Afrika. ‘Sakila‘ memiliki akar dari bahasa Siswati, bahasa yang digunakan di Swaziland.

MySQL 'Sakila' Logo


MySQL dan MySQL AB

Kembali ke kisah MySQL, Pada tahun 1995 itu juga, TcX berubah nama menjadi MySQL AB, dengan Michael Widenius, David Axmark dan Allan Larsson sebagai pendirinya. Titel “AB” dibelakang MySQL, adalah singkatan dari “Aktiebolag”, istilah PT (Perseroan Terbatas) bagi perusahaan Swedia.

MySQL AB menjadi perusahaan di belakang MySQL, menyediakan jasa dan bertanggung jawab dalam mengembangkan, memasarkan, dan menyediakan dukungan untuk MySQL. MySQL sendiri dirilis dengan “dual licensing“, atau dua lisensi yakni versi gratis dan versi berbayar.

Lisensi pertama di rilis dibawah GNU GPL (General Public License – atau dikenal juga dengan Gak Pakai Lisensi). Lisensi GPL ini membebaskan anda menggunakan MySQL tanpa membayar royalti kepada MySQL AB, dengan beberapa syarat tertentu. Misalnya, jika anda menggunakan MySQL dalam aplikasi yang anda buat, aplikasi tersebut juga harus bersifat gratis dan berada di bawah lisensi GPL.

Lisensi kedua di peruntukkan bagi perusahaan-perusahaan komersil, maupun pengembang software yang berniat menjual aplikasinya, dan menggunakan MySQL sebagai databasenya. Untuk keperluan ini, anda diharuskan membeli lisensi komersial dari MySQL AB. Lebih lanjut tentang permasalahan seputar lisensi MySQL, dapat mengunjungi situs MySQL.

MySQL AB juga memegang hak copyright dari source code MySQL dan pemilik hak merk dagang “MySQL”. Dengan kata lain, walaupun kita memiliki source code MySQL, namun sistem database maupun aplikasi yang kita buat tidak boleh menggunakan merk “MySQL” tanpa membayar royalti kepada pihak MySQL AB. Hal ini pula yang menjelaskan mengapa salah satu aplikasi administrasi MySQL berbasis web PhpMyAdmin, tidak menggunakan kata “MySQL” pada nama programnya.


Sang Penguasa pasar database mulai mendekat: Oracle dan Sun Microsystem

Pada tahun-tahun berikutnya, MySQL AB semakin berkembang. Di tahun 2002, MySQL AB telah memiliki  kantor pusat baru di Cupertino, California, Amerika Serikat, selain di negara asalnya, Swedia. Perkiraan pengguna aktif setidaknya sudah mencapai 3 juta pengguna.

Tahun 2005 MySQL AB merilis MySQL 5. MySQL versi 5 ini menargetkan pengguna-pengguna perusahaan, dengan menyediakan fasilitas-fasilitas tambahan baru, seperti stored procedures, triggers, views, cursors, distributed transactions, dan federated storage engines. Dengan model bisnis dan aplikasi yang sudah lengkap, MySQL mulai menjadi ancaman bagi raksasa industri database lainnya, terutama Microsoft SQL Server dan Oracle.

Mårten Mickos, CEO MySQL, mengkonfirmasi bahwa di tahun 2006, Oracle pernah berniat membeli MySQL, namun Larry Ellison, CEO Oracle saat itu, berkomentar :

“We’ve spoken to them, in fact we’ve spoken to almost everyone. Are we interested? It’s a tiny company. I think the revenues from MySQL are between $30 million and $40 million. Oracle’s revenue next year is $15 billion.”

Sebuah pernyataan yang ditutup-tutupi, karena pada tahun itu juga Oracle telah membeli Sleepycat, sebuah perusahaan yang mengembangkan Berkeley DB transactional storage engine bagi MySQL, bahkan sebelumnya Oracle juga telah membeli Innobase, perusahaan di balik InnoDB storage engine MySQL.


Akuisisi MySQL AB oleh Sun Microsystem

Tahun 2008 merupakan akhir bagi MySQL AB sebagai perusahaan yang berdiri sendiri, ketika Sun Microsystems membeli MySQL AB seharga US $1 Milliar. Selayaknya proses akuisisi, seluruh manajemen MySQL AB, menjadi bagian dari ribuan karyawan SUN lainnya, termasuk Michael Widenius (Monty) dan David Axmark (2 orang pendiri MySQL AB). Akan tetapi tak berapa lama kemudian, keduanya mulai merasa tidak nyaman dan sering mengkritisi kebijakan SUN, sehingga mereka memutuskan keluar dari perusahaan itu.

Mårten Mickos, CEO MySQL AB yang selama ini memimpin MySQL juga meninggalkan SUN tahun 2009. Sehingga MySQL praktis telah kehilangan pemimpin bisnis dan pendiri yang telah membuat MySQL sesukses sekarang. Dan akhirnya April 2009, raksasa di industri database: Oracle, mulai mendekati Sun Microsystems untuk mengakuisisinya.


Gerakan “Save MySQL

Kabar akuisisi ini seolah-olah menjadi kiamat untuk MySQL. Sebuah gerakan “Save MySQL” didirikan untuk menolak akuisisi ini. Gerakan ini di prakarsai oleh Monty Widenius sendiri (pendiri MySQL), dan didukung oleh sekitar 50.000 lebih pengembang serta programmer dari seluruh dunia. Gerakan ini mendesak Komisi Ekonomi Eropa untuk menolak proses akuisisi SUN Microsystem oleh Oracle. Berbagai pemimpin organisasi Free Software juga ikut dalam gerakan ini.

Akuisisi Sun Microsystem (dan juga MySQL) oleh Oracle Corporation

Gerakan ini setidaknya berhasil membujuk komisi anti monopoli eropa, untuk menyetujui proses akuisisi dengan syarat Oracle meneruskan proyek MySQL setidaknya sampai 2015. Namun banyak pengamat mengatakan bahwa berbagai tekanan juga di lakukan oleh pihak Oracle agar akuisisi ini berlangsung mulus, sehingga Oracle Corporation secara resmi mengakuisisi Sun Microsystem (dan juga MySQL !) seharga US $ 7,4 Milyar pada 27 Januari 2010.

Oracle MySQL Logo


Masa Depan MySQL

Akhir kisah sesuai dengan janji Oracle, hingga saat ini (Desember 2017) MySQL tetap bisa digunakan dengan gratis. Tetapi, apakah kedepannya MySQL tetap seperti ini? atau dijadikan salah satu produk berbayar oleh Oracle? kita hanya bisa berharap.

Di lain pihak , Monty Widenius, diam-diam telah memulai sebuah proyek baru, MariaDB, yang memiliki kode dasar yang sama dengan MySQL 5.1. Apakah MariaDB merupakan “the next generation” dari RDBMS gratis penerus MySQL? atau MariaDB nantinya akan tenggelam diantara RDBMS lainnya yang juga banyak bermunculan? mari ikuti terus perkembangannya.

Kisah ini setidaknya juga menjadi gambaran, bagaimana perusahaan raksasa, seperti Oracle, menggunakan kekuatan kapitalisnya untuk “mencaplok” saingan-saingan untuk tumbuh lebih besar lagi. MySQL sekarang secara resmi menggunakan logo oracle dalam produk-produknya.


Update (Desember 2017): MariaDB, the next MySQL

Perkembangan MariaDB saat ini semakin kuat. Berbagai aplikasi (terutama yang berbasis open source) sudah mulai beralih dari MySQL ke MariaDB, termasuk aplikasi web programming seperti XAMPP. Jika anda menggunakan XAMPP, yang terinstall adalah MariaDB, bukan lagi MySQL. Wikipedia juga menyatakan akan beralih dari MySQL ke MariaDB. Secara perlahan aplikasi lain akan menyusul.

Menurut saya, kedepannya MariaDB akan makin banyak dipakai. Terlebih lagi, tim yang dulunya mengembangkan MySQL (termasuk pendiri MySQL), ada dibalik MariaDB. Berdasarkan klaim dari Monty, MariaDB merupakan versi MySQL yang lebih cepat, lebih efisien, dan memiliki berbagai fitur tambahan yang tidak ada di MySQL.

Untungnya, dalam penggunaan sehari-hari MySQL dan MariaDB ini tidak banyak berbeda. Seluruh materi yang akan anda pelajari dalam tutorial ini bisa diterapkan ke MySQL maupun MariaDB.

Untuk web programming seperti PHP, seluruh fungsi MySQL yang ada juga sudah otomatis didukung di dalam MariaDB. Fungsi seperti mysqli_connect() bisa langsung terhubung ke MySQL maupun MariaDB, tanpa perubahan code apapun. Selain itu, hampir seluruh fitur yang ada di MySQL, juga tersedia di MariaDB.

Situs Resmi MariaDB


Untuk tutorial MySQL selanjutnya kita akan membahas sedikit teori tentang database, sehingga dapat menjadi dasar bagi kita sebelum menginstall aplikasi MySQL.


3. Database Model dan RDBMS

Tutorial Belajar MySQL Part 3: Pengertian Database, Database Model dan RDBMS

Pengertian Database

Banyak pendapat jika menyangkut tentang pengertian database, berbagai textbook dan pendapat para expert di dunia database. Namun agar tidak terlalu pusing, marilah kita ambil saja pendapat Wikipedia: “A database is an organized collection of data”. Dengan terjemahan bebasnya, Database adalah kumpulan data yang terorganisir.

Tidak peduli apakah data ini tersimpan dalam bentuk kertas atau file komputer, selama data ini tersusun dalam aturan dan untuk keperluan tertentu, dapat disebut sebagai database. Namun biasanya jika kita menyebut database, hal ini merujuk kepada kumpulan data yang disimpan secara elektronik dalam komputer.


Pengertian Database Model

Sekali lagi, mari kita kutip  Wikipedia : A database model is the theoretical foundation of a database and fundamentally determines in which manner data can be stored, organized, and manipulated in a database system. Artian bebasnya, database model adalah teori seputar bagaimana data itu akan disimpan, disusun, dan dimanipulasi dalam sebuah sistem database.

Dari awal konsep database mulai banyak digunakan (sekitar tahun 1960an – di amerika sana), berbagai teori dikemukakan tentang bagaimana cara menyajikan data agar mudah digunakan. Mudah digunakan disini mencakup: membuat, membaca, memperbaharui, dan menghapus data, atau istilah kerennya : CRUD (Create, Read, Update and Delete).

Mulailah berkembang berbagai database model, dari Flat model, Hierarchical model, Network model, hingga Relational model. Flat model adalah istilah lain dari tabel sederhana seperti di microsoft excel, tanpa aturan dan cara penulisan tertentu. Dalam Hierarchical model, data disusun seperti pohon terbalik, sehingga data terorganisasi dari atas ke bawah. Model database ini digunakan pada sistem database awal, seperti Information Management System (IMS) oleh IBM (1966). Network database model merupakan pengembangan dari Hierarchical model. Pembahasan lebih lanjut tentang Database Model, dapat dibaca di wikipedia-database model.

5 Tipe Database Model | wikipedia.org


Database Model : Relation

Konsep Relational Database Model diajukan pertama kali oleh peneliti IBM, Dr. Edgar F. Codd pada tahun 1969, dan merupakan database model yang paling banyak digunakan saat ini.

Dr. Codd pada awalnya mencari cara baru untuk menangani data dalam jumlah besar. Namun karena keterbatasan pada Hierarchical dan Network model yang umum digunakan saat itu, ia menerapkan prinsip matematis dalam menyusun data-data tersebut. Dan karena memang memiliki keahlian di bidang matematika, Dr.Codd berusaha mencari cara untuk menyelesaikan permasalahan yang sering timbul dalam database model saat itu, seperti redundansi data, hubungan antar data, dan ketergantungan kepada urutan di media penyimpanan.

Dr.Codd mengajukan ide tentang relational model ini dalam sebuah paper berjudul “A Relational Model of Data for Large Shared Databanks” pada Juni 1970. Relational Database model berasal dari 2 cabang ilmu matematika : set theory dan first-order predicate logic.

Edgar Frank "Ted" Codd (August 23, 1923 – April 18, 2003) | wikipedia

Sebuah relational database menyimpan data dalam ‘relasi’, atau yang disebut juga tabel. Setiap tabel terdiri dari tuple atau record dan atribut atau field. Urutan penyusunan dalam media penyimpanan fisik tidak berpengaruh dalam model ini, dan setiap record di dalam tabel diidentifikasi dengan sebuah field unik.

Relational Database Model inilah yang paling populer dan banyak diimplementasi dalam berbagai aplikasi database saat ini, termasuk Oracle dan MySQL. Aplikasi database untuk relational model, dikenal juga dengan Relational Database Management Systems (RDBMS).


RDBMS : Relational Database Management Systems

Relational Database Management Systems (RDBMS) adalah software/aplikasi yang menggunakan relational database model sebagai dasarnya. Sejak 1970an, RDBMS sudah banyak digunakan oleh berbagai vendor, dan dalam berbagai sistem hardware. Dua RDBMS pertama adalah System R, yang dikembangkan oleh IBM, dan INGRES (Interactive Graphics Retrieval System) yang dikembangkan oleh University of California di Berkeley. Keduanya pada awal 1970an.

Setelah keunggulan Relational Database banyak dikenal, berbagai perusahaan mulai berlalih dari hierarchical dan network database model ke relational database model. Pada tahun 1980an, Oracle RDBMS lahir, dan diikuti oleh pesaingnya saat itu, IBM DB2 RDBMS.

Jika pada tahun 1980an RDBMS hanya dapat digunakan dalam sistem mainframe perusahaan besar, namun saat ini dengan semakin majunya perkembangan teknologi di sisi hardware, PC-based RDBMS sudah banyak tersedia. MySQL RDBMS dapat diinstall di komputer/laptop biasa.


Client-Server RDBMS Arsitektur

Kebutuhan akan database yang dapat diakses bersama-sama oleh banyak pengguna mulai muncul di sekitar awal 1990an. Sebuah database terpusat, namun dapat diakses dari tiap komputer yang berjauhan, membuat banyak RDBMS dikembangkan dengan arsitektur Client-Server.

Dalam arsitektur Client-Server, sebuah komputer bertindak sebagai Database Server pusat. Server inilah yang akan melayani segala permintaan dari komputer (Client) yang membutuhkan akses ke database. Namun fisik database itu sendiri juga tidak harus di dalam Server, bisa saja berada di tempat lain, namun terhubung ke Database Server untuk memprosesnya.

MySQL juga menggunakan arsitektur Client-Server. Namun nantinya dalam tutorial ini, kita akan menjalankan aplikasi server dan client di komputer yang sama. Namun pada dasarnya, jika kita menjalankan MySQL Server di komputer, setiap komputer yang terhubung kedalam jaringan dapat mengaksesnya dengan menggunakan MySQL Client. Lebih lanjut tentang hal ini akan kita pelajari dalam tutorial selanjutnya.


Setelah Relational Database Model : Object-Oriented Database Model

Walaupun RDBMS sudah populer, dan digunakan pada hampir semua keperluan seperti bisnis, inventory, bank, dll, namun untuk kasus-kasus tertentu, Relational Database Model dianggap masih kurang mendukung, khususnya untuk aplikasi baru seperti sistem informasi geografis, dan multimedia. Sehingga mulailah dikembangkan berbagai model database lainnya, seperti Object-Oriented Database dan Object-Relational Database.

Konsep Database Objek Model ini berasal dari dunia programming: OOP (Object Oriented Programming), dimana setiap data dikaitkan dengan objek dari data tersebut. ODBMS (Object Database Management System) juga sudah banyak beredar, seperti Versant ODBMS oleh Versant Corporation, UniData dari IBM, dan VelocityDB.

Namun konsep Object Oriented Database ini belum terlalu populer digunakan, dan mungkin saja nantinya hanya sebagai pelengkap dari relational database, yang untuk kasus per kasus memerlukan sistem database khusus.


Demikian pembahasan singkat kita tentang pengertian database, database model dan perkembangan RDBMS. Dalam tutorial selanjutnya, kita akan bahas lebih mendalam konsep Teori Relational Database, sebelum mempraktekkannya dengan MySQL.

Sumber :

  1. http://en.wikipedia.org/wiki/Database
  2. http://en.wikipedia.org/wiki/Database_model
  3. Michael J. Hernandez : Database Design for Mere Mortals, Addison Wesley, 2003

4. Relational Database

Tutorial Belajar MySQL Part 4: Pengertian Relational Database

Pengertian Database dalam Relational Database

Dalam relational database model, sebuah database adalah kumpulan relasi yang saling terhubung satu sama lainnya. Relasi adalah istilah dalam relational database, tapi kita lebih familiar jika menyebutnya sebagai tabel. Selayaknya tabel yang memiliki kolom dan baris, dalam relational database, kolom (column) disebut attribute, sedangkan baris (row) disebut tuple. Hal ini hanya sekedar penamaan, dan agar lebih gampang, kita hanya akan menggunakan istilah tabel, kolom dan baris dalam tutorial ini, namun jika anda menemui istilah relation, attribut dan tuple, itu hanya penamaan lain dari tabel, kolom, dan baris.

ReRelasi (tabel), Tuple (baris) dan Attribute (kolom) | wikipedia


Candidate Key (Kunci Kandidat)

Database dalam relational database dapat di sederhanakan sebagai sekumpulan tabel yang saling terhubung. Setiap baris dari dalam tabel setidaknya harus memiliki sebuah kolom yang unik. Unik disini maksudnya tidak boleh sama. Contohnya, dalam tabel 4.1 : tabel data_mahasiswa, kolom NIM (Nomor Induk Mahasiswa) akan menjadi kandidat yang bagus, karena tidak mungkin ada 2 mahasiswa yang memiliki NIM yang sama. NIM disini disebut juga dengan Candidate Key (Kunci Kandidat)Candidate Key adalah satu atau beberapa kolom dalam tabel yang bisa mengidentifikasi tiap baris dari tabel tersebut.

NIMNamaTanggal LahirNo KTPTempat LahirKode Jurusan
101401030Alex Ferdinand29 Juni 19921373022906870002PadangIlmu Komputer
120502045Joko Suprianto4 Maret 19943173020403940004JakartaManajemen
110901033Susi Sulastri17 September 19931273024709930001MedanKedokteran
100301021Suparman23 Februari 19923173022302920006JakartaTeknik Elektro
121401074Tania Mutia5 Oktober 19931373024510930006PadangIlmu Komputer
110501023Aprilia Susanti7 Oktober 19931693024710930002PekanbaruManajemen

Tabel 4.1 : Tabel data_mahasiswa

Nomor KTP juga merupakan candidate key yang bagus, setidaknya setiap orang akan memiliki Nomor KTP yang berbeda-beda. Namun dalam beberapa kasus, nomor KTP tidak selalu ada, karena bisa saja seseorang belum memiliki KTP karena sesuatu dan lain hal. Beberapa karakteristik Candidate key : unik (tidak boleh berulang), tidak boleh memiliki nilai null (kosong), nilai dari candidate key akan sangat jarang berubah.


Primary Key (Kunci Utama)

Dalam sebuah tabel, akan terdapat beberapa candidate key, namun hanya ada 1 Primary key (kunci utama)Primary key adalah salah satu candidate key yang kita nobatkan sebagai kolom unik untuk identifikasi baris dalam tabel. Kolom ini tidak boleh berulang, dan tidak boleh kosong (null). Dari tabel data_mahasiswa, NIM dapat kita tetapkan sebagai primary key.


Foreign Key (Kunci Tamu)

Dalam sebuah database, biasanya akan terdapat beberapa tabel. Tabel-tabel ini dapat dihubungkan satu dengan yang lainnya dengan kolom yang merupakan bagian dari tabel lain. Foreign Key (Kunci Tamu) adalah Primary key dari tabel lainnya yang terdapat di tabel saat ini. Di dalam contoh tabel 4.2 : Tabel data_mahasiswa dapat terlihat bahwa NIM adalah primary key dari tabel data_mahasiswa, dan kode_jurusan adalah primary key pada tabel_jurusan. Kedua tabel tersebut dihubungkan oleh kolom kode jurusan.

NIMNamaTanggal LahirNo KTPTempat LahirKode Jurusan
101401030Alex Ferdinand29 Juni 19921373022906870002Padang14
120502045Joko Suprianto4 Maret 19943173020403940004Jakarta05
110901033Susi Sulastri17 September 19931273024709930001Medan09
100301021Suparman23 Februari 19923173022302920006Jakarta03
121401074Tania Mutia5 Oktober 19931373024510930006Padang14
110501023Aprilia Susanti7 Oktober 19931693024710930002Pekanbaru05

Tabel 4.2 : Tabel data_mahasiswa

Kode JurusanJurusanAlamat
01Teknik MesinJl. Teknik No.01
02Teknik ArsitekturJl. Teknik No.02
03Teknik ElektroJl. Teknik No.03
04AkuntansiJl. Ekonomi No. 01
05ManajemenJl. Ekonomi No. 02
06Ekonomi PembangunanJl. Ekonomi No. 03
07Kesehatan MasyarakatJl. Kesehatan No.01
08PsikologiJl. Kesehatan No.02
09KedokteranJl. Kesehatan No.03
10MatematikaJl. MIPA No. 01
11KimiaJl. MIPA No. 02
12FisikaJl. MIPA No. 03
13FarmasiJl. MIPA No. 04
14Ilmu KomputerJl. MIPA No. 05

Tabel 4.3 : Tabel kode_jurusan

Dalam tabel_mahasiswa, kolom NIM adalah primary key, dan kolom kode jurusan adalah foreign key. Kenapa tabel tersebut harus dipisah? Jawabannya adalah agar tidak ada data yang redundan (ganda). Redundansi data adalah salah satu kelemahan dari desain database yang kita buat. Seandainya dari contoh tabel, nama Jurusan Ilmu Komputer berubah menjadi Teknik Informatika, kita hanya tinggal merubah tabel_jurusan.


Referential Integrity

Referential Integrity berkaitan erat dengan foreign key. Pada dasarnya Referential Integrity adalah penerapan aturan bahwa untuk setiap foreign key yang terdapat pada suatu tabel, harus ada nilainya di tabel asal kolom tersebut. Dalam contoh kita, pada tabel 4.2 dan 4.3 setiap kode_jurusan dalam tabel data_mahasiswa harus ada nilainya dalam tabel kode_jurusan. Di dalam tabel data_mahasiswa kita tidak bisa memasukkan nilai 20, karena di tabel kode_jurusan, kode jurusan 20 belum diinput. Dan jika kita ingin menghapus suatu jurusan dari tabel_jurusan, semua mahasiswa harus terlebih dahulu sudah tidak ada yang memiliki kode jurusan tersebut.


Index

Index dalam database adalah sebuah struktur data yang diimplementasikan oleh RDBMS untuk mempercepat proses pembacaan data. Index lebih kepada penerapan algoritma dari masing-masing aplikasi database, dan diterapkan ke dalam kolom dari tabel yang kita inginkan. Mirip Index yang ada di belakang buku, index seolah-olah daftar cepat untuk mencari sesuatu oleh RDBMS. Kita dapat mendeklarasikan kolom mana saja yang akan di index.

Untuk MySQL, kolom yang ditetapkan sebagai primary key akan otomatis di-index. Tetapi dalam satu tabel, bisa saja terdapat beberapa kolom yang di index. Pertanyaannya, jika index digunakan untuk mempercepat proses pembacaan, kenapa tidak semua kolom saja kita index? Jawabannya, karena index sendiri juga memiliki kelemahan.

Ketika data baru ditambahkan atau terdapat data yang akan dirubah, index yang tersimpan untuk tabel tersebut harus dibuat ulang, sehingga memperlama proses penambahan data. Namun untuk tabel yang jarang bertambah, index menawarkan perfoma yang cepat untuk pembacaan data.


Normalisasi Database

Normalisasi database (Database normalization) adalah proses penyusunan kolom dan tabel untuk meminimalkan redundansi data (data yang berulang). Normalisasi biasanya akan membagi tabel besar menjadi beberapa tabel kecil yang saling terhubung. Hal ini dilakukan agar mudah dalam mengatur, dan mengorganisasi data yang ada.

Contohnya, untuk tabel data_mahasiswa, jika terjadi perubahan nama jurusan, misalnya dari Ilmu Komputer menjadi Teknik Informatika, maka kita harus merubah satu-satu  tiap mahasiswa. Namun jika di bagi menjadi 2 tabel, kita hanya tinggal merubah baris no urut 14 dari tabel  kode_jurusan menjadi Teknik Informatika. Dan otomatis setiap mahasiswa yang memiliki kode_jurusan 14, adalah mahasiswa Teknik Informatika.

Normalisasi database memiliki beberapa tahapan. Dari wikipedia, normalisasi database setidaknya memiliki 9 tahapan. Pada setiap tahapan, ada syarat yang harus dipenuhi, sampai sebuah tabel tidak lagi memiliki kolom yang redundant. Kita tidak harus mengikuti semua tahap, biasanya hanya dibutuhkan 3 tahapan normalisasi untuk membuat sebuah desain database sederhana. Proses normalisasi database tidak akan kita bahas disini, namun setidaknya kita mengetahui bahwa normalisasi database adalah proses untuk mendesain database agar terorganisir.


Entity Relationship Diagram (ERD)

Entity Relationship Diagram adalah diagram untuk menggambarkan desain database yang akan dibuat. Di dalam ERD akan terlihat semua tabel yang akan dirancang, primary key masing-masing tabel, serta foreign key, dan kolom-kolom apa saja yang nantinya tersedia. ERD memiliki berbagai versi, baik yang berbentuk balon, maupun tabel. ERD inilah sebagai blueprint dari database yang akan dirancang.


Itulah beberapa istilah yang sering di temui untuk pembahasan mengenai relational database, yang dapat digunakan sebagai dasar untuk mempelajari MySQL dan memaksimalkan penggunaannya. Selanjutnya kita akan membahas tentang SQL (Structured Query Language), bahasa wajib yang diketahui untuk mempelajari MySQL.

Sumber:

  1. http://en.wikipedia.org/wiki/Relational_database
  2. http://en.wikipedia.org/wiki/Database_normalization
  3. Michael J. Hernandez : Database Design for Mere Mortals, Addison Wesley, 2003
  4. Clare Churcher: Beginning Database Design From Novice to Professional, Apress,  2007

5. Pengertian SQL

Tutorial Belajar MySQL Part 5: Pengertian SQL (Structured Query Language)

Pengertian Structured Query Language (SQL)

SQL (Structured Query Language) adalah bahasa pemrograman khusus yang digunakan untuk memanajemen data dalam RDBMS. SQL biasanya berupa perintah sederhana yang berisi instruksi-instruksi untuk manipulasi data. Perintah SQL ini sering juga disingkat dengan sebutan ‘query‘.

Sejarah SQL

Bersamaan dengan paper Dr. Edgar F. Codd pada tahun 1969 tentang Teori Database Relational, ia pun mengajukan sebuah bahasa yang disebut DSL/Alpha untuk memanajemen data dalam relational database. Berdasarkan ide Dr.Codd ini, beberapa saat setelah itu IBM mencoba merancang bahasa prototipe sederhana DSL/Alpha yang disebut SQUARE.

Pada tahun 1970, team yang beranggotakan peneliti IBM Donald D. Chamberlin dan Raymond F. Boyce, mengembangkan SQUARE lebih lanjut menjadi SEQUEL (Structured English Query Language)SEQUEL digunakan untuk mengoperasikan prototipe RDBMS pertama IBM, System R. Di kemudian hari, SEQUEL berubah nama menjadi SQL karena permasalahan merk dagang (trademark) dengan sebuah perusahaan pesawat di inggris yang terlebih dahulu telah memakai nama SEQUEL.

Pada akhir 1970an, perusahaan Relational Software, Inc. (sekarang Oracle Corporation) melihat potensi bahasa SQL dan mengembangkan sendiri versi SQL untuk RDBMS mereka. Oracle V2 (versi 2) yang dirilis Juni 1979 adalah RDBMS komersial pertama yang mengimplementasikan SQL.

Dengan kemudahan yang ditawarkan, SQL mulai diimplementasikan oleh berbagai RDBMS dengan versi SQL mereka masing-masing. Namun hal ini  menimbulkan permasalahan karena perbedaan penerapan SQL dari satu aplikasi dengan aplikasi database lainnya yang tidak seragam.Sehingga  pada tahun 1986, badan standar amerika, ANSI (American National Standards Institute) merancang sebuah standar untuk SQL. Satu tahun setelahnya, ISO (International Organization for Standardization) juga mengeluarkan standar untuk SQL. Versi terakhir standar SQL dirilis pada 2011, yang dinamakan SQL 2011. Dengan standar ini diharapkan ada keseragaman SQL antar aplikasi RDBMS.

Akan tetapi walaupun sudah ada standar tentang SQL, banyak perusahaan RDBMS yang menambahkan ‘fitur’ SQL selain standar yang ada. MySQL juga memiliki SQL yang tidak standar, yang tidak ada pada Oracle, begitu juga sebaliknya. Namun setidaknya bahasa SQL hampir sama untuk perintah-perintah dasar antar RDBMS. Perintah SQL untuk membuat tabel misalnya, dapat digunakan baik di Oracle maupun MySQL.


Jenis-jenis perintah SQL

Perintah atau instruksi SQL dapat dikelompokkan berdasarkan jenis dan fungsinya. Terdapat 3 jenis perintah dasar SQL : Data Definition Language, Data Manipulation Language dan Data Control Language.

  • Data Definition Language (DDL) adalah jenis instruksi SQL yang berkaitan dengan pembuatan struktur tabel maupun database. Termasuk diantaranya : CREATE, DROP, ALTER, dan RENAME.
  • Data Manipulation Language (DML) adalah jenis instruksi SQL yang berkaitan dengan data yang ada dalam tabel, tentang bagaiman menginput, menghapus, memperbaharui serta membaca data yang tersimpan di dalam database. Contoh perintah SQL untuk DML : SELECT, INSERT, DELETE, dan UPDATE.
  • Data Control Language (DCL) adalah jenis instruksi SQL yang berkaitan dengan manajemen hak akses dan pengguna (user) yang dapat mengakses database maupun tabel. Termasuk diantaranya : GRANT dan REVOKE.

Selain ketiga jenis perintah SQL, terdapat juga 2 jenis SQL tambahan : Transaction Control Language, dan Programmatic SQL.

  • Transaction Control Language (TCL) adalah perintah SQL untuk proses transaksi. Proses transaksi ini digunakan untuk perintah yang lebih dari 1, namun harus berjalan semua, atau tidak sama sekali. Misalnya untuk aplikasi critical seperti transfer uang dalam sistem database perbankan. Setidaknya akan ada 2 perintah, yaitu mengurangi uang nasabah A, dan menambah uang nasabah B. Namun jika terjadi kesalahan sistem, kedua transaksi ini harus dibatalkan. Tidak bisa hanya satu perintah saja. Termasuk ke dalam TCL adalah perintah : COMMIT, ROLLCABK, dan SET TRANSACTION.
  • Programmatic SQL berkaitan dengan sub program (stored procedure) maupun penjelasan mengenai struktur database. Contoh perintah seperti : DECLARE, EXPLAIN, PREPARE, dan DESCRIBE.

Setelah memahami sekilas tentang bahasa pemrograman database : SQL, dan teori-teori dasar database dari beberapa tutorial sebelumnya,  kita sudah siap untuk tutorial selanjutnya, download dan install aplikasi MySQL.

Sumber:

  1. http://en.wikipedia.org/wiki/Sql
  2. James R. Groff : SQL The Complete Reference, 3rd Edition,McGraw-Hill, 2010

6. Download, Install dan Setingan

Tutorial Belajar MySQL Part 6: Download, Install dan Setingan awal MySQL

Menginstall MySQL 8.0 Secara Stand Alone

Bagi anda yang sebelumnya pernah menggunakan MySQL, biasanya akan mendapati MySQL adalah bagian dari paket aplikasi AMP (Apache-MySQL-PHP). Aplikasi ini sering digunakan untuk mempelajari pemrograman web yang biasanya terdiri dari paket web server Apache, aplikasi database MySQL, dan bahasa pemrograman web  PHP . Aplikasi XAMPP  dan WampServer merupakan 2 diantara banyak aplikasi serupa yang sering digunakan di sistem operasi Windows.

Paket aplikasi bundle ini menawarkan kemudahan instalasi, karena kita tidak direpotkan dengan berbagai settingan agar ketiga aplikasi itu dapat berjalan. Jika pada komputer anda sudah terinstall aplikasi ini, silahkan dipakai, atau jika anda ingin menginstall MySQL menggunakan XAMPP, silahkan ikuti langkah-langkahnya pada tutorial cara menginstall XAMPP.

Pada tutorial MySQL kali ini saya akan memberikan langkah-langkah menginstall aplikasi MySQL secara sendiri (stand alone), langsung menggunakan file instalasi dari www.mysql.com. Dengan menginstall MySQL secara terpisah, kita dapat mempelajari secara lebih detail tentang settingan dan file-file aplikasi MySQL.

Jika dalam komputer anda sudah terinstall aplikasi MySQL lain (misalnya dari XAMPP) dan ingin untuk mengikuti proses instalasi dalam tutorial ini, maka wajib untuk mematikan service MySQL Server dari aplikasi tersebut.

Juga untuk kepentingan belajar, saya hanya memakai interface command prompt (DOS), dimana kita akan mengetik huruf per huruf  ketika mengoperasikan MySQL (bahasa query). GUI MySQL seperti PhpMyAdmin memang sangat praktis, namun kurang cocok untuk proses belajar database.


Download MySQL 8.0

MySQL yang akan kita gunakan adalah MySQL Community Server, yakni versi gratis dari MySQL. Versi lain, MySQL Enterprise Server adalah versi berbayar yang ditujukan untuk skala perusahaan dengan fitur database yang lebih advance.

Saat tutorial ini direvisi pada Desember 2018, versi stabil terakhir dari MySQL Community Server adalah versi 8.0.13. Aplikasi MySQL Community Server dapat di download di situs resmi MySQL:  http://dev.mysql.com/downloads/mysql/.

MySQL mendukung berbagai macam sistem operasi, namun karena sebagian besar kita menggunakan Windows, maka saya hanya menjelaskan tentang cara instalasi di Windows.

Setelah halaman resmi MySQL terbuka, silahkan scroll ke bawah. Pada tampilan bagian download MySQL, kita akan mendapati beberapa paket instalasi yang bisa dipilih.

Download MySQL 8.0

Pada menu Select Operating System, silahkan pilih sistem operasi yang diinginkan. Karena saya memakai Windows, pilihan Microsoft Windows sudah otomatis terpilih.

Installer MySQL terdiri dari 2 jenis, yakni file executable (exe) yang dinamakan Installer MSI, atau file ZIP. Agar lebih mudah, sebaiknya pilih file MSI karena file ini berisi versi MySQL yang dilengkapi wizard untuk memandu kita dalam proses instalasi dan pengaturan awal, sedangkan untuk versi ZIP merupakan aplikasi MySQL tanpa proses instalasi.

Setelah selesai, klik tombol: download untuk versi MSI.

Download MySQL 8.0 stand alone version

Berikutnya adalah halaman “Download MySQL Installer”. MySQL menyediakan 2 jenis file, yakni dengan ukuran kecil (sekitar 16 MB), atau yang berukuran besar (sekitar 313 MB). Versi ukuran kecil sebenarnya adalah versi online installer, yang akan mendownload seluruh file MySQL pada saat proses instalasi berlangsung dan kita harus online. Sedangkan yang berukuran besar adalah versi offline installer yang tidak perlu terkoneksi ke internet ketika proses instalasi.

Agar lebih mudah dan supaya kita bisa menyimpan file master MySQL, sebaiknya pilih yang ukuran besar (offline installer). Klik tombol Download untuk melanjutkan.

Pada halaman “Begin your download”, MySQL akan menampilkan form login atau membuat akun di mysql.com. Jika berminat, silahkan isi form registrasi, namun jika tidak, lanjutkan dengan klik link “» No thanks, just start my download!”.

Tutorial Install MySQL - Abaikan form pendaftaranProses download akan berlangsung beberapa saat. Tergantung kecepatan internet, proses ini mungkin bisa memakan waktu beberapa menit, mengingat ukuran file MySQL yang cukup besar.


Proses Instalasi MySQL

Setelah proses download file MySQL selesai, kita akan mendapati file instalasi MySQL berupa: mysql-installer-community-8.0.13.0.msi. Kemungkinan versi yang anda download akan berbeda karena MySQL terus mengeluarkan versi terbaru, namun langkah-langkah instalasinya kurang lebih tetap sama.

File instalasi MySQL 8.0

Lanjutkan dengan double klik file mysql-installer-community-8.0.13.0.msi. Jika anda menggunakan Windows 7, 8 atau Windows 10, akan muncul beberapa kali jendela konfirmasi hak akses administrator, silahkan klik Yes.

Tutorial Cara Menginstall MySQL 5.6 - Tampilan awal proses install MySQL

Jendela license agreement MySQL 8.0

Setelah proses persiapan install selesai, akan ada tampilan lisensi MySQL, sekilas anda akan melihat bahwa MySQL menggunakan lisensi GNU GENERAL PUBLIC LICENSE. Ceklist “I accept the terms in the License Agreement”, lalu klik tombol Next.

Pilih Custom pada saat instalasi MySQL 8.0

Pada jendela “Choosing a Setup Type”, terdapat beberapa pilihan tipe instalasi. Mulai dari untuk developer defaultserver onlyclient onlyfull hingga custom.

Karena kita akan menggunakan MySQL dalam tahap pengembangan program, mungkin pilihan “Developer Default” adalah yang paling pas. Namun opsi ini menginstall cukup banyak aplikasi, bisa sampai 10 komponen serta memakan ruang harddisk lebih dari 1GB. Yang kita perlukan saat ini hanyalah MySQL Server.

Akan tetapi, jika memilih Server Only kita tidak bisa mengubah folder instalasi MySQL. Oleh karena itu pilih Custom kemudian klik tombol Next.

Jendela pemilihan Product MySQL Server 8.0

Pada jendela “Select Products and Features” kita bisa memilih aplikasi dan fitur apa saja yang ingin diinstall. Dapat dilihat bahwa file instalasi MySQL membundel banyak komponen selain MySQL Server, seperti: Aplikasi admin untuk excel, visual studio, connector MySQL, dan juga file dokumentasi. Inilah yang membuat file installer MySQL begitu besar.

Silahkan klik tombol tanda tambah (+) paling atas (MySQL Server), sampai anda menemukan: MySQL Server 8.0.13 – X64. Pilih pilihan ini, lalu klik tombol panah hijau ditengah-tengah jendela untuk memindahkan dari jendela “Available Product” ke “Product/Features To Be Installed“.

Jika anda langsung klik tombol Next, maka program MySQL akan diinstall pada folder: C:\Program Files\MySQL\MySQL Server 8.0, dan folder data di C:\ProgramData\MySQL\MySQL Server 8.0. Meskipun ini tidak masalah, tapi saya ingin mengubahnya ke folder lain supaya mudah diakses.

Caranya, klik pilihan MySQL Server 8.0.13 – X64 pada jendela sebelah kanan, kemudian di pojok kanan bawah akan muncul pilihan “Advanced Option“. Klik pilihan ini, dan akan keluar jendela baru untuk mengubah lokasi instalasi MySQL.Pilih menu Advanced Options MySQL 8.0Tukar folder lokasi instalasi MySQL 8.0

Terdapat 2 isian: Install Directory yang akan menjadi folder tempat file program MySQL. Dan Data Directory dimana file data seperti database dan tabel berada. Saya akan mengubah Install Directory ke C:\MySQL 8.0 dan Data Directory ke C:\MySQL 8.0\Data. Kedua folder ini tidak harus ada terlebih dahulu karena MySQL akan membuatnya secara otomatis. Akhiri dengan men-klik tombol OK, kemudian klik Next.Mulai proses instalasi MySQL 8.0

Pada Jendela Installation ini, akan ditampilkan produk dan fitur apa saja yang ingin diinstal. Karena kita hanya memilih MySQL Server 8.0.13, maka hanya 1 produk ini yang akan diinstall. Silahkan klik tombol Execute untuk memulai Proses Instalasi MySQL Server.

Proses instalasi akan memakan waktu beberapa saat, dan ketika selesai, klik tombol Next beberapa kali hingga kita masuk ke bagian konfigurasi awal MySQL.


Konfigurasi Awal MySQL

Setelah proses instalasi, MySQL akan masuk ke menu konfigurasi, jendela pertama untuk proses konfigurasi ini adalah Group Replication.

Jendela pilihan Standalone MySQL Server 8.0

Pada jendela ini pilih “Standalone MySQL Server / Classic MySQL Replication” karena kita hanya akan menjalankan MySQL di satu komputer saja. Klik tombol Next.

Jendela license type and networking MySQL 8.0

Di jendela konfigurasi “Type and Networking” biarkan settingan default Development Computer dan port MySQL di 3306. Klik tombol Next.

Jendela Authentication Method MySQL 8.0

Pada jendela Authentication Method, biarkan pilihan default di “Use Strong Password Encryption for Authentication“, lalu klik tombol Next.

Jendela Account and Roles MySQL 8.0

Jendela berikutnya adalah Account and User Role. Pada bagian ini kita akan membuat password untuk user root dan jika diinginkan juga bisa membuat user lain.

Pada bagian atas, kita harus menginput password untuk user root. Root adalah user tertinggi di dalam MySQL, atau sering disebut juga dengan superuser. User root memiliki hak akses kepada semua tabel dan database, termasuk menghapus seluruh database yang ada. Karena kita menggunakan MySQL server ini di komputer sendiri dan hanya untuk proses belajar, silahkan input password yang mudah diingat, saya akan menggunakan password: “qwerty“.

Pada bagian bawah terdapat pilihan untuk menambah user lain selain root. Namun untuk saat ini kita tidak memerlukannya, dan kita akan mempelajari cara membuat user dari dalam MySQL nanti. Akhiri jendela ini dengan men-klik tombol Next.

Jendela Windows Service MySQL 8.0 (Matikan)

Jendela Windows Service MySQL 8.0 (Matikan) 2

Jendela berikutnya sangat penting, terutama jika anda berencana menginstall lebih dari 1 MySQL di dalam komputer (misalnya satu lagi dari XAMPP).

Jika checkbox “Configure MySQL Server as Windows Service” dipilih, MySQL akan diinstall sebagai “Windows Service”. Artinya, MySQL akan langsung aktif setiap Windows berjalan.

Ini bisa menjadi masalah jika anda ingin menjalankan MySQL dari sumber lain (seperti XAMPP). Karena MySQL tidak bisa berjalan bersamaan di satu komputer (jika menggunakan port yang sama). Oleh karena itu hapus pilihan “Configure MySQL Server as Windows Service”, lalu klik Next.

Jendela Apply Configuration Instalasi MySQL 8.0

Jendela terakhir adalah “Apply Configuration”. Disini seluruh setingan yang sudah kita pilih akan diterapkan. Klik tombol Execute.

Instalasi MySQL 8.0 Selesai

Setelah beberapa saat, seluruh konfigurasi sudah diterapkan. Klik tombol Finish.

Instalasi MySQL 8.0 Product Configuration

Di jendela Product Configuration tidak ada pengaturan yang harus kita pilih, langsung saja klik tombol Next.

Instalasi MySQL 8.0 Selesai

Proses instalasi MySQL Server sudah selesai.


Menguji Instalasi MySQL

Setelah menginstall MySQL di atas, MySQL Server 8.0 secara otomatis juga telah berjalan di latar belakang. Kita akan mencoba mengakses MySQL Server ini.

Untuk menguji apakah MySQL sudah terinstall dengan sempurna, kita akan coba mengakses MySQL Command Line Client dari menu Start –> MySQL –> MySQL 8.0 Command Line Client.

MySQL 8.0 Command Line

Pada jendela DOS yang terbuka, masukkan password untuk user root yang telah kita buat tadi, dalam tutorial ini saya memberikan password “qwerty”, lalu tekan Enter. Jika tampilan “Welcome to the MySQL monitor” sudah muncul, berarti instalasi MySQL kita berjalan dengan sukses. Untuk uji coba perintah MySQL, ketik perintah SHOW DATABASES; (akhiri dengan tanda titik koma) lalu tekan Enter:

Uji coba menjalankan MySQL 8.0

Siip, proses instalasi MySQL sudah selesai dan siap digunakan.


Setelah berhasil menginstall MySQL dan menjalankannya untuk pertama kali, kita sudah dapat langsung mencoba MySQL pada Tutorial Belajar MySQL : Dasar Penulisan Query MySQL .

Bagi yang ingin melihat file instalasi MySQL serta file konfigurasi MySQL my.ini, akan kita bahas pada tutorial selanjutnya,  Tutorial Belajar MySQL : Folder Instalasi MySQL dan File my.ini


7. Folder Instalasi

Tutorial Belajar MySQL Part 7: Folder Instalasi MySQL dan File my.ini

Folder Instalasi MySQL

Jika anda mengikuti instalasi MySQL sebelumnya: Tutorial MySQL: Download, Install dan Setingan awal MySQL, maka folder instalasi MySQL akan berada di “C:\MySQL 8.0\”. Namun jika anda menginstal MySQL tanpa merubah lokasi default, instalasi MySQL akan berada pada “C:\Program Files\MySQL\MySQL Server 8.0\”.

Dalam folder MySQL ini kita akan mendapati beberapa file dan folder:

Folder Instalasi MySQL 8.0


Folder bin

Folder bin adalah folder utama yang berisi semua aplikasi MySQL dalam bentuk .exe. Beberapa diantaranya:

  • mysqld: untuk menjalankan MySQL Server.
  • mysql: untuk menjalankan MySQL Client.
  • mysqldump: untuk export file database.
  • mysqladmin: untuk mengkonfigurasi MySQL.

Beberapa aplikasi dalam folder bin ini akan kita pelajari pada tutorial MySQL berikutnya. Salah satunya adalah mysqld yang digunakan untuk menjalankan Server MySQL secara manual.

Folder bin MySQL 8.0


Folder Data

Folder Data berisi seluruh file database dan tabel yang kita buat di dalam MySQL. Jika anda menggunakan setingan default, maka lokasinya akan berada di: C:\ProgramData\MySQL\MySQL Server 8.0\data.

Lokasi dan nama folder ini saya ubah secara manual pada saat proses instalasi MySQL (anda bisa baca kembali Tutorial Belajar MySQL: Download, Install dan Setingan awal MySQL). Folder ini berasal dari setingan bagian Data Directory pada saat instalasi MySQL.

Dalam folder ini terdapat folder lain bernama Data, file installer_config.xml dan file my.ini.

Folder data MySQL 8.0

Jika ada buka folder C:\MySQL 8.0\Data\Data (folder Data di dalam Data), disinilah seluruh file tabel dan database nantinya disimpan. Setiap database akan tampil sebagai sebuah folder. Sebagai contoh, jika saya membuat database belajar di dalam MySQL, maka akan muncul folder “belajar” dengan alamat di C:\MySQL 8.0\Data\Data\belajar.

Folder database belajar MySQL 8.0


Folder doc

Jika anda memilih menambahkan file dokumentasi MySQL pada saat instalasi, maka di dalam folder ini akan terdapat file manual MySQL. Namun jika anda mengikuti tutorial sebelumnya di duniailkom untuk menginstall MySQL, di dalam folder ini tidak akan ditemukan manual, dan hanya ada 2 file log. Apabila anda ingin melihat dan mempelajari file manual MySQL, bisa mengaksesnya di dev.mysql.com/doc/refman/8.0/en/


Folder include

Folder include berisi beberapa file library pendukung dan settingan fungsi untuk MySQL (manual MySQL menyebutnya sebagai header file). Kita dapat melihat-lihat isi dari file ini dengan aplikasi notepad, atau dengan Notepad++. Sebagian besar library MySQL dibuat dengan bahasa C dan C++.

Folder include MySQL 8.0


Folder lib

Folder lib juga berisi file-file library MySQL, serta terdapat folder plugin untuk menambahkan fungsi tambahan untuk MySQL.

Folder lib MySQL 8.0


Folder share

Dalam folder share ini terdapat berbagai folder dengan nama-nama negara. Folder ini berisi file-file untuk mengatur character set dan zona waktu terkait dengan perbedaan negara.

Folder share MySQL 8.0


File Setingan MySQL: my.ini

Dari semua file dalam folder C:\MySQL 8.0, terdapat 3 file yang akan sering kita akses:

  • file bin\mysqld.exe untuk menjalankan MySQL Server.
  • file bin\mysqld.exe untuk menjalankan MySQL Server.
  • file data\mysql.ini untuk pengaturan dan konfigurasi MySQL Server dan MySQL Client.

File my.ini berisi seluruh pengaturan untuk mengubah konfigurasi MySQL. File ini pada dasarnya berupa file teks biasa dan bisa dibuka menggunakan aplikasi teks editor seperti Notepad bawaan Windows atau Notepad++.

Berikut cuplikan tampilan dari file my.ini:

Tampilan file konfigurasi MySQL, my.ini

Baris yang diawali dengan tanda pagar ‘#’ adalah komentar atau penjelasan. Sedangkan baris yang tanpa awalan tanda pagar adalah konfigurasi MySQL. Di dalam file ini kita bisa mengubah banyak hal, seperti menukar nomor port, menaikkan jumlah memory yang boleh dipakai MySQL, dst.

Jika anda ingin mengedit file ini, sebaiknya copy terlebih dahulu (buat backup). Karena salah konfigurasi bisa berakibat MySQL tidak bisa berjalan.

Dengan mengetahui isi dari folder instalasi MySQL, saatnya kita mulai jalankan MySQL Server, dalam tutorial selanjutnya, Tutorial Belajar MySQL: Cara Menjalankan MySQL Server


8. Menjalankan MySQL Server

Tutorial Belajar MySQL Part 8: Cara Menjalankan MySQL Server (Windows Service)

Arsitektur Client-Server pada MySQL

Seperti yang pernah disinggung pada Tutorial Belajar MySQL: Pengertian Database, Database Model dan RDBMS, MySQL dalam operasionalnya menggunakan arsitektur client-server. Salah satu komputer bertindak sebagai Server (tempat seluruh database MySQL disimpan), dan komputer lainnya sebagai Client yang akan mengakses database dalam komputer server tersebut. Jumlah Client yang mengakses server bisa 1 komputer, 100, atau bahkan 1000 komputer pada saat bersamaan.

Dalam tutorial MySQL di duniailkom ini kita akan menjalankan kedua proses ini dalam satu komputer saja, sehingga di dalam komputer yang sama akan terdapat MySQL Server, sekaligus MySQL client.

MySQL Client-Server Arsitektur

Dalam Tutorial Belajar MySQL: Cara Menjalankan MySQL Server ini kita akan mempelajari cara menjalankan MySQL Server. Untuk menjalankan MySQL Client, akan kita pelajari di dalam tutorial berikutnya.


Memeriksa MySQL Server

Jika anda mengikuti tutorial menginstall MySQL di duniailkom tanpa shutdown komputer, maka MySQL Server masih berjalan.

Untuk mengetahui apakah MySQL Server telah berjalan atau tidak, kita bisa mencoba mengaksesnya menggunakan MySQL Command Line Client. Aplikasi ini dapat diakses dari menu Start –> MySQL –> MySQL 8.0 Command Line Client.

Akan tampil jendela cmd windows untuk meminta password root. Apabila setelah diinput jendela langsung tertutup, berarti MySQL Server belum berjalan.

Atau cara lain adalah dari Task Manager. Buka Task Manager dengan menekan kombinasi Alt + Crtl + Del, lalu pilih tab Details (untuk Windows 10). Dari daftar yang ada cari apakah mysqld.exe ada atau tidak. Jika ada, berarti MySQL Server sudah berjalan. Jika tidak, berarti MySQL Server belum berjalan.

Memeriksa MySQL Server dari Task Manager


Menjalankan MySQL Server Secara Manual (mysqld.exe)

Jika dari tampilan Task Manager tidak ditemukan mysqld.exe, artinya MySQL Server belum berjalan.

Untuk menjalankan MySQL Server secara manual, kita harus mengakses file mysqld.exe yang berada di dalam folder bin pada instalasi MySQL. Mysqld.exe akan diakses menggunakan aplikasi command prompt atau biasa disebut cmd Windows. Karena folder instalasi MySQL kita ubah menjadi C:\MySQL 8.0, maka lokasi mysqld.exe berada di di “C:\MySQL 8.0\bin\mysqld.exe”.

Buka CMD Windows dengan cara klik menu Start –> All programs –> Accessories –> Command Prompt . Atau dari Start –> run –> ketik “cmd”, lalu OK.

Tampilan Command prompt berupa layar hitam dan default path nya untuk Windows 10 adalah “C:\User\<nama user>”. Hal ini menandakan bahwa folder aktif sekarang berada di “C:\Users\<nama user>”. Kita harus mengubahnya ke “C:\MySQL 8.0\bin”. Caranya, ketik “cd C:\MySQL 8.0\bin” pada command prompt lalu tekan Enter.

Pindah ke folder MySQL 8.0 dengan cmd Windows

Dengan folder aktif DOS sekarang pada C:\MySQL 8.0\bin, ketikkan:

1
mysqld --defaults-file="C:\MySQL 8.0\Data\my.ini"

Perintah diatas akan menjalankan mysqld dengan tambahan baris perintah –defaults-file=”C:\MySQL 8.0\Data\my.ini”. Perintah –defaults-file digunakan untuk memberitahu MySQL Server bahwa lokasi file setting my.ini berada di C:\MySQL 8.0\Data\my.ini.

Materi tentang file my.ini telah kita bahas pada tutorial sebelumnya: Folder Instalasi MySQL dan my.ini.

Menjalankan mysql.exe (MySQL Server)

Jika tampilan DOS seolah2 berhenti, maka MySQL Server seharusnya sudah berjalan.

Mari kita periksa, buka Task Manager dengan menekan kombinasi Alt + Crtl + Del, lalu pilih tab Details (untuk Windows 10). Dari daftar yang ada cari apakah mysqld.exe ada atau tidak. Jika ada, berarti MySQL Server sudah berjalan.

Memeriksa MySQL Server dari Task Manager

Jendela DOS ini harus tetap terbuka, karena jika ditutup mysqld akan otomatis berhenti.

Untuk mencobanya, silahkan jalankan kembali MySQL Command Line Client, dan masukkan password root. Jika sukses, akan terlihat seperti gambar dibawah ini:

Jalankan MySQL Client


Menghentikan MySQL Server secara manual (mysqld.exe)

Untuk menghentikan MySQL server bisa dengan menutup jendela cmd sebelumnya. Atau cara lain adalah dari Task Manager

Buka tab Details di Task Manager, lalu cari mysqld.exe. Klik mysqld.exe ini lalu tekan tombol Delete di keyboard atau klik kanan dan pilih End Task.
Pilih mysqld.exe lalu pilih End Task
Akan tampil jendela konfirmasi “Do you want to end mysqld.exe?” pilih End process untuk mematikan MySQL Server.

Konfirmasi mematikan mysqld.exe


Menjalankan MySQL Server sebagai Windows Service

Windows menyediakan mekanisme “service” untuk aplikasi-aplikasi yang langsung berjalan secara otomatis ketika windows booting. Hal ini dimaksudkan agar kita tidak perlu untuk menjalankan MySQL Server secara manual terus menerus. Aplikasi yang diinstall sebagai “service” ini menggunakan sebagian memory komputer pada latar belakang (background), selama komputer hidup.

Salah satu alasan untuk terus menjalankan MySQL Server sebagai service adalah jika komputer ini akan dipakai sebagai server yang sebenarnya (misalnya untuk keperluan perusahaan).

Jika anda mengikuti tutorial menginstall MySQL di duniailkom, maka MySQL belum berjalan sebagai service, jadi bagaimana jika kita ingin menjalankan MySQL Server sebagai Windows Service? kita akan bahas sesaat lagi.

Peringatan: Berdasarkan pengalaman saya, menjalankan MySQL Server sebagai service sering menjadi masalah. Banyak yang komplain kenapa ketika menginstall XAMPP (pada saat mulai mempelajari bahasa PHP), MySQL Servernya tidak bisa jalan. Ini disebabkan karena di satu komputer hanya bisa ada 1 MySQL Server yang aktif pada satu waktu.

Jadi MySQL Server yang diinstall sebagai service ini harus dimatikan terlebih dahulu, baru MySQL versi XAMPP bisa dijalankan.

Menginstall MySQL Server sebagai Service

Untuk membuat MySQL Server berjalan sebagai service, buka kembali menu MySQL di Start Menu, lalu pilih MySQL Installer – Community.

Menu MySQL Installer Community

Akan terbuka jendela MySQL Installer seperti berikut:

Cara rekonfigurasi MySQL Server

Silahkan klik pilihan Reconfigure untuk mengubah setingan MySQL Server.

Dari jendela yang tampil, terlihat bahwa ini adalah jendela yang sama sewaktu kita menginstal MySQL sebelumnya. Pada jendela pertama ini kita bisa mengubah setingan terkait Type Instalasi dan Jaringan. Saya tidak akan mengubah setingan ini, dan silahkan klik Next.

Input kembali password root

Pada jendela Accounts and Roles, kita akan diminta untuk memasukkan password root. Password ini harus sama dengan password saat instalasi sebelumnya (jika anda belum mengubahnya). Sama seperti saat menginstall, saya menggunakan “qwerty” sebagai password root, kemudian klik tombol check. Jika password sesuai, silahkan lanjut dengan men-klik tombol Next.

Pilih untuk aktifkan windows service

Dan, pada jendela Windows Service inilah kita bisa memilih untuk mengaktifkan MySQL Server sebagai service. Anda juga bisa memilih kotak checklist “Start the MySQL Server at System Startup” agar MySQL server langsung berjalan pada saat komputer hidup. Perhatikan bahwa kita menggunakan MYSQL80 sebagai nama service.

Lanjutkan dengan klik tombol Next.

Terapkan pilihan rekonfigurasi

Pada Jendela Apply Configuration, klik tombol Execute untuk menerapkan konfigurasi. Jika semua berjalan normal, MySQL akan menampilkan jendela akhir, kemudian klik Finish, lalu tutup jendela MySQL Installer.

Proses instalasi MySQL Server sebagai service selesai.


Memeriksa Windows Service untuk MySQL Server

Untuk memastikan bahwa MySQL Server telah berjalan sebagai Windows Service, kita akan menggunakan aplikasi Component Services bawaan Windows. Ketik di kolom search di sebelah Start Menu: “Component Services

Component Services

Setelah jendela Component Services terbuka, pada menu kiri, pilih Services (Local), cari MySQL80 pada jendela tengah tampilan ini. Jika ditemui MySQL80 berarti service MySQL Server telah terinstall.

Jendela Component Services di Windows 10 untuk menghapus MySQL Service

Pada menu di tengah, terdapat 3 tombol: Stop the Service, Pause the service, dan Restart the service. Ketiga tombol ini bisa digunakan untuk menghentikan, menghentikan sesaat (pause), atau menjalankan ulang (restart) service MySQL.

Untuk menguji coba MySQL Server, silahkan lakukan cek melalui MySQL Command Line Client.

Jalankan MySQL Client


Menghapus Windows Service MySQL Server

Untuk menghapus “service” MySQL Server, kita menggunakan cara yang sama dengan menginstall “service”, yakni akses kembali file MySQL Installer – Community. Bedanya, kali ini kita menghapus checklist pada jendela Windows Service.

Jendela Windows Service MySQL 8.0 (Matikan) 2

Setelah menghapusnya, Klik tombol Next dan Execute. Kemudian silahkan restart komputer dan Windows tidak akan menjalankan MySQL Server sebagai windows service lagi.

Dalam tutorial ini kita telah mempelajari cara cara menjalankan MySQL Server, untuk mengaksesnya kita akan menjalankan MySQL Client pada komputer yang sama. Ini akan kita bahas dalam tutorial selanjutnya, yakni Cara Menjalankan MySQL Client.


9. Menjalankan MySQL Client

Tutorial Belajar MySQL Part 9: Cara Menjalankan MySQL Client (mysql.exe)

MySQL Server dan MySQL Client

Dalam penerapan sistem sebenarnya, MySQL Server dan MySQL Client biasanya dijalankan pada komputer yang berbeda. Komputer Server berada pada sebuah ruangan tersendiri dan terhubung melalui jaringan dengan beberapa komputer Client. Namun kali ini kita akan menjalankan keduanya di dalam sebuah komputer saja.

Untuk MySQL Server, kita telah menjalankannya baik sebagai service, atau manual dengan mysqld.exe pada Tutorial Belajar MySQL: Cara Menjalankan MySQL Server.

Dengan MySQL server yang telah berjalan, kita akan mengaksesnya menggunakan MySQL Client dari Command Prompt Windows (selanjutnya akan kita singkat dengan cmd), menggunakan aplikasi mysql.exe dari folder bin MySQL.

Perhatikan bahwa untuk MySQL Server, kita menggunakan mysqld.exe, sedangkan untuk MySQL Client,kita menggunakan mysql.exe.


Menjalankan MySQL Client dengan MySQL Client Console

Cara paling cepat untuk memulai MySQL Client adalah dengan menggunakan Command Line Client. Aplikasi ini bisa diakses dari menu Start –> MySQL –> MySQL 8.0 Command Line Client.

MySQL 8.0 Command Line

Perhatikan bahwa pada MySQL 8.0, terdapat 2 buah aplikasi Command Line Client, yakni MySQL 8.0 Command Line Client, dan MySQL 8.0 Command Line Client – Unicode. Versi Unicode ditujukan jika anda menggunakan karakter non latin di dalam database, seperti menggunakan huruf jepang, cina, atau korea. Dalam tutorial ini saya menggunakan versi normal, bukan Unicode.

Pada jendela DOS yang terbuka, masukkan password untuk user root, misalnya “qwerty”, lalu tekan Enter. Jika tampilan “Welcome to the MySQL monitor” telah muncul, berarti kita telah berhasil login sebagai root, dan bisa mulai menggunakan MySQL.

Jalankan MySQL Client

Walaupun menggunakan MySQL Client Console lebih praktis, tetapi kita terikat dengan user root. Bagaimana jika kita ingin menggunakan user lain? untuk hal ini kita akan mempelajari cara mengakses MySQL Client secara manual dari command prompt Windows.


Menjalankan MySQL Client dari cmd Windows (mysql.exe)

Untuk menjalankan MySQL Client secara manual, sama seperti menjalankan MySQL Server secara manual, kita akan mengakses folder instalasi MySQL dari cmd (command prompt) Windows. Dalam contoh ini, file instalasi MySQL saya berada di C:\MySQL 8.0\bin. Jika folder instalasi MySQL di komputer anda berbeda, silahkan lakukan penyesuaian.

Caranya sama seperti menjalankan MySQL Server secara manual, yakni buka cmd Windows, kemudian pindah ke folder C:\MySQL 8.0\bin dengan perintah cd C:\MySQL 8.0\bin:

Pindah ke folder MySQL 8.0 dengan cmd Windows

Karena kita akan sering mengakses file “C:\MySQL 8.0\bin” dari cmd, maka akan lebih mudah jika membuat shortcut untuk langsung masuk ke dalam folder ini dari cmd.

Caranya, cari aplikasi cmd dari menu Search. Kemudian klik kanan, pilih Open file location.

Pilih open file location cmd WindowsAkan terbuka jendela Windows Explorer yang berisi icon cmd Windows, kemudian klik kanan, pilih menu Send To -> Desktop (create shortcut):

Buat shortcut cmd Windows 10

Hasilnya, akan tampil shortcut cmd di Desktop. Klik kanan shortcut cmd ini, lalu pilih properties:Dari tab Shortcut, cari input box “Start in”. Ubah isian kotak input ini menjadi “C:\MySQL 8.0\bin”, atau dengan lokasi lain folder bin dari MySQL jika anda menginstallnya bukan di “C:\MySQL 8.0”. Lalu klik OK.

Mengubah shortcut cmd menjadi start in MySQL 8.0-min

Sekarang, ketika shortcut ini di klik, akan langsung terbuka di folder C:\MySQL 8.0

Cmd Windows langsung berjalan di folder MySQL 8

Silahkan me-rename shortcut ini menjadi lebih spesifik, Misalnya: “MySQL Folder”, atau “MySQL cmd”.


Memulai Koneksi dengan MySQL Server

Jika MySQL Server telah berjalan, baik sebagai service maupun langsung dengan mysqld.exe (Lihat Tutorial MySQL: Cara Menjalankan MySQL Server), kita bisa login ke dalam Server dengan format perintah:

1
mysql -h host -u user –p_password
  • mysql adalah program MySQL Client yang kita gunakan untuk mengakses server (file aslinya bernama: mysql.exe).
  • –h adalah kode untuk mysql bahwa perintah setelahnya adalah hostHost disini merupakan alamat IP dari komputer server. Karena kita menjalankan MySQL Server pada komputer yang sama dengan MySQL Client, alamat IP dari komputer kita adalah 127.0.0.1, atau sering juga disebut dengan localhost.
  • –u adalah kode untuk mysql bahwa perintah setelahnya adalah inputan nama userUser adalah username pengguna yang akan login ke MySQL server. User ini bisa kita buat sendiri nantinya dengan hak akses masing-masing, namun karena pertama kali digunakan, user yang tersedia adalah root.
  • -p adalah kode untuk mysql bahwa perintah setelahnya adalah password dari user. Inputan password harus langsung digabungkan dengan –p. contohnya, dalam tutorial ini, saya menggunakan password “qwerty” untuk user root. Maka penulisannya menjadi –pqwerty.

Untuk masuk pada localhost sebagai user root dengan password qwerty, perintah nya adalah:

1
mysql -h localhost -u root –pqwerty

Jika tulisan “Welcome to the MySQL monitor” seperti pada gambar sudah keluar, maka kita sukses login sebagai root. Setiap perintah di dalam Client MySQL akan di awali dengan tanda mysql>.

Login sebagai MySQL Client

Jika anda copy-paste perintah diatas, kadang terjadi error. Silahkan coba lagi dengan mengetik ulang secara manual.

Untuk keluar dari Client, ketik perintah:

1
exit

Atau tutup cmd dengan klik tombol close windows pada sudut kanan atas. Koneksi MySQL Client otomatis akan terputus.

Logout sebagai MySQL Client

Perintah -h localhost merupakan lokasi dari MySQL Server yang ingin diakses. Apabila MySQL Server berada di komputer lain, kita bisa menggunakan alamat IP server tersebut. Sebagai contoh, seandainya MySQL Server berada di alamat: 10.12.254.14, maka perintahnya menjadi:

1
mysql -h 10.12.254.14 -u root –pqwerty

Localhost adalah penyebutan untuk alamat komputer itu sendiri (bisa juga diganti dengan alamat IP: 127.0.0.1), dan oleh karena itu, perintah –h localhost juga dapat ditiadakan. Sehingga kita dapat masuk dengan perintah:

1
mysql -u root –pqwerty

Jika anda perhatikan, pada pesan “Welcome to the MySQL Monitor” diatas, terdapat baris peringatan: “Warning: Using a password on the command line interface can be insecure.” Hal ini terjadi karena kita menulis password root secara langsung, sehingga dianggap tidak aman. Sebagai solusinya, kita bisa menginput password user root dengan lebih aman menggunakan perintah:

1
mysql -u root –p

Tampilan cmd akan berhenti sesaat untuk menunggu kita menginputkan password:

1
Enter password:*****

Login sebagai MySQL Client dengan password

Sedikit tips untuk penggunaan melalui cmd (command prompt), kita dapat mengulang perintah-perintah yang pernah digunakan dengan menekan tombol panah atas pada keyboard.

Setelah menjalankan MySQL Server pada Tutorial Belajar MySQL: Cara Menjalankan MySQL Server, dan masuk sebagai MySQL Client pada Tutorial Belajar MySQL: Cara Menjalankan MySQL Client, saatnya kita mempelajari cara penulisan perintah (query) MySQL pada Tutorial Belajar MySQL: Dasar Penulisan Query MySQL.