Apa itu MySQL?
MySQL adalah salah satu sistem manajemen basis data relasional (RDBMS) yang paling populer dan banyak digunakan di seluruh dunia. Dalam artikel ini, kita akan mempelajari cara menginstal MySQL versi 5.7 pada server yang menggunakan sistem operasi AlmaLinux 8.
Database MySQL 5.7 menjadi solusi yang tepat bagi Anda yang memiliki aplikasi legacy yang masih bergantung pada database MySQL versi lama. Pada artikel ini kami menggunakan resource Cloud VPS SSD Storage dengan spesifikasi Compute SSD – 1.
Persyaratan
- Akses ke server yang menggunakan AlmaLinux 8.
- Hak akses root atau pengguna dengan izin sudo untuk menjalankan perintah.
- Koneksi internet yang stabil untuk mengunduh paket yang diperlukan.
Langkah 1 — Instalasi MySQL 5.7
Update server untuk memperbarui paket yang diperlukan agar tetap optimal
1 |
dnf update -y |
Buat file untuk repository
1 |
nano /etc/yum.repos.d/mysql-community.repo |
Kemudian isikan dengan script berikut
1 2 3 4 5 6 |
[mysql57-community] name=MySQL 5.7 Community Server baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/7/$basearch/ enabled=1 gpgcheck=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql |
Matikan module MySQL dari server agar dapat menginstall versi MySQL 5.7
1 |
yum module disable mysql |
Selanjutnya jalankan perintah berikut untuk menginstall MySQL 5.7. Perintah tersebut akan menginstal paket untuk server MySQL (mysql-community-server) dan juga paket untuk komponen yang diperlukan untuk menjalankan server, termasuk paket untuk klien (mysql-community-client).
1 |
dnf install mysql-community-server -y |
Aktifkan service MySQL agar dapat berjalan otomatis saat server direboot
1 |
systemctl enable --now mysqld |
Cek status MySQL menggunakan perintah berikut
1 |
systemctl status mysqld |
Pastikan outputnya seperti berikut
1 2 3 4 5 6 7 8 9 10 11 12 |
● mysqld.service - MySQL Server Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled) Active: active (running) since Sat 2024-06-15 11:11:37 UTC; 6s ago Docs: man:mysqld(8) http://dev.mysql.com/doc/refman/en/using-systemd.html Process: 3051 ExecStart=/usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid $MYSQLD_OPTS (code=exited, status=0/SUCCESS) Process: 2997 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS) Main PID: 3054 (mysqld) Tasks: 27 (limit: 5635) Memory: 346.9M CGroup: /system.slice/mysqld.service └─3054 /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid |
Cek versi MySQL saat ini
1 |
mysql --version |
Berikut contoh outputnya
1 |
mysql Ver 14.14 Distrib 5.7.44, for Linux (x86_64) using EditLine wrapper |
Secara otomatis pada MySQL versi 5.7 membuat password secara acak untuk keamanan, silahkan jalankan perintah ini untuk melanjutkan ke tahap berikutnya
1 |
cat /var/log/mysqld.log | grep "temporary password" |
Contoh outputnya seperti berikut
1 |
2024-06-15T11:11:31.083892Z 1 [Note] A temporary password is generated for root@localhost: 9BRi7N!uWNIU |
Selanjutnya kita akan melakukan konfigurasi keamanan dasar. Jalankan perintah berikut untuk memulai proses setup keamanan pada MySQL. Masukkan password yang sudah diambil dari log, contohnya password kami untuk root sebelumnya adalah 9BRi7N!uWNIU
1 |
mysql_secure_installation |
Langkah 2 — Ujicoba Operasi CRUD (Opsional)
Kita akan membuat sebuah database bernama example_db dan sebuah tabel bernama users di dalamnya. Selanjutnya, kita akan melakukan operasi CRUD (Create, Read, Update, Delete) pada tabel users untuk menambah, melihat, mengubah, dan menghapus data.
Langkah 2.1 — Akses MySQL
Jalankan perintah berikut untuk login ke MySQL dan gunakan password pada langkah sebelumnya saat Anda menjalankan perintah mysql_secure_installation
1 |
mysql -u root -p |
Langkah 2.2 — Membuat Database
1 2 |
CREATE DATABASE example_db; USE example_db; |
- CREATE DATABASE example_db; adalah perintah untuk membuat database baru dengan nama example_db.
- USE example_db; adalah perintah untuk memilih/mengaktifkan database example_db agar semua perintah SQL selanjutnya akan dilakukan pada database tersebut.
Langkah 2.3 — Membuat Tabel
1 2 3 4 5 6 |
CREATE TABLE users ( id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(50) NOT NULL, email VARCHAR(50) UNIQUE NOT NULL, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ); |
- CREATE TABLE users ( ... ); adalah perintah untuk membuat tabel baru dengan nama users.
- id INT AUTO_INCREMENT PRIMARY KEY membuat kolom id sebagai primary key yang akan terisi secara otomatis dengan nilai unik setiap kali data baru ditambahkan.
- name VARCHAR(50) NOT NULL membuat kolom name bertipe data string dengan panjang maksimal 50 karakter, dan tidak boleh kosong (NOT NULL).
- email VARCHAR(50) UNIQUE NOT NULL membuat kolom email bertipe data string dengan panjang maksimal 50 karakter, tidak boleh kosong (NOT NULL), dan harus unik (UNIQUE).
- created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP membuat kolom created_at bertipe data timestamp (tanggal dan waktu) yang akan terisi secara otomatis dengan nilai saat data baru ditambahkan.
Langkah 2.4 — Menambahkan Data
1 2 |
- INSERT INTO users (name, email) VALUES ( … ); adalah perintah untuk menambahkan data baru ke tabel users.
- Kolom id tidak perlu disebutkan karena sudah didefinisikan sebagai AUTO_INCREMENT.
- Nilai untuk kolom created_at juga tidak perlu disebutkan karena sudah didefinisikan dengan DEFAULT CURRENT_TIMESTAMP.
Langkah 2.5 — Membaca Data
1 2 |
SELECT * FROM users; SELECT name, email FROM users WHERE id = 1; |
- SELECT * FROM users; adalah perintah untuk menampilkan semua data dari tabel users.
- SELECT name, email FROM users WHERE id = 1; adalah perintah untuk menampilkan data dari kolom name dan email di tabel users dengan kondisi id = 1.
Langkah 2.6 — Memperbarui Data
1 |
- UPDATE users SET name = …, email = … WHERE id = 1; adalah perintah untuk memperbarui data pada tabel users dengan kondisi id = 1.
- Kolom name akan diubah menjadi John Doe dan kolom email akan diubah menjadi [email protected].
Langkah 2.7 — Menghapus Data
1 |
DELETE FROM users WHERE id = 1; |
- DELETE FROM users WHERE id = 1; adalah perintah untuk menghapus data dari tabel users dengan kondisi id = 1.
Kesimpulan
Dalam artikel ini, kita telah mempelajari bagaimana menggunakan sintaks SQL dasar untuk melakukan operasi CRUD (Create, Read, Update, Delete) pada database MySQL 5.7. Kita mulai dengan membuat database baru bernama “example_db” dan membuat tabel “users” di dalamnya. Dengan memahami dasar-dasar CRUD ini, Anda dapat mulai mengembangkan aplikasi yang berinteraksi dengan database MySQL dengan lebih baik. Jangan ragu untuk terus berlatih dan mencoba membuat contoh-contoh lain.