Wednesday, May 5, 2021

Cara Tuning MySQL 5.7 Untuk Kebutuhan Database Trafik Tinggi (High Traffic Database)

 


Pada tutorial kali ini kami akan membagikan beberapa tips untuk membuat sebuah database server khususnya yang menggunakan MySQL versi 5.7 bisa digunakan dan siap melayani kebutuhan trafik yang tinggi (high-traffic).

RAM dan CPU Cukup

Tips pertama, pastikan RAM dan CPU lebih dari biasanya. Syukur, kalau proses upgrade RAM dan CPU ini elastis, dalam artian bisa ditambah secara cepat tanpa merestart komputer server. Hal ini bisa dilakukan kalau kita menyewa atau memiliki infrastuktur Cloud Computing yang sudah mendukung fitur Elasticity. Kalaupun belum atau tidak memiliki fitur tersebut, pastikan kita siap melakukan upgrade CPU dan RAM dengan cepat.

Tuning Konfigurasi

Ibarat sebuah motor, server MySQL juga butuh tuning performa. Secara default pengembang dari MySQL sudah memberikan konfigurasi yang bisa berjalan optimal untuk kebutuhan rata-rata. Nah, tentunya untuk kebutuhan trafik tinggi, tentunya konfigurasinya juga harus disesuaikan.

Konfigurasi dari MySQL server ini, ada di file /etc/mysql/mysql.conf.d/mysqld.conf. Edit menggunakan editor command line seperti nano.

nano /etc/mysql/mysql.conf.d/mysqld.conf

tambahkan ini:

# Recommended in standard MySQL setup

sql_mode=

key_buffer_size         = 4G ##2G ##2048M

max_allowed_packet      = 64M ##16M

thread_stack            = 192K

net_buffer_length       = 128K ##64K ##32K

thread_cache_size       = 8

open_files_limit        = 4096

max_connections         = 1800

max_user_connections    = 9999

max_connect_errors      = 1000

skip_name_resolve

table_open_cache        = 20000

sort_buffer_size        = 64M

read_buffer_size        = 64M

wait_timeout            = 1000

join_buffer_size        = 1024000

query_cache_type        = 1

table_open_cache        = 512

query_cache_limit       = 8M ##1M

query_cache_size        = 128M##16M

query_cache_min_res_unit = 2K

log_output   =file

slow_query_log   =ON

0 comments:

Post a Comment