PostgreSQL Yetkili Roller ve Güvensiz pg_hba Kuralları
Superuser ve yüksek yetkili rolleri ile 'trust' ya da şifresiz kimlik doğrulama kurallarını listeler. Güvenlik denetimi ve hardening için hızlı bir başlangıçtır.
SELECT rolname, rolsuper, rolcreaterole, rolcreatedb, rolreplication, rolbypassrls, rolcanlogin, rolvaliduntil
FROM pg_roles
WHERE rolsuper OR rolcreaterole OR rolreplication OR rolbypassrls
ORDER BY rolsuper DESC, rolname;
SELECT line_number, type, database, user_name, address, auth_method
FROM pg_hba_file_rules
WHERE auth_method IN ('trust','password','md5')
ORDER BY line_number;`trust` kuralları üretimde olmamalıdır; `md5` yerine `scram-sha-256` tercih edin.
- 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: 10) 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 POSTGRESQL Teşhis Scriptleri
Tümünü Gör (100)PostgreSQL'de Uzun Süren Sorguları ve Idle in Transaction Oturumlarını Bulma
Bir dakikadan uzun süredir çalışan sorguları, bekleme olaylarını ve vacuum'u engelleyen idle in transaction oturumlarını listeler. Performans olaylarında ilk bakılacak script'tir.
PostgreSQL Kilit Zinciri: Kim Kimi Blokluyor?
pg_blocking_pids ile bloklanan ve bloklayan oturumları, sorgularıyla ve bekleme süreleriyle eşleştirir. Zincirin kök nedenini saniyeler içinde gösterir.
PostgreSQL Dead Tuple, Bloat ve Autovacuum Durumu Kontrolü
Tablo bazında dead tuple oranını ve son vacuum/analyze zamanlarını gösterir. Autovacuum ayarının yetersiz kaldığı tabloları tespit etmenizi sağlar.
PostgreSQL'de Kullanılmayan İndeksleri Bulma
Hiç taranmamış, unique veya primary key olmayan indeksleri boyutlarıyla listeler. Gereksiz yazma maliyetini ve disk alanını geri kazanmak için temizlik adayı çıkarır.