Bu makalede Windows işletim sistemine sahip bir sunucumuza PostgreSQL kurulumundan bahsedeceğim. Açık kaynak kodlu ve ücretsiz bir veri tabanı yönetim sistemi olan PostgreSQL Windows, Linux, macOS gibi bir çok farklı işletim sisteminde çalışabilir. Backup işlemlerini pg_dump, restore işlemlerini pg_restore ile gerçekleştirebilirsiniz. İlk olarak yapmamız gereken PostgreSQL ‘in https://www.postgresql.org/dowload web sitesinden indirme işlemini gerçekleştiriyoruz. Görsel – 1 Kurulum dosyasını çalıştırıyoruz. Görsel – 2 PostgreSQL yükleyecek olduğumuz dizini seçiyoruz. Görsel – 3 PostgreSQL ile birlikte kurulumu gerçekleştirilecek bileşenleri seçiyoruz. Görsel – 4 Veri tabanı Varsayılan SuperUser kullanıcısı olan “postgres” için parola belirliyoruz. Görsel – 5 Port belirleme adımın sizin konfigürasyonunuza göre değiştirebilirsiniz ancak varsayılan port “5432” olduğu için ben bu şekilde devam ediyorum. Görsel – 7 Devamında öncelikle bölge sonrasında kurulum öncesi son kontroller sağlayarak kurulumu başlatıyoruz ve tamamlıyoruz. Görsel – 7 Görsel – 8 Görsel – 9 Görsel – 10 Evet PostgreSQL servis kurulumlarımız tamamlandı. Şimdi de pgAdminin kurulumunu yapmamız gerekiyor […]
Bu makalede SQL Server Management Studio’dan ODBC sürücüsünü kullanarak Postgresql’e bağlanma işlemini ele alacağız. Dış veri kaynaklarına bağlanmamız için oluşturulan protokol ODBC protokolüdür. Bu protokol sql server haricinde diğer sunucularda verilere ulaşmamızı sağlayan bir Microsoft sql server aracıdır. PostgreSQL gibi farklı veri kaynaklarına karşı komutları çalıştırabilir ve bunları SQL Server veritabanımızla birleştirebiliriz. Postgresql’den veri almak için linked server altında bulunan provider sekmesinde MSDASQL OLEDB sağlayıcısının aşağıdaki seçenekteki işleme izin ver seçeneğinin aktif edilmesi lazım. Bu kısımdan Allow inprocess seçeneğinin aktif edilmesi gerekmektedir. Şimdi kurulum işlemlerine başlayalım. İlk olarak sunucumuzda Postgresql ODBC sürücüsü olmadığı için indirip kurulum işlemlerine geçiyoruz. Postgresql ODBC sürücüsü olup olmadığını kontrol etmek için aşağıdaki yollar izlenir. Burada ODBC Data Sources(64-bit) seçeneğine tıklanır. System DNS kısmından add’e tıklıyoruz. Create new data source kısmında postgresql odbc sürücünün olmadığını görülüyor bunun için ilk başta postgresql odbc sürücüsü indirilir. https://www.postgresql.org/ftp/odbc/versions/msi Postgresql resmi sayfasından ilgili sürücü indirilir. Daha sonra bu sürücüyü sunucumuza […]
PostgreSQL veritabanını büyük sistemlerde yük altında kullanmaya başlayınca performansını izlemek ve tuning yapmak kaçınılmazdır. Ancak, PostgreSQL’de performansı izlemek için standart kurulum ile gelen özellikler yeterli değildir. Oracle’de bulunan AWR raporları gibi, sistemi en ince detayına kadar incelemek gerekebilir. Bu ihtiyaç için PostgreSQL için geliştirilen pg_profile extension’ı bulunmaktadır. Veritabanı iş yüklerini ve profilini çıkarabilmek için pg_profile aynı Oracle’de olduğu gibi snapshot’lar ve bu snapshot’lara üzerinden raporlar sunar. Bu yazıda pg_profile’ı nasıl kurup rapor alabileceğimizden bahsedeceğiz. Başka bir yazıda ise rapor incelemesi yapıp, olası tuning ihtimallerini değerlendireceğiz. Extension’a ait github sayfası : pg_profile pg_profile extension’ı kütüphane dosyası kullanmaz, bu yüzeden $PGHOME/lib altında *.so dosyası bulunmaz. Sadece veritabanında extension oluşturularak kullanılabilir. Github sayfasından PostgreSQL sürümüne uygun extension indirilerek sunucuya kopyalanır, sonrasında aşağıdaki gibi kurulur. sudo tar xzf pg_profile–4.2.tar.gz –directory $(pg_config –sharedir)/extension Extension oluşturma: postgres=# CREATE EXTENSION dblink; postgres=# CREATE EXTENSION pg_stat_statements; postgres=# CREATE SCHEMA profile; postgres=# CREATE EXTENSION pg_profile SCHEMA profile; Kullanmaya hazırız. […]
PostgreSQL veritabanında veritabanı değişikliklerinin yazıldığı dosyalara WAL (Write Ahead Log) ismi verilir. Birçok veritabanında farklı adlarda da olsa aynı yapı bulunmaktadır. Veritabanında yazma yükü fazla ise WAL dosyaları çok sık olarak yeni dosyaya geçmektedir (WAL Switch). Bu durum veritabanı performansına olumsuz etki yapar. PostgreSQL veritabanında WAL dosya büyüklükleri varsayılan olarak 16M olarak tanımlanmıştır. Bu günümüz iş yüklerini dikkate aldığımızda hayli küçük kalmaktadır. Bu yazıda WAL dosya boyutlarını nasıl değiştirebileceğimizden bahsedeceğiz.
Bu yazıda PostgreSQL’de WAL dosyalarından, veritabanında çalıştırılmış SQL’leri bind değerleri ile birlikte nasıl elde edebileceğimizi inceleyeceğiz. Veritabanında yapılan yanlış DELETE, UPDATE, INSERT işlemleri bu yöntem ile WAL dosyalarından çıkarılarak, hatalı işlemler geri alınabilirler. Logical Decoding özelliği PostgreSQL’e 11 sürümü ile gelmiştir.