GoDaddy Bantuan

Kami berusaha sebaik mungkin menerjemahkan halaman ini untuk Anda. Halaman juga tersedia dalam bahasa Inggris.

Tinjau kueri MySQL yang lambat

Anda telah mengaktifkan pembuatan log kueri yang lambat dan sekarang memiliki log untuk ditinjau. Jika Anda belum mengaktifkan pencatatan, Anda dapat menemukan langkah-langkahnya di sini .

Menganalisis log

Lokasi log:
/var/log/slow-queries.log
CATATAN: Jika Anda tidak menemukan log di lokasi ini, verifikasi entri di my.cnf Anda dan bahwa MySQL telah di-restart setelah perubahan dilakukan.
Format:
# Waktu: 210905 6:33:11 # Pengguna @ Host: dbuser [dbname] @ hostname [1.2.3.4] # Query_time: 12.116250 Lock_time: 0.000035 Rows_sent: 0 Rows_examined: 201565 use dbname; ATUR cap waktu = 1409898791; ... KUERI LAMBAT DI SINI ...

Log bisa sangat banyak bila Anda memiliki lusinan jika bukan ratusan entri dalam format di atas. Agar log lebih mudah dibaca, gunakan mysqldumpslow untuk mengurai log.

mysqldumpslow -r -a /var/log/mysql/mysqld.slow.log
Keluaran akan berisi info penting seperti waktu , baris , dan kueri .
Hitung: 2 Waktu = 20,54 d (41 dtk) Kunci = 0,02 dtk (0 dtk) Baris = 12547802 (0), dbuser [dbuser] @localhost SELECT * FROM db_exp_table WHERE site_user_id = '214380' ORDER BY site_id DESC LIMIT 0,2 Hitung: 1 Waktu = 21,74d (21dtk) Kunci = 0,01dtk (0dtk) Baris = 12547802 (0), dbuser [dbuser] @localhost SELECT * FROM db_exp_table WHERE site_user_id = '214380' ORDER BY site_id DESC LIMIT 0,2 Hitung: 1 Kali = 23,86s (23s) Kunci = 0,20s (0s) Baris = 12547802 (0), dbuser [dbuser] @localhost PILIH * DARI db_exp_table WHERE site_user_id = '214380' ORDER OLEH site_id DESC LIMIT 0,2

Melihat contoh di atas, kami memiliki 1 kueri yang memerlukan waktu 20-24 detik untuk dijalankan. Hal ini menyebabkan masalah pada situs Anda, mulai dari waktu muat yang lambat hingga kesalahan waktu tunggu (pemutaran tanpa akhir). Kueri tersebut memeriksa 12.547.802 baris. Kueri besar (yakni pilih *) yang dijalankan di atas tabel dengan lebih dari 12 juta baris kemungkinan akan menghasilkan pengalaman pengguna yang buruk. Mengoptimalkan kueri (yakni, memilih "tabel kopi") atau mengurangi baris yang diperiksa (yakni mengarsipkan data lama) akan mempercepat kueri.

Jika file log besar, jalankan mysqldumpslow dan simpan hasilnya ke file. Ini akan memudahkan peninjauan dengan alat bantu manipulasi file lainnya seperti grep atau find .

mysqldumpslow -r -a /var/log/slow-queries.log > slow.log.parsed

Langkah-Langkah Berikutnya

Setelah meninjau log kueri yang lambat, Anda akan mendapatkan gambaran tentang kueri bermasalah yang perlu diperbaiki. Jika situs Anda masih berjalan lambat dengan MySQL yang menggunakan sumber daya tinggi, Anda mungkin perlu mengoptimalkan MySQL untuk lebih memanfaatkan sumber daya server Anda.

Setelah Anda selesai dengan log, pastikan untuk menonaktifkan pembuatan log kueri MySQL yang lambat . Membiarkan pencatatan diaktifkan akan menghabiskan sumber daya MySQL yang tidak diperlukan dan berpotensi mengisi disk Anda (dengan kueri yang buruk).

Layanan Hosting GoDaddy

Pakar server kami dapat mengaktifkan / menonaktifkan pembuatan log kueri MySQL yang lambat dan mengoptimalkan MySQL. Untuk mempelajari lebih lanjut tentang layanan ini, Pemandu GoDaddy kami siap membantu.

Info Selengkapnya

Untuk mempelajari selengkapnya tentang layanan hosting yang GoDaddy tawarkan, lihat kamiMenu Layanan Hosting .