Skip to main content

Command Palette

Search for a command to run...

Veritabanı Dokümantasyonu: Neden Sürekli Ertelenir ve Nasıl Yapılır?

Published
2 min read
S

I’m a passionate software engineer specializing in SQL change management, database security, and DevOps automation. With over 17 years of experience in the banking sector, I focus on building tools and processes that make database deployments safer, more auditable, and automated.

As the creator of SQL Change Guard, I develop solutions that use risk scoring and AI-powered code analysis to detect dangerous SQL scripts before they reach production. I’m dedicated to helping teams minimize downtime and data loss through smarter change governance.

When I’m not coding, I enjoy sharing insights about secure development practices, WPF desktop applications, and integrating modern CI/CD pipelines.

Feel free to connect or reach out at info@sqlchangeguard.com

Her DBA dokümantasyonun önemli olduğunu bilir. Ama çoğu veritabanı ya hiç belgelenmemiş ya da yıllarca güncellenmemiş belgelerle yönetiliyor. Neden böyle?

Ertelemenin Gerçek Sebebi "Zaman yok" en yaygın gerekçe. Ama bu tam doğru değil. Gerçek şu: dokümantasyon anlık hiçbir sorunu çözmüyor. Bugün belgeleme yapmazsanız bugün hiçbir şey değişmez. Bu yüzden acil işlerin arkasında sürekli bekler. Oysa belgelenmemiş bir veritabanının maliyeti zamanla birikir. Yeni gelen DBA sistemi anlamak için haftalar harcar. Bir sorun çıktığında neyin ne olduğunu bulmak saatler alır. Ekipten biri ayrıldığında bilgi onunla birlikte gider.

Ne Belgelenmeli? Veritabanı mimarisi Kaç veritabanı var, aralarındaki ilişki nedir, hangi uygulama hangisine bağlanıyor? Kritik nesneler Hangi tablolar iş açısından kritik? Hangi stored procedure'ler hangi iş sürecini yönetiyor? Hangi job'lar ne zaman çalışıyor, ne yapıyor? Bağımlılıklar Hangi uygulama hangi veritabanına bağlanıyor? Hangi stored procedure hangi tabloları kullanıyor? Dış servis bağlantıları var mı? Standart olmayan yapılar Her veritabanında "bu neden böyle yapılmış?" diye düşündüren yerler vardır. Bunları belgelemek gelecekteki geliştirici için inanılmaz değerli. Bilinen sorunlar ve geçici çözümler "Şu job bazen hata veriyor, manuel tetiklemek gerekiyor" gibi geçici çözümler mutlaka belgelenmeli. Aksi halde her yeni kişi aynı sorunu sıfırdan keşfeder.

Pratik Başlangıç: Otomatik Belgeleme Sıfırdan belge yazmak yerine var olan yapıyı otomatik sorgulamakla başlayın. sql-- Veritabanındaki tüm tabloları ve kolon sayılarını listele SELECT t.name AS TabloAdi, COUNT(c.column_id) AS KolonSayisi, MAX(p.rows) AS TahminiSatirSayisi FROM sys.tables t JOIN sys.columns c ON t.object_id = c.object_id JOIN sys.partitions p ON t.object_id = p.object_id AND p.index_id IN (0,1) GROUP BY t.name ORDER BY MAX(p.rows) DESC; sql-- Stored procedure'leri ve son değişiklik tarihlerini listele SELECT name AS ProcedureAdi, create_date AS OlusturmaTarihi, modify_date AS SonDegisiklikTarihi FROM sys.procedures ORDER BY modify_date DESC; Bu sorgular başlangıç noktası. Çıktıları bir belgeye aktarın ve üzerine açıklamalar ekleyin.

Değişiklik Yönetimiyle Entegrasyon En pratik dokümantasyon yaklaşımı değişiklik süreciyle entegre çalışmak. Her değişiklik yapıldığında o nesnenin belgesi de güncellenir. Bu ayrı bir iş yükü değil, değişiklik sürecinin bir parçası haline gelir. "Tabloyu değiştirdim" demek "tabloyu değiştirdim ve belgesini güncelledim" anlamına gelir. Bu yaklaşımla dokümantasyon sürekli güncel kalır ve bakımı yük olmaktan çıkar.

Sonuç Dokümantasyon bugün sizi kurtarmaz. Ama altı ay sonra, bir kriz anında, ya da yeni bir ekip üyesi geldiğinde inanılmaz değer taşır. Küçük adımlarla başlamak büyük bir belge hazırlamaktan çok daha sürdürülebilir. Detaylı bilgi için: sqlchangeguard.com

More from this blog

S

SQL Change Guard

81 posts