Sejauh ini kita sudah memanggil mysql dari berbagai sudut, tetapi belum pernah menyusuri alurnya dari awal sampai akhir dalam satu tarikan napas. Alur tersebut sesederhana empat langkah: buka terminal, masuk ke sesi MySQL, jalankan perintah, tutup sesi — lalu ulangi setiap kali belajar. Membiasakan pola ini membuat kita tidak perlu berpikir lagi tentang mekaniknya, sehingga seluruh perhatian bisa tertuju pada SQL yang sedang kita tulis. Chapter ini membedah tiap langkah tersebut, termasuk cara membaca berbagai bentuk prompt yang muncul di dalam sesi.
Menjalankan mysql dari Terminal #
Langkah pertama adalah membuka aplikasi terminal: Terminal di macOS, Windows Terminal atau PowerShell di Windows, dan terminal bawaan apa pun di Linux. Terminal yang terbuka berada di shell — lingkungan tempat kita menjalankan program-program biasa seperti ls dan cd. Dari sinilah kita memanggil program mysql dan menyerahkan kendali kepadanya. Berikut ilustrasi satu sesi lengkap dari login sampai keluar, persis seperti yang tampil di layar:
mysql -h 127.0.0.1 -P 3306 -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 12
Server version: 8.4.11 MySQL Community Server - GPL
Copyright (c) 2000, 2026, Oracle and/or its affiliates.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> SELECT VERSION();
+-----------+
| VERSION() |
+-----------+
| 8.4.11 |
+-----------+
1 row in set (0.00 sec)
mysql> exit
ByeMari kita bedah baris demi baris. Baris Enter password: muncul karena opsi -p tanpa argumen; ketikan kita tidak digambar di layar sama sekali, bukan diganti bintang, supaya kata sandi tidak terbaca. Beberapa baris berikutnya adalah banner pembuka yang menyampaikan tiga informasi berharga: connection id adalah nomor urut koneksi kita di server, Server version memastikan versi mysqld yang menjawab, dan baris Type 'help;' mengingatkan bahwa bantuan selalu tersedia di dalam sesi. Baris Bye di akhir menandakan client menutup koneksi dan mengembalikan kita ke shell; sejak baris itu, perintah seperti ls kembali berlaku dan perintah SQL tidak lagi dikenali.
Membaca Prompt mysql> dan Bentuk Lanjutannya #
Prompt mysql> adalah titik henti yang paling sering kita lihat: client siap menerima statement baru. Namun MySQL sesungguhnya memiliki beberapa bentuk prompt, dan tiap bentuk menyampaikan keadaan input kita saat ini:
| Prompt | Arti |
|---|---|
mysql> | Siap menerima statement baru |
-> | Statement belum selesai — titik koma belum diketik |
'> | Sedang menunggu penutup kutip tunggal ' |
"> | Sedang menunggu penutup kutip ganda " |
`> | Sedang menunggu penutup backtick ` |
/*> | Sedang menunggu penutup komentar blok */ |
Karena titik koma adalah penanda akhir statement, kita bebas memecah statement panjang ke beberapa baris — client menyusun potongannya sampai terminatornya datang. Tampilannya di layar seperti berikut:
mysql> SELECT
-> 1 AS angka,
-> 'teks' AS kata;
+-------+------+
| angka | kata |
+-------+------+
| 1 | teks |
+-------+------+
1 row in set (0.00 sec)Prompt -> hadir di awal tiap baris lanjutan sebagai pengingat bahwa statement belum dieksekusi apa pun. Statement di atas juga bisa ditulis dalam satu baris, dan hasilnya sama persis:
SELECT 1 AS angka, 'teks' AS kata;Output yang Dihasilkan:
+-------+------+
| angka | kata |
+-------+------+
| 1 | teks |
+-------+------+
1 row in set (0.00 sec)Perintah Pertama dalam Sesi Baru #
Setiap sesi baru selalu dimulai dari keadaan yang sama: terhubung sebagai user tertentu, tetapi belum memilih database mana pun. Kita bisa membuktikannya dengan fungsi DATABASE() yang melaporkan database aktif saat ini:
SELECT DATABASE();Output yang Dihasilkan:
+------------+
| DATABASE() |
+------------+
| NULL |
+------------+
1 row in set (0.00 sec)Nilai NULL berarti belum ada database aktif — belum ada “ruang kerja” yang dipilih untuk sesi ini. Lalu bagaimana isi server kita? Perintah SHOW DATABASES memperlihatkan daftar seluruh database yang bisa kita akses:
SHOW DATABASES;Output yang Dihasilkan:
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0.00 sec)Empat nama tersebut adalah database bawaan MySQL: information_schema dan performance_schema menyajikan metadata serta metrik server, mysql menyimpan tabel sistem seperti daftar user, dan sys berisi view bantuan untuk administrator. Server latihan kita memang masih bersih karena belum ada satu pun database buatan — keadaan yang akan segera kita ubah di section berikutnya, dan keadaan inilah yang kita jumpai setiap kali memasang MySQL baru.
Keluar dari Sesi dengan Benar #
Menutup sesi punya tiga perintah yang setara: exit, quit, dan \q. Ketiganya menutup koneksi dengan sopan — server sempat membereskan sesi di sisinya — lalu client mencetak Bye dan mengembalikan kita ke shell. Tidak ada statement yang setengah jalan ditinggal karena client memang menunggu statement selesai sebelum benar-benar keluar. Tanda paling jelas bahwa kita sudah kembali ke shell adalah munculnya prompt shell biasa, misalnya $, di baris baru.
Pola Bekerja Berulang #
Empat langkah pembuka chapter ini kini lengkap semua gerakannya, dan alur berikut merangkumnya:
Dua sifat sesi patut diingat sebelum kita melangkah lebih jauh. Pertama, data yang tersimpan di server bertahan antar sesi — tabel dan baris yang kita buat hari ini masih ada besok — tetapi keadaan sesi seperti database yang sedang dipilih dan variabel sementara selalu mulai dari nol di koneksi baru. Kedua, client menyimpan riwayat statement yang pernah kita jalankan di file ~/.mysql_history, sehingga tombol panah atas di dalam sesi menyarikan statement lama tanpa harus mengetik ulang.
Referensi #
Kita kini lancar keluar-masuk sesi, tetapi di balik tiap perintah mysql -u root -p tersimpan keputusan-keputusan koneksi: server yang mana, port berapa, sebagai user siapa, ke database apa. Chapter berikutnya membedah lima parameter koneksi tersebut, perbedaan jalur TCP dan Unix socket, serta cara membaca galat koneksi yang paling sering muncul.