ServBay'de PostgreSQL Veritabanı Yapılandırmasını Değiştirme
ServBay, macOS geliştiricileri için güçlü bir yerel Web geliştirme ortamı sunar ve içinde PostgreSQL veritabanını da entegre olarak getirir. Bu yazıda, ServBay üzerinde PostgreSQL yapılandırmasını nasıl değiştirebileceğinizi, önerilen UI (arayüz) yöntemini ve yalnızca geçici/test amaçlı kullanılabilecek manuel dosya düzenleme yöntemini ayrıntılı olarak anlatıyoruz.
ServBay'de kurulu olan PostgreSQL sürümüne bağlı olarak, ana yapılandırma dosyaları genellikle /Applications/ServBay/etc/postgresql/<version>
dizininde bulunur. Örneğin PostgreSQL 16 için yapılandırma dosyası yolu /Applications/ServBay/etc/postgresql/16
şeklindedir.
Önemli Uyarı
ServBay, çoğu yapılandırma ayarını grafik kullanıcı arayüzü (UI) ile yönetir ve ilgili yapılandırma dosyalarını otomatik olarak üretir. Yapılandırma değişikliklerini doğrudan ServBay UI üzerinden yapmanız şiddetle tavsiye edilir. Yapılandırma dosyalarını manuel olarak düzenlemek, yapılan değişikliklerin ServBay tarafından bir sonraki güncellemede veya yönetimde üzerine yazılmasıyla sonuçlanabilir. Manuel düzenleme yalnızca geçici testler ya da ileri seviye kullanıcıların özel ihtiyaçları için uygundur ve kalıcı/prodüksiyon ayarları için önerilmez.
ServBay UI Üzerinden Yapılandırma Değişikliği (Tavsiye Edilen Yöntem)
ServBay, PostgreSQL yapılandırmasını hızlı ve güvenli biçimde değiştirmenize imkan veren sezgisel bir grafik arayüze sahiptir. UI üzerinden yapılan değişiklikler otomatik olarak uygulanır ve genellikle anında geçerli olur (bazı nadir durumlarda ServBay'in yeniden başlatmanızı istemesi mümkündür).
Adım Adım İşlem
- ServBay uygulamasını açın.
- Sol taraftaki menüden
Veritabanı
sekmesini seçin. - Veritabanları listesinden
PostgreSQL
bulun ve ayar yapmak istediğiniz ilgili sürümü seçin. - PostgreSQL yapılandırma ekranında, o sürüme ait tüm detaylı bilgileri ve yapılandırma seçeneklerini görebilirsiniz.
Yapılandırılabilir Ayarlar
Bu sayfada, ServBay'in sizin için tanımladığı varsayılan PostgreSQL kullanıcı adı ve şifresini görebilirsiniz (genellikle bu ekranda gösterilir). Ayrıca yaygın bazı yapılandırma parametrelerini doğrudan buradan değiştirebilirsiniz:
- Dinleme adresleri (
listen_addresses
): PostgreSQL'in dinleyeceği ağ arayüzlerini ayarlar. Genelde varsayılan değer*
olup tüm ağ arayüzlerini gösterir. - Port (
port
): PostgreSQL servisinin kullandığı ağ portu. Varsayılanı5432
'dir (MySQL/MariaDB'nin 3306 ile karıştırmayınız). - Maksimum bağlantı sayısı (
max_connections
): Aynı anda bağlanabilecek en fazla istemci sayısını belirler. - Çalışma belleği (
work_mem
): Sıralama ve hash işlemlerinde her sorgu işleminin kullanabileceği bellek miktarıdır.
Ek olarak, Additional Parameters
(Ek Parametreler) alanında ServBay UI'de listelenmeyen diğer postgresql.conf
yapılandırmalarını ekleyebilir veya değiştirebilirsiniz. Her satıra parametre_adı = değer
şeklinde giriniz.
Değişiklikleri Uygulama
Yapılandırma değişikliklerinizi tamamladıktan sonra, ekranın altındaki Kaydet
butonuna basın. ServBay değişikliklerinizi otomatik olarak uygular. Çoğu zaman ayarlar anında geçerli olur. Nadiren bazı ayarların etkin olması için PostgreSQL servisinin yeniden başlatılması gerekebilir; bu durumda ServBay sizi bilgilendirir.
Yapılandırma Dosyalarını Elle Düzenleyerek Yapılandırma Değişikliği (Uzun Vadede Tavsiye Edilmez)
Yukarıda belirtildiği gibi, yapılandırma dosyalarını manuel olarak düzenlemek uzun vadeli veya rutin yönetim için önerilmez, çünkü ServBay arayüzünden yapılan ayarlar manuel değişikliklerinizin üzerine yazılabilir. Ancak yapılandırma dosyalarının nerede bulunduğunu ve içeriğini bilmek, PostgreSQL’in çalışma prensiplerini anlamak açısından önemlidir.
WARNING
Yapılandırma dosyalarını manuel düzenleme yalnızca geçici testler veya ileri düzey hata ayıklama için uygundur. ServBay, kalıcı ve sağlıklı yapılandırma için arayüz üzerinden ayar yapılmasını tavsiye eder. Manuel olarak düzenlenen dosyalar, ServBay’in iç mekanizmasında sıfırlanabilir ya da değiştirilebilir.
Yapılandırma Dosyalarının Konumu
ServBay'de PostgreSQL’in ana yapılandırma dosyaları; postgresql.conf
ve pg_hba.conf
’tur. Bunların bulunduğu dizin, PostgreSQL sürümüne göre değişir:
postgresql.conf
:/Applications/ServBay/etc/postgresql/<version>/postgresql.conf
pg_hba.conf
:/Applications/ServBay/etc/postgresql/<version>/pg_hba.conf
Not: Belge içinde geçen /db/postgresql/16/pg_hba.conf
gibi yollar eski veya içsel yollar olabilir. ServBay UI esas olarak /Applications/ServBay/etc
altındaki yapılandırmayı yönetir. Manuel değişiklik yaparken aktif dosya yolunu teyit edin. Güvenli ve kalıcı değişiklikler için /Applications/ServBay/etc/postgresql/<version>
dizinini kullanın.
Yaygın Yapılandırma Örnekleri
Aşağıda postgresql.conf
ve pg_hba.conf
dosyalarında sıkça karşılaşılan bazı ayar örnekleri bulunmaktadır. Düzenlemek için bir kod editörü (VS Code, Sublime Text, Nano, vb.) ile yönetici haklarıyla dosyaları açmanız gerekmektedir.
postgresql.conf
postgresql.conf
, PostgreSQL sunucusunun ana yapılandırma dosyasıdır ve sunucu davranışının büyük çoğunluğunu bu dosya belirler.
# Dinleme adresleri: Sunucunun dinleyeceği ağ arayüzleri. '*' tümünü gösterir.
listen_addresses = '*'
# Port numarası: Sunucunun dinleyeceği ağ portu. PostgreSQL’in varsayılan portu 5432’dir.
port = 5432
# Maksimum bağlantı sayısı: Aynı anda bağlanabilecek en fazla istemci sayısı.
max_connections = 100
# Paylaşımlı tampon boyutu: PostgreSQL tarafından veritabanı verilerini önbellekleme için ayrılan hafıza.
shared_buffers = 128MB
# Log dizini: Günlük dosyalarının depolanacağı klasör.
log_directory = 'log'
# Log dosyası adı formatı: Günlük dosyalarının isimlendirilme biçimi.
log_filename = 'postgresql-%Y-%m-%d.log'
# Yavaş sorgu günlüğü: Belirtilen milisaniye sınırını aşan sorguları kaydeder.
# Pozitif bir sayı giriniz, örneğin 2000 değeri 2 saniyeden uzun süren sorguları kaydeder.
# -1 olarak ayarlanırsa yavaş sorgu kaydı devre dışı kalır.
log_min_duration_statement = 2000
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
pg_hba.conf
pg_hba.conf
(Host-Based Authentication) dosyası, istemci bağlantıları için kimlik doğrulama yöntemlerini ve izinleri belirtir.
# TYPE DATABASE USER ADDRESS METHOD
# Yerel Unix socket bağlantılarına izin ver, trust yöntemiyle (şifre gerekmez).
# "local", yalnızca Unix domain socket bağlantıları içindir
local all all trust
# Tüm IPv4 adreslerinden TCP/IP ile uzak bağlantılara izin ver, md5 parola doğrulaması gerekir.
# IPv4 yerel bağlantılar:
host all all 0.0.0.0/0 md5
# Belirli bir IPv4 alt ağı (örneğin 192.168.1.0/24) üzerinden TCP/IP ile uzaktan bağlantıya izin ver, md5 parola doğrulaması gerekir.
# Belirli alt ağdan IPv4 bağlantıları:
# host all all 192.168.1.0/24 md5
2
3
4
5
6
7
8
9
10
11
12
13
pg_hba.conf
dosyasını düzenlerken, her sütunun işlevini iyi anlayın (TYPE
, DATABASE
, USER
, ADDRESS
, METHOD
) — yanlış yapılandırmalar bağlantı hatalarına veya güvenlik açıklarına yol açabilir.
Manuel Yapılandırma Değişikliklerinin Uygulanması
Yapılandırma dosyalarını elle düzenledikten sonra, değişikliklerin etkili olabilmesi için PostgreSQL servisinin yeniden başlatılması gerekir.
ServBay Yönetim Paneli ile Yeniden Başlatma
- ServBay yönetim panelini açın.
- Sol menüde
Veritabanı
sekmesine tıklayın. PostgreSQL
bulun ve ilgili sürümü seçin.- Bu sayfada ya da ana ekrandaki “Paketler”/“Servisler” bölümünde, PostgreSQL servisini bulun ve
Yeniden Başlat
butonuna tıklayın.
servbayctl
Komut Satırı Aracı ile Yeniden Başlatma
ServBay’in komut satırı aracı olan servbayctl
ile servislerinizi kolayca yönetebilir, PostgreSQL servisini yeniden başlatabilirsiniz:
servbayctl restart postgresql <version>
Buradaki <version>
, kullandığınız gerçek PostgreSQL sürüm numarası olmalı (ör: 16
).
Özet
ServBay, PostgreSQL yapılandırmasını düzenlemek için en iyi yol olarak pratik ve stabil bir arayüz sunar. Böylece dosya düzenlemeden kaynaklı olası çakışmalar veya kayıplardan kaçınırsınız. ServBay UI üzerinden dinleme adresleri, port, bağlantı sınırı gibi yaygın ayarları kolayca değiştirebilir ve varsayılan veritabanı bilgilerine erişebilirsiniz. Kısa süreli test veya gelişmiş ihtiyaçlar için manuel dosya düzenlemesi de mümkündür; ana yapılandırma dosyaları /Applications/ServBay/etc/postgresql/<version>
dizininde yer alır. Hangi yöntemle değişiklik yaparsanız yapın, genellikle PostgreSQL servisinin yeniden başlatılması gerekmektedir; bu işlemi ServBay UI veya servbayctl
ile tamamlayabilirsiniz.
Bu yapılandırma seçeneklerini ve yöntemlerini anlamak, geliştirme ihtiyaçlarınıza uygun olarak ServBay’deki PostgreSQL veritabanı ortamını optimize etmenize yardımcı olacaktır.