PostgreSQL bağlantı dizesi nedir?

PostgreSQL bağlantı dizesi, bir veritabanına bağlanmak için gereken tüm bilgileri — hostname, port, kimlik bilgileri, veritabanı adı ve SSL ayarları — tek bir değerde birleştiren biçimlendirilmiş bir metin parçasıdır. Uygulamalar, ORM'ler ve komut satırı araçları, her parametrenin ayrı ayrı yapılandırılmasını gerektirmeden veritabanı oturumları oluşturmak için bağlantı dizelerini kullanır. İki yaygın biçim vardır: URI biçimi (postgresql://user:password@host:port/dbname) ve libpq anahtar=değer biçimi (host=localhost port=5432 dbname=mydb). Her iki biçim de neredeyse tüm PostgreSQL istemci kütüphaneleri tarafından desteklenir.

Araç açıklaması

Bu araç, bireysel parametrelerden geçerli PostgreSQL bağlantı dizelerini oluşturur. Host, port, kimlik bilgileri, veritabanı adı ve SSL modunu doldurun ve anında üç kullanıma hazır çıktı elde edin: bir bağlantı URL'si, bir psql komutu ve bir libpq anahtar=değer dizesi.

Örnekler

Giriş:

Alan Değer
Host db.example.com
Port 5432
Kullanıcı Adı alice
Şifre s3cr3t
Veritabanı production
SSL Modu require

Bağlantı URL'si:

postgresql://alice:s3cr3t@db.example.com/production?sslmode=require

psql komutu:

psql "postgresql://alice:s3cr3t@db.example.com/production?sslmode=require"

libpq anahtar=değer dizesi:

host=db.example.com port=5432 dbname=production user=alice password=s3cr3t sslmode=require

Özellikler

  • Üç çıktı biçimi: Aynı anda bir bağlantı URL'si, psql shell komutu ve libpq anahtar=değer dizesi oluşturur
  • SSL modu seçici: Tüm altı PostgreSQL SSL modunu destekler — disable, allow, prefer, require, verify-ca ve verify-full
  • Akıllı varsayılanlar: Çıktıyı temiz ve minimal tutmak için varsayılan değerleri (port 5432, sslmode=prefer) atlar

SSL modları açıklandı

Mod Açıklama
disable SSL yok. Bağlantı şifrelenmemiştir.
allow Sunucu gerektiriyorsa SSL kullanır; aksi takdirde SSL olmadan bağlanır.
prefer Önce SSL'i dener; şifrelenmemiş bağlantıya geri döner (varsayılan).
require SSL gerektirir ancak sunucu sertifikasını doğrulamaz.
verify-ca SSL gerektirir ve sunucu sertifikasının güvenilir bir CA tarafından imzalandığını doğrular.
verify-full SSL gerektirir, CA'yı doğrular ve ayrıca hostname'in sertifikayla eşleştiğini kontrol eder.