MySQL adalah sistem manajemen basis data relasional sumber terbuka kedua yang paling banyak digunakan di dunia. Ini telah menjadi sangat populer karena kinerjanya yang cepat dan konsisten, keandalan yang tinggi, dan kemudahan penggunaan. Artikel ini menyajikan beberapa praktik terbaik di MySQL.
Praktik terbaik di MySQL
1. Selalu gunakan tipe data yang tepat
Gunakan tipe data berdasarkan sifat data. Jika Anda menggunakan tipe data yang tidak relevan, ini dapat menghabiskan lebih banyak ruang atau dapat menyebabkan kesalahan.
Contoh:Menggunakan varchar (20) untuk menyimpan nilai waktu tanggal alih-alih tipe data DATETIME akan menyebabkan kesalahan selama perhitungan terkait waktu tanggal dan ada juga kemungkinan kasus penyimpanan data yang tidak valid.
2. Gunakan CHAR (1) daripada VARCHAR(1)
Jika Anda merangkai satu karakter, gunakan CHAR(1) daripada VARCHAR(1) karena VARCHAR(1) akan membutuhkan byte tambahan untuk menyimpan informasi
3. Gunakan tipe data CHAR untuk menyimpan hanya data dengan panjang tetap
Contoh:Menggunakan char(1000) sebagai ganti varchar(1000) akan menghabiskan lebih banyak ruang jika panjang data kurang dari 1000
4. Hindari menggunakan format tanggal regional
Saat Anda menggunakan tipe data DATETIME atau DATE, selalu gunakan format tanggal YYYY-MM-DD atau format tanggal ISO yang sesuai dengan SQL Engine Anda. Format regional lainnya seperti DD-MM-YYY, MM-DD-YYYY tidak akan disimpan dengan benar.
5. Indeks kolom kunci
Pastikan untuk mengindeks kolom yang digunakan dalam klausa JOIN sehingga kueri mengembalikan hasilnya dengan cepat.
Jika Anda menggunakan pernyataan UPDATE yang melibatkan lebih dari satu tabel, pastikan bahwa semua kolom yang digunakan untuk menggabungkan tabel adalah diindeks
6. Jangan gunakan fungsi di atas kolom yang diindeks
Menggunakan fungsi di atas kolom yang diindeks mengalahkan tujuan indeks. Misalkan Anda ingin mendapatkan data di mana dua karakter pertama kode pelanggan adalah AK, jangan tulis
SELECT kolom FROM tabel WHERE left (customer_code,2)='AK'
tetapi tulis ulang menggunakan
PILIH kolom FROM tabel WHERE customer_code seperti 'AK%'
yang akan menggunakan indeks yang menghasilkan waktu respons yang lebih cepat.
7. Gunakan SELECT * hanya jika diperlukan
Jangan hanya membabi buta menggunakan SELECT * dalam kode. Jika ada banyak kolom dalam tabel, semua akan dikembalikan yang akan memperlambat waktu respons terutama jika Anda mengirimkan hasilnya ke aplikasi front-end.
Ketik secara eksplisit nama kolom yang benar-benar dibutuhkan.
8. Gunakan ORDER BY Clause hanya jika diperlukan
Jika Anda ingin menampilkan hasilnya di aplikasi front-end, biarkan ORDER set hasilnya. Melakukan ini dalam SQL dapat memperlambat waktu respons di lingkungan multi-pengguna.
9. Pilih Mesin Basis Data yang tepat
Jika Anda mengembangkan aplikasi yang lebih sering membaca data daripada menulis (misalnya:mesin pencari), pilih mesin penyimpanan MyISAM.
Jika Anda mengembangkan aplikasi yang lebih sering menulis data daripada membaca (misalnya:transaksi bank waktu nyata), pilih mesin penyimpanan INNODB.
Memilih mesin penyimpanan yang salah akan mempengaruhi kinerja
10. Gunakan klausa EXISTS jika diperlukan
Jika Anda ingin memeriksa keberadaan data, jangan gunakan
If (SELECT count(*) from Table WHERE col='some value')>0
sebagai gantinya, gunakan klausa EXISTS
If ADA(PILIH * dari Tabel WHERE col='some value')
yang lebih cepat dalam waktu respons.