Arama Yap Mesaj Gönder
Biz Sizi Arayalım
+90
X

Lütfen Ülke (Bölge) Seçiniz

Türkiye (Türkçe)Türkiye (Türkçe) Almanya (German)Almanya (German) Worldwide (English)Worldwide (English)
X

Lütfen Para Birimi Seçiniz

Türk Lirası $ US Dollar Euro
X

Lütfen Ülke (Bölge) Seçiniz

Türkiye (Türkçe)Türkiye (Türkçe) Almanya (German)Almanya (German) Worldwide (English)Worldwide (English)
X

Lütfen Para Birimi Seçiniz

Türk Lirası $ US Dollar Euro

Bilgi Bankası

Anasayfa Bilgi Bankası Genel MySQL En Çok İşlem Yapan SQL Sorgus...

Bize Ulaşın

Konum Halkalı merkez mahallesi fatih cd ozgur apt no 46 , Küçükçekmece , İstanbul , 34303 , TR

MySQL En Çok İşlem Yapan SQL Sorgusu Nasıl Bulunur?

mysqladmin processlist komutu, MySQL/MariaDB veritabanında o an aktif olarak çalışan sorguları görmek için kullanılır. Bu komut, özellikle yüksek CPU veya disk kullanımı gibi durumlarda hangi sorguların sistem kaynaklarını zorladığını anlamak için idealdir.

Aşağıdaki komutla başlıyoruz:

mysqladmin -u root -p processlist

Komutu çalıştırdıktan sonra şifre istenir ve ardından çalışan tüm işlemleri listeler:

Çıktı Örneği:

+----+------+-----------+----------+---------+------+-------+------------------+
| Id | User | Host      | db       | Command | Time | State | Info             |
+----+------+-----------+----------+---------+------+-------+------------------+
| 12 | user | localhost | mydb     | Query   | 50   | Sending data | SELECT * FROM large_table |
| 13 | user | localhost | mydb     | Sleep   | 20   |       | NULL             |

Burada dikkat edilmesi gereken sütunlar:

  • Time: Sorgunun ne kadar süredir çalıştığını gösterir. Süresi yüksek olanlar sistemde yük oluşturabilir.

  • Command: "Query" olanlar aktif sorgulardır. "Sleep" olanlar bağlantısı açık ama işlem yapmayan oturumlardır.

  • Info: Çalışan SQL sorgusunun tamamı burada görünür.

Yüksek Kaynak Kullanan Sorguları Belirlemek İçin:

processlist çıktısını filtrelemek için grep ve awk kullanılabilir:

mysqladmin -u root -p processlist | grep -i select

Yalnızca uzun süre çalışanları görmek için:

mysql -u root -p -e "SELECT * FROM information_schema.processlist WHERE TIME > 30 ORDER BY TIME DESC;"

Bu komutla 30 saniyeden uzun süredir çalışan tüm sorguları görebilirsiniz.

Ekstra Detaylı İzleme İçin:

Periyodik takip yapmak için:

watch -n 2 'mysqladmin -u root -p processlist'

Bu komut her 2 saniyede bir çalışan işlemleri tekrar gösterir.

Yüksek Yoğunluklu Sorguları Durdurmak İçin:

Bazı sorgular çok uzun sürebilir ve sistemi kilitleyebilir. Sorguyu sonlandırmak için:

KILL 12;

Buradaki 12, Id sütunundaki değerdir.

Bu yöntemlerle MySQL/MariaDB sunucunuzda sistem kaynaklarını tüketen sorguları belirleyip müdahale edebilirsiniz. Özellikle büyük veritabanlarında, canlı performans izleme açısından processlist komutu oldukça değerlidir.

Aradığınız Bilgiyi Bulamıyor musunuz?

Bilgi bankasını detaylı olarak incelediniz, fakat ihtiyacınız olan bilgiyi bulamıyorsanız,

Bir Destek Talebi Oluşturun.
Faydalı Buldunuz mu?
(3725 defa görüntülendi. / 13 kişi faydalı buldu.)

Ürün ve hizmetlerimiz hakkında daha detaylı bilgi almak için hemen arayın.

Top