MySQL'de Diskte Geçici Tablo Oluşturan Sorgular
Geçici tabloların diske taşma oranını ve bunu yapan sorguları gösterir. tmp_table_size ve sorgu optimizasyonu için ipucu verir.
SELECT variable_name, variable_value
FROM performance_schema.global_status
WHERE variable_name IN ('Created_tmp_tables','Created_tmp_disk_tables','Created_tmp_files');
SELECT db, LEFT(query, 150) AS query, exec_count, tmp_tables, disk_tmp_tables
FROM sys.statements_with_temp_tables
WHERE disk_tmp_tables > 0
ORDER BY disk_tmp_tables DESC
LIMIT 20;Üretim ortamında çalıştırmadan önce test ortamında doğrulayın. Salt okunur teşhis sorgusudur; sistem kilitlerine yol açmaz.
- Bu script salt okunur (read-only) teşhis için tasarlanmıştır; doğrudan veri veya şema değişikliği yapmaz.
- Ağır yük altındaki üretim sunucularında çalıştırmadan önce hedef veritabanı sürümünü (Min. Sürüm: 5.7) doğrulayın.
- İlişkili oturumu sonlandırma veya indeks silme gibi yazma etkili aksiyonlar için notlar bölümündeki komutları temkinli uygulayın.
Diğer MYSQL Teşhis Scriptleri
Tümünü Gör (100)MySQL'de Uzun Süren Sorguları Bulma
Processlist üzerinden 60 saniyeden uzun süren aktif sorguları listeler. Yavaşlama ve kilitlenme olaylarında hızlı teşhis sağlar.
MySQL InnoDB Kilit Beklemelerini ve Bloklayan Sorguyu Bulma
sys şeması ile bekleyen ve bloklayan oturumları, kilit modlarıyla birlikte gösterir. Hangi işlemin hangisini beklettiğini tek sorguda çözer.
MySQL'de En Büyük Tabloları ve Disk Kullanımını Listeleme
Veri, indeks ve boş alan boyutlarını tablo bazında sıralar. Kapasite planlaması ve arşivleme kararları için temel veridir.
MySQL Kullanılmayan İndeksleri Tespit Etme
sys.schema_unused_indexes ile hiç kullanılmamış indeksleri listeler. Yazma performansını düşüren gereksiz indeksleri güvenle temizlemeye yardımcı olur.