Skip to main content
  1. Posts/

Benchmark MySQL Query Menggunakan mysqlslap

·2 mins·
mysql mysql
Table of Contents

MySQL memiliki tool mysqlslap yang dapat membantu DBA dan pengembang untuk menguji beban server database. Anda dapat menguji server database menggunakan parameter --auto-generate-sql atau dengan menguji setiap query yang digunakan oleh aplikasi.

Sebelum memulai pastikan server Anda telah terinstall MySQL minimal versi 5.7 keatas dan Saya sarankan untuk tidak menggunakan server yang sedang live / produksi agar tidak mengganggu aktivitas dari aplikasi Anda.

Kemudian Anda dapat menambah file .my.cnf pada home root atau home user agar setiap eksekusi mysqlslap tidak perlu menggunakan parameter --user dan --password

[client]
user=youruser
password=yourstrongpass

Install Sample Database
#

Download employees sample database.

wget https://launchpad.net/test-db/employees-db-1/1.0.6/+download/employees_db-full-1.0.6.tar.bz2

Selanjutnya extract file.

tar -xaf employees_db-full-1.0.6.tar.bz2

Import sample database.

mysql -t < employees_db/employees.sql

Using mysqlslap
#

Benchmarking with Auto-generated SQL

Untuk percobaan pertama akan menguji koneksi tunggal dengan SQL yang digenerate otomatis.

# mysqlslap --auto-generate-sql
Benchmark
        Average number of seconds to run all queries: 0.015 seconds
        Minimum number of seconds to run all queries: 0.015 seconds
        Maximum number of seconds to run all queries: 0.015 seconds
        Number of clients running queries: 1
        Average number of queries per client: 0

Dari output tersebut, Anda akan mengetahui jumlah detik rata-rata, minimum, dan maksimum yang dibutuhkan untuk menjalankan query.

Sekarang coba dengan 25 koneksi secara bersamaan dan jalankan query yang digenerate otomatis selama 10 kali.

mysqlslap -c 25 -i 10 --auto-generate-sql

Benchmarking with Custom Queries

Jika ingin menjalankan custom query gunakan parameter --create-schema untuk menentukan database, lalu --query untuk menentukan query yang akan dijalankan.

mysqlslap -c 25 -i 10 --create-schema=employees --query="SELECT * FROM dept_emp"

Anda dapat menambahkan beberapa query sekaligus ke file tertentu untuk menjalankan beberapa query sekaligus.

mysqlslap -c 25 -i 10 --create-schema=employees --query="/home/user/select_query.sql"

Related

Cara Menggunakan Indexes di MySQL
·9 mins
mysql mysql
Setting Up InnoDB Memcached Plugin in MySQL
·3 mins
mysql mysql
Speed Up Query Joins MariaDB
·1 min
mysql mysql
Optimizing MySQL Using Query Cache
·4 mins
mysql mysql
Cara Export dan Import User MySQL
·1 min
mysql mysql
ERROR 1273 (HY000): Unknown collation Saat Import DB
·1 min
mysql mysql