Veritabanı Yönetimi: Tasarımdan Yedeklemeye Öğrenme Yolu
Beceri rehberi

Veritabanı Yönetimi: Tasarımdan Yedeklemeye Öğrenme Yolu

Hazırlayan: Mindset Institute EditörlüğüGüncellendi: 5 dk okuma

Veritabanı yönetimini adım adım öğrenin: veri modelleme, normalizasyon, indeksleme, yedekleme ve geri yükleme, yetkilendirme ve performans izleme.

Veritabanı yönetimi neleri kapsar?

Veritabanı yönetimi, bir kurumun verisini tutan sistemlerin doğru tasarlanmasını, hızlı çalışmasını, güvende olmasını ve bir arıza anında kayıpsız geri getirilebilmesini sağlama işidir. SQL ile sorgu yazmak bu işin yalnızca bir parçasıdır; veritabanı yöneticisi verinin nasıl saklandığı, kimin neye eriştiği ve sistemin yük altında nasıl davrandığıyla ilgilenir.

Bu beceri genellikle dört alana ayrılır: • Tasarım: Tabloların, ilişkilerin, anahtarların ve kısıtların kurulması. • Performans: İndeksleme, sorgu planlarını okuma ve kaynak kullanımını izleme. • Güvenilirlik: Yedekleme, geri yükleme, çoğaltma ve felaket kurtarma. • Güvenlik: Kullanıcı ve rol yönetimi, yetkilendirme, şifreleme ve erişim kayıtları.

Yazılım geliştiriciler daha çok tasarım ve performansa, sistem ve altyapı ekipleri güvenilirlik ve güvenliğe ağırlık verir; veritabanı yöneticisi dördünü birden bilir.

Başlamadan önce gereken temel bilgiler

Veritabanı yönetimine başlamadan önce sağlam bir SQL temeli gerekir: seçme, birleştirme, gruplama ve veri değiştirme komutlarını rahat yazabiliyor olmalısınız. SQL'i henüz öğrenmediyseniz SQL beceri sayfasından başlamanızı öneririz.

Bunun yanında işletim sistemi temelleri (dosya sistemi, servisler, kullanıcı izinleri), komut satırı kullanımı ve temel ağ kavramları işinizi kolaylaştırır. Veritabanı sunucusu sonuçta bir işletim sisteminde çalışan bir servistir ve sorunların bir kısmı disk, bellek ya da bağlantı katmanında ortaya çıkar.

Pratik bir başlangıç noktası, kendi bilgisayarınıza bir veritabanı sunucusu kurup her öğrendiğiniz konuyu orada denemektir. Bir şeyi bozup geri getirmek, örneğin bir tabloyu silip yedekten geri yüklemek, bu alanda okumaktan çok daha kalıcı bir öğrenme sağlar.

Adım adım veritabanı yönetimi öğrenme yolu

Aşağıdaki sıra, her adımı kendi bilgisayarınızda kurduğunuz bir veritabanı sunucusu üzerinde uygulayarak ilerlemek için tasarlanmıştır: • Kurulum ve yapılandırma: PostgreSQL ya da MySQL gibi bir sunucuyu kurun, yapılandırma dosyasını, bağlantı ayarlarını ve günlük kayıtlarını tanıyın. • Veri modelleme: Bir iş alanını (örneğin kütüphane ya da sipariş sistemi) varlıklar ve ilişkiler olarak çizin, birincil ve yabancı anahtarları belirleyin. • Normalizasyon: Tekrarlanan veriyi ayrı tablolara bölmeyi ve hangi durumda bilinçli olarak tekrar etmenin performans için kabul edilebilir olduğunu öğrenin. • Kısıtlar ve işlemler: NOT NULL, UNIQUE, CHECK kısıtları; işlem (transaction) mantığı ve eşzamanlı erişimde kilitlenme. • İndeksleme: İndeksin nasıl çalıştığını, sorgu planını okumayı ve gereksiz indeksin yazma işlemlerini nasıl yavaşlattığını görmek. • Yedekleme ve geri yükleme: Tam ve artımlı yedek, zamana göre geri dönüş ve en önemlisi geri yükleme testi. • Güvenlik: Rol tabanlı yetkilendirme, en az yetki ilkesi, bağlantı şifrelemesi ve hassas verinin korunması. • İzleme ve bakım: Yavaş sorgu kayıtları, disk büyümesi, istatistik güncelleme ve düzenli bakım görevleri. • Ölçekleme ve bulut: Çoğaltma, okuma kopyaları ve yönetilen bulut veritabanı hizmetleri.

İş örneği: yavaşlayan bir rapor sorgusu

Bir şirketin müşteri hizmetleri ekranı, müşteri telefon numarasıyla arandığında giderek yavaş açılmaya başlıyor. Tablo büyüdükçe sorun ağırlaşıyor. Veritabanı yöneticisi önce yavaş sorgu kayıtlarına bakıyor ve ilgili sorguyu buluyor. Sorgu planını incelediğinde veritabanının telefon numarasını bulmak için tüm müşteri tablosunu baştan sona taradığını görüyor.

Telefon numarası sütununa bir indeks eklenmesi gerekiyor, ama doğrudan canlı sisteme eklemek yerine önce test ortamında deniyor: indeks sonrası plan değişiyor ve sorgu tam tarama yerine indeksi kullanıyor. Ayrıca bazı kayıtlarda numaraların boşluklu, bazılarında boşluksuz yazıldığını fark ediyor; bu da uygulamanın aramayı bir fonksiyonla yaptığını ve indeksin kullanılmasını engellediğini gösteriyor. Uygulama ekibiyle numaraların tek biçimde saklanması kararlaştırılıyor.

İndeks, yoğunluğun düşük olduğu bir bakım penceresinde ve tabloyu kilitlemeyen bir yöntemle ekleniyor. Sonrasında yöneticinin ilk işi, değişikliğin diğer sorguları ve yazma hızını olumsuz etkileyip etkilemediğini izlemek oluyor.

Yedeklemede en çok unutulan adım: geri yükleme testi

Yedek almak, verinin güvende olduğu anlamına gelmez; yalnızca geri yüklenebildiği kanıtlanmış yedek güvenilirdir. Pek çok ekip yedeklerin düzenli alındığını görür ama onları hiç geri yüklemez. Arıza günü yedeğin bozuk, eksik ya da beklenenden çok daha uzun sürede geri yüklenebildiği ortaya çıkar.

İyi bir yedekleme düzeni şu soruları cevaplar: • En fazla ne kadarlık veri kaybını kabul edebiliriz? Bu cevap yedekleme sıklığını belirler. • Sistem ne kadar sürede geri gelmeli? Bu cevap yedekleme yöntemini ve altyapıyı belirler. • Yedekler canlı sistemden ayrı bir konumda mı saklanıyor? • Geri yükleme düzenli aralıklarla test ortamında deneniyor ve süresi ölçülüyor mu?

Bu soruların cevapları teknik değil iş kararıdır ve iş birimleriyle birlikte yazılmalıdır.

İlişkisel ve NoSQL veritabanları: hangisini öğrenmeli?

İlişkisel veritabanları (PostgreSQL, MySQL, Microsoft SQL Server, Oracle) verinin tablolar ve ilişkilerle yapılandırıldığı, tutarlılığın öncelikli olduğu sistemlerde standarttır. Finans, sipariş, stok ve insan kaynakları kayıtları çoğunlukla bu tür sistemlerde tutulur.

NoSQL veritabanları ise belge, anahtar değer, geniş sütun ya da grafik yapılarıyla esnek şema ve yatay ölçekleme gerektiren durumlarda öne çıkar. MongoDB belge tabanlı, Redis anahtar değer tabanlı sistemlere örnektir. Öğrenmeye ilişkisel modelle başlamak önerilir; veri modelleme, işlem ve indeks kavramları NoSQL sistemlerini anlamak için de temel oluşturur.

Sık hatalar ve Mindset programı

Veritabanı yönetiminde en pahalı hatalar şunlardır: geri yükleme testi yapılmayan yedekler, uygulamalara yönetici yetkisiyle bağlanmak, her sütuna indeks eklemek, değişiklikleri doğrudan canlı sistemde denemek, disk büyümesini izlememek ve şema değişikliklerini kayıt altına almamak.

Veritabanı Yönetim Sistemleri ve Uygulamaları programı; ilişkisel veritabanları ve SQL, NoSQL veritabanları, veri modelleme ve tasarım, veritabanı yönetimi ve optimizasyon, güvenlik ve yetkilendirme ile bulut tabanlı veritabanı çözümleri modülleriyle bu sayfadaki öğrenme yolunu kapsar. SQL temelini önce sağlamlaştırmak isteyenler için SQL ile Programlama Eğitimi uygun bir başlangıçtır.

İlgili Mindset programı

Veritabanı Yönetim Sistemleri ve Uygulamaları

Sık sorulanlar

Sık sorulan sorular

Veritabanı yöneticisi ile veri mühendisi aynı şey mi?

Değil. Veritabanı yöneticisi, uygulamaların kullandığı veritabanlarının sağlıklı, hızlı ve güvenli çalışmasından sorumludur. Veri mühendisi ise veriyi farklı kaynaklardan toplayıp analiz için hazırlayan veri akışlarını ve analitik platformları kurar. İki rol SQL ve veri modellemede kesişir ama odakları farklıdır.

Bulut veritabanları yönetim ihtiyacını ortadan kaldırıyor mu?

Kısmen. Yönetilen bulut hizmetleri kurulum, yama, donanım ve otomatik yedekleme gibi işleri üstlenir. Ancak veri modeli, indeksleme, sorgu performansı, yetkilendirme, maliyet kontrolü ve geri yükleme senaryolarının sorumluluğu kullanıcıda kalır. Bu yüzden veritabanı bilgisi bulutta da gereklidir, yalnızca odağı değişir.

Hangi veritabanı sistemiyle başlamalıyım?

Hedeflediğiniz kurumda hangisi kullanılıyorsa onunla başlamak en pratik yoldur. Belirli bir hedef yoksa PostgreSQL ücretsiz, yaygın ve standarda yakın olduğu için iyi bir seçimdir. Temel kavramlar sistemler arasında büyük ölçüde ortaktır; farklar daha çok yönetim araçlarında ve ileri özelliklerdedir.

Normalizasyon her zaman yapılmalı mı?

İşlemsel sistemlerde normalizasyon, verinin tutarlı kalması için temel kuraldır. Raporlama ve analiz için kurulan yapılarda ise sorguları hızlandırmak amacıyla bilinçli olarak tekrar eden veri tutulabilir. Önemli olan bu kararın gerekçesinin bilinmesi ve tekrar eden verinin nasıl güncel tutulacağının planlanmasıdır.

Veritabanı Yönetimi Nasıl Öğrenilir? Adım Adım Yol