Postgresql.conf Dosyasında Önemli Parametreler
Connection ve Authentication Parametreleri
listen_address : Clientlardan gelen bağlantı isteklerine hangi IP’nin cevap vereceğini belirlemek için kullanılan parametredir. Yani Postgresql veri tabanının çalıştığı server IP’si bu parametrenin değeri olmalıdır. Parametrenin değeri * olarak girildiğinde sunucu üzerinde kullanılan tüm IP’ler client’lardan gelen bağlantı isteklerine cevap dönebilir. Bu parametre set edilmediğinde ise localhost üzerinden bağlantı talepleri karşılanır.
port (integer) : Postgresql default olarak 5432 portundan hizmet verir. Server tarafından dinlenilen bütün IP adresleri aynı port üzerinden hizmet verir.
max_connections (integer) : Veri tabanında aynı anda açılabilecek maksimum connection sayısını belirtmek için kullanılır. Defaul olarak değeri 100’dür. Standby sunucularda bu parametre master server’daki parametre değeri ile aynı veya daha yüksek set edilmelidir.
superuser_reserved_connections (integer) : max_connections parametresi ile belirlenen bağlantı sayısından kaç tanesinin super user rolündeki kullanıcılar için ayrılacağını belirler. Default olarak 3’tür. Max_connections parametresinin 100 superuser_reserved_connections parametresinin ise 3 olarak set edildiği durumda normal kullanıcılar sistem üzerinde maksimum 97 bağlantı açabilir.
tcp_keepalives_idle (integer) : Herhangi bir newtwork aktivietsi olmayan bağlantılır için süre sınırı belirler. Herhangi bir birim ile set edilmez ise verilen değer saniye cinsinden alınır. Default olarak 0’dır. 0 değeri işletim sisteminin TCP_KEEPIDLE değişkeninin değerinin kullanılması demektrir.
authentication_timeout (integer) : Kullanıcının veri tabanına bağlantı işleminin beklenilen sürede tamamlanaması durumunda bağlantı talebinin reddedilmesini sağlayan parametredir. Saniye cinsinden set edilir ve default değeri 1 dakikadır.
password_encryption (enum) : Password şifrelemenin hangi algoritma ile yapılacağını belirlerken kullanılan parametredir. Default olarak md5’tir.
db_user_namespace (boolean) : Veri tabanlarında birbirinden bağımsız user’lar oluşturmak için kullanılır. Default değeri off’tur. Değeri on olur ise username@dbname söz dizimi ile bir veri tabanına özel kullanıcı yaratılabilir.
ssl (boolean) : SSL bağlantı yöntemini aktif hale getiren parametredir. Default olarak değeri off’tur.
Kaynak Yönetimi ile ilgili Parametreler
shared_buffers (integer) : Memory’de shared buffer olarak kullanılacak alanın ayarlanmasını sağlayan parametredir. Default olarak 128 MB’tır. Minimum alabileceği değer 128 KB’tır. Birim vermeden set edilir ise değeri blok sayısı olarak alınır. BLCKSZ parametresi de default olarak 8 KB olarak ayarlanmıştır. Server başlatılırken set edilebilir. 1GB ve üzerindeki memory alanı için sistemin en az %25’inin shared_buffer’a atanması tavsiye edilir. Bu alanın boyutunu arttırmak performansı arttırır. Ancak bu alanın değeri arttırılıken max_wal_size parametresinin değeri de arttırılmalıdır.
huge_pages (enum) : shared memory alanında huge pages kullanımı seçeneklerini ayarlamayı sağlayan parametredir. Try, on veya off değeri alabilir. Default olarak Try’dır. Kullanmayı dener kullanamaz ise sistem çalışmasında herhangi bir sıkıntı oluşmaz. On olarak set edildiğinde kullanamaz ise veri tabanı başlatılamaz. Off olarak set edildiğinde ise hiç kullanılmaz.
temp_buffers (integer) : Her bir session için kullanılacak maksimum temporary buffer alanın değerini belirleyen parametredir. Default değeri 8MB’tır.
work_mem (integer) : memory’de work_mem alanının değerini belirleyen parametredir.
maintenance_work_mem (integer) : Operasyonel işlemler (vacuum,Create – Rebuild index, Alter table vs) için kullanılan memory alanının değerini belirleyen parametredir.
autovacuum_work_mem (integer) : Herbir autovacuum prosesinin maximum ne kadar memory harcayabileceğini belirleyen parametredir.
Write Ahead Log parametreleri
wal_level (enum) : WAL dosyalarına ne kadar bilgi yazılacağını belirleyen parametredir. Default olarak değeri replica’dır. Standby server’a verilerin işlenebileceği kadar ayrıntılı log tutulması anlamına gelir. Minimal değeri verilir ise log dosyalarında sadece recover yapılabilecek seviyede bilgi tutulur. En ayrıntılı log tutulan seviye ise logical level’dır.
wal_buffers (integer) : Memory’de WAL buffer olarak kullanılan alanın değerini belirler. Default değeri Shared buffer’ın %3’ü kadardır.
Arching Parametreleri
archive_mode (enum) : archive_mode enable edildiğinde WAL dosyaları archive_command parametresinin değeri ile storage’a gönderilir. On, off veya always olarak ayarlanabilir. Always değeri archive recovery veya standby mode da kullanılır. Wal_level minimal olarak ayarlandığında archive_mode enable edilemez.
archive_command (string) : WAL dosyalarını bir dizine yasmak için kullanılan shell komutu bu parametrenin değeridir. Archive_mode parametresi enable edilmediği sürece bu parametre ayarlanamaz.
restore_command (string) : Bu parametre ise archive recovery için kullanılan shell komutunu tutar.
NOT : Replication parametreleri replication kurulumu konusunda anlatılmıştır.
- AWS nedir? – Cloud 101 - Mayıs 16, 2024
- Vector Databases - Mayıs 15, 2024
- Data Dünyası Nereye Gidiyor? - Mayıs 8, 2024