Versi 5.1.6 dan yang lebih baru:
1. Masukkan shell MySQL dan jalankan perintah berikut:
set global slow_query_log = 'ON';
2. Aktifkan opsi lain yang diinginkan. Berikut adalah beberapa contoh umum:
Detail log untuk kueri yang diharapkan mengambil semua baris alih-alih menggunakan indeks:
set global log_queries_not_using_indexes = 'ON'
Setel jalur ke log kueri lambat:
set global slow_query_log_file ='/var/log/mysql/slow-query.log';
Setel jumlah waktu yang dibutuhkan kueri untuk dijalankan sebelum dicatat:
set global long_query_time = 20;
(default is 10 seconds)
3. Konfirmasikan perubahan aktif dengan memasukkan shell MySQL dan menjalankan perintah berikut:
show variables like '%slow%';
Versi di bawah 5.1.6:
-
Edit file /etc/my.cnf dengan editor teks favorit Andavi /etc/my.cnf
-
Tambahkan baris berikut di bawah bagian “[mysqld]”. Jangan ragu untuk memperbarui jalur ke file log ke apa pun yang Anda inginkan:
log-slow-queries=/var/log/mysql/slow-query.log
3. Aktifkan opsi tambahan sesuai kebutuhan. Berikut adalah contoh yang sama yang umum digunakan dari atas:
Setel jumlah waktu yang dibutuhkan kueri untuk dijalankan sebelum dicatat:
`long_query_time=20
(default is 10 seconds)`
Detail log untuk kueri yang diharapkan mengambil semua baris alih-alih menggunakan indeks:
`log-queries-not-using-indexes`
4. Mulai ulang layanan MySQL:
service mysqld restart
5. Konfirmasikan perubahan aktif dengan memasukkan shell MySQL dan menjalankan yang berikut:
show variables like '%slow%';
Pembaruan:1
Menurut dokumen MySQL, kesalahan #1193 terjadi saat Anda menggunakan kode yang salah untuk SQLSTATE.
Message: Unknown system variable %s
Dan, seperti yang Anda lihat di halaman yang sama, SQLSTATE 99003 tidak ditentukan.
lihat tautan ini:
http://dev.mysql.com/doc /refman/5.5/en/slow-query-log.html
http://dev.mysql.com/doc /refman/5.1/en/slow-query-log.html