PostgreSQL
psql, şemalar, roller, indeksler ve yedekleme.
Seviye 201 · 18 ders · 15 pratik lab
Dersler
Başlangıç
- PostgreSQL kurulumu ve psql ile bağlanmak: PostgreSQL'i laboratuvarında kurup psql aracıyla veritabanına bağlanmayı ve temel komutları kullanmayı öğrenirsin.
- PostgreSQL şemaları, psql meta komutları ve sistem kataloğu: Şemalarla nesneleri gruplamayı, psql’in \d komutlarıyla ve pg_catalog ile veritabanının içini keşfetmeyi öğrenirsin.
- PostgreSQL veritabanları, veri türleri ve SERIAL: PostgreSQL'de veritabanı oluşturmayı, sütunlar için uygun veri türlerini seçmeyi ve otomatik artan numara (SERIAL) kullanmayı öğrenirsin.
- PostgreSQL kısıtları ve yabancı anahtarlar: PostgreSQL'de kısıtlarla geçersiz verinin tabloya girmesini engellemeyi ve yabancı anahtarlarla tabloları tutarlı biçimde bağlamayı öğrenirsin.
- Kısa görev: bir mağazanın şemasını kur
Sorgular
- PostgreSQL'de ekleme, sorgulama, güncelleme, silme: PostgreSQL'de tabloya veri eklemeyi, sorgulamayı, güncellemeyi ve silmeyi, yanlışlıkla tüm satırları değiştirmeden yapmayı öğrenirsin.
- PostgreSQL ilişkileri ve birleştirmeleri: PostgreSQL'de tablolar arasındaki ilişkileri anlayıp birleştirme (join) ile birden çok tablodan tek sorguda veri çekmeyi öğrenirsin.
- PostgreSQL: toplamlar, GROUP BY ve HAVING: Satırları gruplayıp sayı, toplam ve ortalama hesaplamayı, grup sonuçlarını HAVING ile süzmeyi öğrenirsin.
- PostgreSQL alt sorguları ve küme işlemleri: Sorgu içinde sorgu yazmayı ve iki sorgunun sonucunu UNION, INTERSECT ile birleştirip karşılaştırmayı öğrenirsin.
- COPY ile veri içe ve dışa aktarmak
- PostgreSQL indeksleri ve sorgu planı: PostgreSQL'de indekslerin sorguları nasıl hızlandırdığını ve sorgu planını okuyarak bir sorgunun neden yavaş olduğunu görmeyi öğrenirsin.
- PostgreSQL işlemleri (transaction): PostgreSQL'de birbirine bağlı değişiklikleri ya hep birlikte kaydetmeyi ya hiç kaydetmemeyi sağlayan işlemleri (transaction) anlarsın.
- Kısa görev: sipariş verisinden rapor
Yönetim ve mantık
- PostgreSQL görünümleri, fonksiyonları ve tetikleyicileri: PostgreSQL'de sık kullanılan sorguları görünüm olarak saklamayı ve fonksiyon ile tetikleyicilerin veritabanında ne işe yaradığını öğrenirsin.
- PostgreSQL rolleri ve izinleri: PostgreSQL'de rol oluşturup her kullanıcıya yalnızca ihtiyacı olan izinleri vermeyi ve gereksiz yetkileri geri almayı öğrenirsin.
- postgresql.conf ve günlükler
- PostgreSQL yedek ve geri yükleme: PostgreSQL veritabanının yedeğini almayı ve onu geri yükleyerek yedeğin gerçekten işe yaradığını doğrulamayı öğrenirsin.
- Bitirme görevi: PostgreSQL ile sipariş veritabanı: Kurgusal bir şirket için PostgreSQL'de tablolar, kısıtlar, roller ve yedekle çalışan küçük bir sipariş veritabanı kurarsın.
Pratik lablar
- Mağaza şemasını kur: Ayrı bir şemada müşteri, ürün ve sipariş tablolarını kimlik sütunlarıyla oluştur.
- Eksik yabancı anahtarları ekle: Sahipsiz siparişleri bul, temizle ve ardından yabancı anahtarları doğrulayarak ekle.
- Kısıtı kesintisiz ekle: Büyük tabloya CHECK kısıtını önce NOT VALID ekleyip sonra ayrı adımda doğrula ve kilit süresini karşılaştır.
- CSV'yi COPY ile içe aktar: Kuzey Eczanesi'nin ilaç listesini \copy ile içe aktar ve satır sayısını kontrol et.
- Sorgu sonucunu dışa aktar: Aylık sipariş raporunu başlıklı ve noktalı virgül ayırıcılı CSV olarak dışa aktar.
- Hatalı satırları ara tabloyla ayıkla: Hatalı tarih ve fiyat içeren dosyayı önce metin ara tabloya yükle, temiz satırları aktar, hatalıları raporla.
- Kategori başına satış özeti çıkar: Kategori başına sipariş sayısı, ciro ve ortalama sepet tutarını tek sorguda hesapla.
- İki ayın müşterilerini EXCEPT ile karşılaştır: Geçen ay alışveriş yapıp bu ay yapmayan müşterileri EXCEPT ile bul.
- Yönetim için tek sorguluk rapor yaz: Yeni müşteri, dönen müşteri, ciro ve iade oranını tek sorguda veren yönetim raporunu hazırla.
- Sorgu planında indeks kullanımını gör: Bir indeks ekleyip EXPLAIN çıktısında sıralı taramanın indeks taramasına dönüştüğünü göster.
- Sipariş ve stok güncellemesini birlikte yap: Sipariş ekleme ve stok düşmeyi bir işlemde topla ve hata anında ikisinin de geri alındığını göster.
- Kullanılmayan indeksleri ayıkla: İstatistik görünümleriyle hiç kullanılmayan indeksleri bul, boyutlarını hesapla ve kaldırma planı yaz.
- Karmaşık sorguyu görünüme çevir: Sık kullanılan sipariş özet sorgusunu görünüm olarak tanımla ve uygulamaya yetkisini ver.
- updated_at sütununu tetikleyiciyle tut: Her güncellemede updated_at sütununu otomatik ayarlayan bir tetikleyici fonksiyon yaz.
- Görünüm üzerinden güvenli güncelleme: Kullanıcının yalnızca kendi şubesinin satırlarını değiştirebildiği WITH CHECK OPTION'lı görünüm kur.
Kurs hakkında
psql, şemalar, roller, indeksler ve yedekleme.
Ne öğreneceksin
- Başlangıç
- Sorgular
- Yönetim ve mantık
Ön koşullar
Aynı yolun 101 düzeyindeki kurslarını bitirmiş olmak ya da o konuları biliyor olmak yeterlidir.
Lab ortamı
Dersler, tarayıcında açılan sana özel bir Kali Linux terminalinde ve ona bağlı özel bir lab ağında geçer. Kurulum gerekmez.
Sık sorulan sorular
- Bu kurs benim düzeyime uygun mu?
- Kurs 201 düzeyindedir; daha düşük düzeydeki kursların konularını bildiğin varsayılır.
- Kurulum gerekir mi?
- Hayır. Her ders tarayıcında açılan sana özel bir lab ortamında geçer.
- Dersler nasıl işleniyor?
- Her ders 8 ile 10 adımdan ve bir kısa sınavdan oluşur. İlk adımlarda yazman gereken komut gösterilir, sonraki adımlarda yardım azalır; iki denemede takılırsan çözüm açılır.
- Ücretsiz deneyebilir miyim?
- Evet. Her kursun ilk üç dersi ücretsizdir.