Panduan cara mengoptimalkan kinerja MySQL atau MariaDB dengan menggunakan MySQLTuner. MySQLtuner.pl adalah sebuah alat/skrip yang dapat membantu untuk menganalisis MySQL/MariaDb yang sedang berjalan di server. Kemudian akan memberi informasi dan rekomendasi konfigurasi MySQL agar dapat bekerja optimal serta meningkatkan stabilitas server. Ya kira-kira seperti itu intinya.
Daftar database server
Berikut daftar database server yang bisa dioptimasi dengan MySQLTuner
- MySQL 8 (partial support, password checks don’t work)
- MySQL 5.7 (full support)
- MySQL 5.6 (full support)
- MariaDB 10.3 (full support)
- MariaDB 10.2 (full support)
- MariaDB 10.1 (full support)
- MariaDB 10.0 (full support, 6 last month support)
- Percona Server 5.7 (full support)
- Percona Server 5.6 (full support)
- Percona XtraDB cluster (full support)
- MySQL 3.23, 4.0, 4.1, 5.0, 5.1, 5.5 (partial support – deprecated version)
- Perl 5.6 or later (with perl-doc package)
- Unix/Linux based operating system (tested on Linux, BSD variants, and Solaris variants)
- Windows is not supported at this time (Help wanted !!!!!)
- Unrestricted read access to the MySQL server (OS root access recommended for MySQL < 5.1)
- CVE vulnerabilities detection support from https://cve.mitre.org
Berikut langkah-langkah cara optimasi database dengan MySQLTuner.pl
Download MySQLTuner
Pertama download dulu skrip mysqltuner
wget https://raw.githubusercontent.com/major/MySQLTuner-perl/master/mysqltuner.pl
CHMOD
Lalu, CHMOD (change mode) agar dapat dieksekusi.
chmod +x mysqltuner.pl
Jalankan mysqltuner.pl
Jalankan script tersebut dengan perintah berikut ini
./mysqltuner.pl
Kalau mysql akun rootnya sudah disetup dan anonymous users tidak diperbolehkan, gunakan parameter berikut
./mysqltuner.pl --host localhost --user root --pass 'passwordnyaroot'
Hasilnya, informasi dan saran konfigurasi berbeda-beda tidap server, tergantung spesifikasi server, contohnya seperti ini:
Variables to adjust:
tmp_table_size (> 24M)
max_heap_table_size (> 24M)
table_open_cache (> 6)
innodb_buffer_pool_size (>= 270.4M) if possible.
innodb_log_file_size should be (=32M) if possible, so InnoDB total log files size equals to 25% of buffer pool size.
Jika sudah, tinggal mengaplikasikan.
Konfigurasi MySQL/MariaDB, biasanya lokasinya di /etc/my.cnf
kalau tidak ada coba di /etc/mysql/my.cnf
kalau belum juga ketemu coba cari-cari saja di /etc/mysql/
pasti ketemu. Kalau sudah ketemu, edit dan sesuaikan dengan yang disarankan hasil analisa dari MySQLTuner tadi.
Kalau ada baris yang tidak ada, dibuat saja baris baru, misalnya baris tmp_table_size (> 24M
tidak ada di konfigurasinya, tinggal ditambah seperti ini:
tmp_table_size = 32M
Simpan
Restart MySQL /MariaDB
Setelah disimpan konfigurasinya, jangan lupa di restart servicenya
systemctl restart mariadb
atau
systemctl restart mysqld
Mudah bukan? selamat mencoba kawan. semoga bermanfaat.