Database merupakan salah satu bagian penting dalam pengembangan aplikasi. Dengan database, data yang dibuat oleh pengguna dapat disimpan, dikelola, dicari, dan digunakan kembali ketika dibutuhkan.
Python sebagai salah satu bahasa pemrograman populer juga dapat digunakan untuk berkomunikasi dengan berbagai jenis database.
Salah satu database yang banyak digunakan dalam pengembangan aplikasi adalah MySQL.
Untuk menghubungkan program Python dengan MySQL, salah satu library yang dapat digunakan adalah PyMySQL.
Pada tutorial ini, kita akan belajar database di Python menggunakan PyMySQL mulai dari mengenal jenis database, memahami PyMySQL, melakukan instalasi, menggunakan local server, hingga membuat koneksi Python ke database MySQL.
Apa Itu Database?
Database adalah tempat untuk menyimpan dan mengelola data secara terstruktur.
Contohnya, dalam aplikasi data mahasiswa, database dapat digunakan untuk menyimpan NIM, nama mahasiswa, jurusan, alamat, dan data lainnya.
Secara umum, database dapat dibagi menjadi dua jenis utama, yaitu database relasional dan database non-relasional.
1. Database Relasional
Database relasional menyimpan data dalam bentuk tabel yang terdiri dari baris dan kolom. Setiap tabel biasanya memiliki hubungan dengan tabel lainnya.
Contoh database relasional antara lain:
- MySQL
- MariaDB
- PostgreSQL
- Microsoft SQL Server
- Oracle Database
- SQLite
MySQL merupakan salah satu database relasional yang sangat populer dan banyak digunakan bersama PHP, Python, JavaScript, dan berbagai bahasa pemrograman lainnya.
2. Database Non-Relasional
Database non-relasional atau sering disebut NoSQL tidak menggunakan struktur tabel relasional seperti database SQL pada umumnya.
Data dapat disimpan dalam bentuk dokumen, key-value, graph, atau struktur lainnya.
Contoh database NoSQL antara lain:
- MongoDB
- Redis
- Cassandra
- CouchDB
Dalam tutorial ini kita akan menggunakan MySQL, karena struktur tabel dan SQL-nya cukup mudah dipelajari untuk pemula.
Apa Itu PyMySQL?
PyMySQL adalah library Python yang digunakan untuk menghubungkan aplikasi Python dengan database MySQL atau database yang kompatibel dengan MySQL.
Dengan PyMySQL, program Python dapat menjalankan berbagai operasi database seperti:
- Membuat koneksi ke MySQL
- Menjalankan SQL Query
- Mengambil data dari database
- Menambahkan data
- Mengubah data
- Menghapus data
- Membuat aplikasi CRUD
Sebagai contoh, Python dapat menjalankan query SQL berikut melalui PyMySQL:
SELECT * FROM mahasiswa;
Hasil dari query tersebut kemudian dapat diproses kembali menggunakan Python.
Cara Install PyMySQL di Python
Sebelum menggunakan PyMySQL, pastikan Python sudah terinstall di komputer.
Untuk memeriksa instalasi Python, buka Command Prompt atau terminal VS Code kemudian jalankan:
python --version
Jika Python sudah terinstall, akan muncul informasi versi Python yang digunakan.

Selanjutnya install PyMySQL menggunakan perintah:
pip install pymysql
Tunggu sampai proses instalasi selesai. Untuk memastikan PyMySQL sudah berhasil diinstall, kita dapat menjalankan:
pip show pymysql
Jika informasi mengenai package PyMySQL muncul, berarti library sudah berhasil terinstall.

Menggunakan Local Server untuk MySQL
Agar Python dapat terhubung dengan MySQL secara lokal atau localhost, kita membutuhkan server database. Salah satu aplikasi yang dapat digunakan adalah Laragon.
Selain Laragon, beberapa aplikasi local server yang populer antara lain:
- XAMPP
- Laragon
- WAMP
- MAMP
Dalam contoh ini kita menggunakan Laragon.
Setelah Laragon terinstall, jalankan aplikasi tersebut kemudian aktifkan service MySQL.
Jika menggunakan Apache untuk kebutuhan aplikasi web, Apache juga dapat diaktifkan, tetapi untuk koneksi Python ke MySQL, yang paling penting adalah service MySQL berjalan.
Biasanya MySQL pada local server menggunakan:
Host : localhost
Port : 3306
Username : root
Password : kosong
Namun konfigurasi tersebut dapat berbeda tergantung pengaturan MySQL pada komputer masing-masing.
Baca juga: Cara Menggunakan PhpMyadmin Localhost Xampp [Pemula]
Membuat Database MySQL
Sebelum membuat koneksi dari Python, kita perlu memiliki database.
Jika menggunakan Laragon, database dapat dibuat melalui phpMyAdmin atau aplikasi database manager lainnya.
Sebagai contoh, buat database dengan nama:
db_python
CREATE DATABASE db_python;
Kemudian kita dapat membuat tabel sederhana bernama mahasiswa.
Klik database yang sudah di buat tadi, klik panel menu SQL, ketik dan jalankan kode SQL dibawah ini.
CREATE TABLE mahasiswa ( id INT AUTO_INCREMENT PRIMARY KEY, nama VARCHAR(100), jurusan VARCHAR(100) );
Sekarang kita sudah memiliki database db_python dengan tabel mahasiswa

Membuat Koneksi Python ke MySQL Menggunakan PyMySQL
Setelah database tersedia dan PyMySQL berhasil diinstall, kita dapat membuat file Python, misalnya:
koneksi.py
Kemudian masukkan kode berikut:
import pymysql
koneksi = pymysql.connect(
host="localhost",
user="root",
password="",
database="db_python"
)
print("Berhasil terhubung ke database MySQL!")

Kode tersebut menggunakan pymysql.connect() untuk membuat koneksi ke database.
Penjelasan setiap bagian:
host="localhost"
Menentukan lokasi server MySQL. Karena database berjalan di komputer sendiri, kita menggunakan localhost.
user="root"
Menentukan username MySQL. Pada konfigurasi local server tertentu, username default biasanya adalah root.
password=""
Berisi password MySQL. Jika MySQL tidak menggunakan password, bagian ini dapat dikosongkan.
database="db_python"
Menentukan database yang ingin digunakan oleh program Python.
Membuat Koneksi dengan Penanganan Error
Agar program lebih aman ketika terjadi masalah koneksi, kita dapat menggunakan try-except.
Contohnya:
import pymysql
try:
koneksi = pymysql.connect(
host="localhost",
user="root",
password="",
database="db_python"
)
print("Berhasil terhubung ke database MySQL!")
except pymysql.MySQLError as error:
print("Gagal terhubung ke database!")
print("Error:", error)
Dengan cara ini, apabila database tidak ditemukan, username atau password salah, maupun service MySQL belum berjalan, program akan menampilkan pesan error daripada langsung berhenti tanpa penjelasan.
Kesimpulan
Python dapat digunakan untuk mengakses dan mengelola database MySQL dengan bantuan library PyMySQL.
Sebelum membuat koneksi, kita perlu memahami konsep dasar database, menginstall Python dan PyMySQL, serta memastikan server MySQL berjalan menggunakan local server seperti Laragon.
Setelah koneksi berhasil dibuat, PyMySQL dapat digunakan untuk menjalankan berbagai perintah SQL dari Python.
Tahap berikutnya adalah mempelajari bagaimana menggunakan cursor, menjalankan query INSERT, SELECT, UPDATE, dan DELETE, hingga membuat aplikasi CRUD Python dengan MySQL.
Dengan memahami koneksi database terlebih dahulu, proses membuat aplikasi Python yang menggunakan penyimpanan data akan menjadi lebih mudah dan terstruktur.