Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Bagaimana cara mengaktifkan log kueri lambat MySQL?

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:

  1. Edit file /etc/my.cnf dengan editor teks favorit Andavi /etc/my.cnf

  2. 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



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana saya bisa mengatur jumlah maksimal proses atau utas MySQL?

  2. Pemetaan Hubungan Hibernasi/Percepat penyisipan batch

  3. MySQL:Mendapatkan nomor baris (peringkat) untuk baris tertentu

  4. Bagaimana cara membuat beberapa LEFT JOIN dengan ATAU sepenuhnya menggunakan indeks komposit? (bagian 2)

  5. Apakah ada cara untuk memeriksa kinerja Pengindeksan mysql?