MySQL FLUSH Komutları
MySQL FLUSH Komutları
Hosting dünyasında, MySQL, dinamik web siteleri, e-ticaret mağazaları, içerik yönetim sistemleri (CMS) ve SaaS platformlarını desteklemek için en kritik bileşenlerden biri olmaya devam ediyor. İster bir paylaşımlı hosting kümesi, bir VPS altyapısı veya kurumsal müşteriler için dedike sunucular yönetiyor olun, MySQL’in iç işlemleri üzerinde kontrol sahibi olmak esastır.
Sıklıkla gözden kaçan ancak güçlü bir araç, FLUSH komutudur — ayrıcalıkları yeniden yüklemenizi, günlükleri temizlemenizi, durumları sıfırlamanızı ve sunucuyu yeniden başlatmadan tutarlılığı sağlamanızı sağlayan bir dizi yönetim SQL ifadesidir.
MySQL’de FLUSH Nedir?
FLUSH ifadesi şunlar için kullanılır:
İçsel önbellekleri temizlemek
Yapılandırma dosyalarını yeniden yüklemek (örneğin, ayrıcalık tabloları)
Durum bilgilerini sıfırlamak
MySQL’in tamponlanmış verileri diske yazmasını zorlamak
Sadece RELOAD ayrıcalığına (veya daha yüksek, örneğin SUPER) sahip kullanıcılar çoğu FLUSH işlemini gerçekleştirebilir.
Yaygın FLUSH Komutları
1. 🔐 FLUSH PRIVILEGES
MySQL veritabanındaki grant tablolarından kullanıcı ayrıcalıklarını yeniden yükler:
FLUSH PRIVILEGES;Ne zaman kullanılmalı:
mysql.user veya diğer grant tablolarını manuel olarak düzenledikten sonra.
Kullanıcı erişimini doğrudan UPDATE ifadeleri ile GRANT yerine değiştirdiğinizde.
2. FLUSH TABLES
Tüm açık tabloları kapatır ve yeniden açılmalarını zorlar. Dosya sistemi bakımı veya yedeklemeleri için faydalıdır.
FLUSH TABLES;Ayrıca belirli tabloları da flush edebilirsiniz:
FLUSH TABLES table_name [, table_name] ...;Ne zaman kullanılmalı:
Dış araçlarla yedekleme yapmadan önce (örneğin, mysqldump –single-transaction).
Tablo önbelleğini aşırı yükleyebilecek büyük ölçekli yazımlardan sonra.
3. FLUSH QUERY CACHE
Sorgu önbelleğinden tüm sorgu sonuçlarını kaldırır (eğer etkinse):
FLUSH QUERY CACHE;Not: Sorgu önbelleği MySQL 8.0’da kullanım dışı bırakılmış ve kaldırılmıştır.
4. FLUSH LOGS
Tüm günlük dosyalarını (genel günlük, hata günlük, ikili günlük, relay günlük) kapatır ve yeniden açar.
FLUSH LOGS;Veya belirli bir türü flush edebilirsiniz:
FLUSH BINARY LOGS;FLUSH ERROR LOGS;FLUSH ENGINE LOGS;FLUSH SLOW LOGS;Ne zaman kullanılmalı:
Günlük döngüsünden sonra
Günlükler taşındığında veya arşivlendiğinde
Hata ayıklama veya uyum için günlükleri sıfırlamak amacıyla
5. FLUSH HOSTS
Başarısız istemci bağlantılarının ana bilgisayar önbelleğini sıfırlar.
FLUSH HOSTS;Ne zaman kullanılmalı:
Aşağıdaki hatayı aldığınızda:
Host 'xxx' is blocked because of many connection errors
6. FLUSH STATUS
Çoğu durum değişkenini sıfıra döndürür (global sayaçları etkilemez, örneğin Uptime).
FLUSH STATUS;Ne zaman kullanılmalı:
Karşılaştırma veya performans testi yapmadan önce.
Temiz metrikler elde etmek için SHOW STATUS ile.
7. FLUSH TABLES WITH READ LOCK
Tüm tabloları flush eder ve kilitler, diğer oturumların yazmasını engeller.
FLUSH TABLES WITH READ LOCK;Ne zaman kullanılmalı:
Tutarlı anlık yedeklemeler için (örneğin, LVM veya dosya kopyalama araçları ile).
Önemli: Her zaman
UNLOCK TABLES;ile manuel olarak kilidi açın
8. FLUSH DES_KEY_FILE
Eski DES_ENCRYPT()/DES_DECRYPT() (miras) için kullanılan DES anahtar dosyalarını yeniden yükler.
FLUSH DES_KEY_FILE;9. FLUSH USER_RESOURCES
Kullanıcı başına kaynak limitlerini (örneğin, MAX_QUERIES_PER_HOUR) sıfırlar.
FLUSH USER_RESOURCES;Ne zaman kullanılmalı:
Kaynak sınırlı kullanıcılar için döngü ortası sıfırlama.
Kullanım Dışı Bırakılan/Kaldırılan Komutlar
FLUSH QUERY CACHE, MySQL 8.0’da kaldırılmıştır.
FLUSH DES_KEY_FILE mirasdır.
MySQL 8.0’da RESET PERSIST gibi daha yeni alternatifleri göz önünde bulundurun.
Gerekli İzinler
Çoğu FLUSH işlemi için gereklidir:
RELOAD ayrıcalığı
SUPER veya SYSTEM_VARIABLES_ADMIN (MySQL 8+’de hassas işlemler için)
Örnek:
GRANT RELOAD ON *.* TO 'admin'@'localhost';Sonuç
FLUSH komut ailesi, MySQL’de yönetim kontrolü için esastır. İster ayrıcalıkları, günlükleri veya önbellek durumlarını yönetiyor olun, FLUSH kullanma şeklinizi ve ne zaman kullanacağınızı anlamak, sunucu performansını ve güvenilirliğini yeniden başlatmaya gerek kalmadan korumaya yardımcı olur. Bunu, özellikle üretim ortamlarında uygun ayrıcalıklarla dikkatli bir şekilde kullanın.


