Şirket içindeki kültürümüz "beraber" çalışma üzerine bizde. Ünvanlar sadece kartvizitlere yazılan şeydir gözümüzde, onun dışında işi bilen ya da öğrenmek isteyen herkes özgürce işi yapar, ya da en azından fikrini belirtir.
O yüzden, şirkete başlayan ve şirket kültürüne uyum sağlayan herkes şirketin parçası olmaya devam eder. "Ayrılsak da beraberizdir" yani.
Bizden birkaç ay önce ayrılan sevgili Seda Halaçlı ailemize geri döndü. Seda PostgreSQL DBA olarak müşterilerimizle çalışmaya başladı.
Seda 2019 yılında Kadir Has Üniversitesi Mühendislik ve Doğa Bilimleri Fakültesi Yönetim Bilişim Sistemleri Bölümü'nden mezun oldu. Üniversite eğitimi süresince 2 firmada staj yaptı. 2. sınıfta Yellow Pages firmasında yönetim stajını, 3. sınıfta da bilişim stajını Gündüz Bilişim Danışmanlığı firmasında (bizde ) yaptı. Stajı bittikten sonra bizde yarı zamanlı olarak görev aldı. Bu iş tecrübelerinin dışında, üniversite bünyesinde 3 yıl boyunca Sağlık, Kültür ve Spor Daire Başkanlığı'nda aktif burslu öğrenci olarak görev aldı. Bununla birlikte, 5 yıl boyunca üniversitenin badminton takımında yer aldı ve okulunu Türkiye genelinde düzenlenen badminton turnuvalarında temsil etti. Üniversiteden mezun olduktan sonra 5 ay boyunca 'Yazılım Geliştirici' unvanı ile Artistanbul firmasında çalıştı ve bugün itibariyle de ailemize tekrar katıldı. İş hayatının dışında badminton oynamayı, seyahat etmeyi ve kitap okumayı sever.
Veritabanı sunucularımızda bulunan kullanıcıların hangi yetkilere sahip oldukları, hangi tablolara ulaştığı, hangi fonksiyonları kullanma yetkisi olduğu, hangi şemaları görüntüleyebildiği gibi bir çok yetkinin gerekli şekillerde dağıtılması veritabanı güvenliğimiz açısından çok önemli bir durum. Bu yazıda bu yetkilerin nasıl kontrol edilebileceğini anlatacağım ve düzeltilebilecek bazı genel noktalardan bahsedeceğim.
SSL sertifikası kullanmak, bağlantımızı şifrelediği için araya girebilecek kötü niyetli kişilerin paketlerimizi dinlemek istediğinde şifrelenmiş bir mesajla karşılaşmasını sağlıyor. Bu sayede paketimizde taşıdığımız bağlantı bilgilerimiz güvende oluyor.
PGConf Europe 2018 ile ilgili giriş yazıma buradan ulaşabileceğiniz gibi eğer merak ediyorsanız konferanstaki detayları, doğru yerdesiniz.
Her sunum farklı alanda çalışan konuşmacılar tarafından veriliyor DBA, Hacker, Developer gibi. Daha fazla konuşmacının sunumlara sınırlı zamanda katkıda bulunması için aynı andan birden fazla oturumda gerçekleştiriliyor konuşmalar. Dolayısıyla katılacağınız etkinliklerde eğer bir konuşmayı dinlerken diğerini kaçırma ihtimaliniz olan böyle etkinliklerde takvimi ve sunum içeriğini detaylıca okumanızı öneririm. Sunum sonrası konuşmacıların bir çoğu kendi sunumlarını yine aynı sayfada görebileceğiniz şekilde paylaşıyorlar.
Diğer tüm veritabanları arasında en popüler açık kaynak kodlu veritabanı olan PostgreSQL, tüm yıl boyunca farklı ülkelerde bir çok konferansa sahiplik yapmaktadır. En bilinenleri PGDay ve PGConf'dur. Ayrıca her yıl 2 Şubatta Brüksel’de yapılan FOSDEM etkinliğinde de PostgreSQL konuşmalarının yapıldığı bir oturum mutlaka olmaktadır. PostgreSQL etkinlik detaylarına bu linkten ulaşabilirsiniz.
Herkesin cevabını merak ettiği TC kimlik numarasında hangi veri tipi kullanılır sorusuna cevap bulacağız. Bu konu üzerine konuşulan varchar-char, integer, text veri tipilerinden hangisini kullansak daha verimli bir sonuç elde ederiz? sorusuna bizde bugün pg_size_pretty ve pg_relation_size fonksiyonlarını kullanarak hangi veri tiplerinin daha uygun olduğunu öğreneceğiz.
Tablespace (tablo alanları) veritabanında şemalar,tablolar,indeksler ve bunun gibi bir sürü obje tutulabilir böylelikle verinin yönetimini kolaylaştırabiliriz. Bir tablespace sadece superuser tarafından yaratılabilir. Diğer kullanıcılar tablespaceleri sadece kullanabilirler. İlgili kullanıcılara tablespace'lerin kullanabilmesi için CREATE izninin verilmesi gerekir. CREATE izni olan kullanıcı ilgili komuta tablespace adını bir parametre olarak vermelidir.
Makinemizin güvenlik duvarı(firewall) olarak kullanabileceğimiz bu servis, makinemize gelen trafiği, istediğimiz şekilde yönlendirmemiz veya istemediğimiz bağlantılardan gelen trafiğin makinemizdeki servislere veya portlara erişimini engellememiz için çok rahat kullanabileceğimiz bir kullanım sunuyor. Iptables'ın yerini alabilecek olan bu servisin çok kullanışlı bir kaç özelliği bulunuyor.
Veritabanlarımızda IPv4, IPv6 ve MAC bilgilerini depolamak için network veri tipleri daha elverişlidir. Çünkü veri tipi network veri tiplerinden biri olarak tanımlanan sütunlara, yalnızca buna uygun veri girişi yapılabilir. Böylece, ağ adreslerini depolarken, veri girişinde verinin uygunluğunu kontrol etmemiz kolaylaşır.
4 adet network veri tipi vardır:
INET
CIDR
MACADDR
MACADDR8
Bunlara ek olarak 1 adet de uzantı(extension) vardır:
PgCluu PostgreSQL performans ve kontrol aracıdır. PgCluu kullanmak için ihtiyacımız olan Perl, psql client ve opsiyonel olarak da sar ile rapor alabilmek için sysstat paketinin kurulumu gerekir.
Fedora 27 üzerinde PgCluu kurulumu için aşağıdaki gibi ilerleyebiliriz.
Replication Slot konusu oldukça uzun bir konu. Yazıya Replication Slot, Physical Replication Slot ve Logical Replication Slot konularını tek başlıktan üç farklı başlık olarak böldüm. Dolayısıyla hızlıca konuya giriş yaparsak eğer, Physical Replicatio Slot disk bloklarındaki değişikliklerini karşı tarafa gönderir. Aktarılan WAL dosyalarını kontrol eder. Replication Slot yazısına buradan ulaşabilirsiniz.
Replication Slot yazısına buradan ulaşabilirsiniz. Giriş bilgisi bu yazıda yer almaktadır.
Logical Replication, logical decoding kullanır. Logical decoding, veritabanı tabloları üzerinde commit edilmiş processlerin karşı tarafa row-by-row aktarılmasıdır. Oluşturulan her bir slot sadece bir veritabanı için kullanılabilir. Bir veritabanında birden fazla birbirinden bağımsız slot oluşturulabilir.
PostgreSQL 9.4 ile Logical Decoding kavramı gelmesiyle Replication Slot yapısının temeli atıldı diyebiliriz. Çünkü Logical Replication, Logical Decoding yapsının üzerinde geliştirilmiştir. Sonrasında ise PostgreSQL 9.6 ile Logical Replication ve Physical Replication kavramlarıyla tanıştık. Öncesinde Replication Slot kavramından, daha sonra Logical ve Physical Replication kavramlarından bahsedeceğim.
PostgreSQL sunucusunun da gelen yeni özellikleri kullanabilmek ve geliştirmeleri sıkı takip ederken kendi sistemimize entegre etmemiz önemli. Şu an PostgreSQL in en güncel versiyonu 11 olmasına rağmen hala prod ortamında kullanmak için çok erken. Dolayısıyla eğer PostgreSQL sunucunuzun versiyonu 9.6 ve altındaysa 10'a geçirmeyi pg_upgrade ile deneyebilirsiniz.