Mikä on PostgreSQL-yhteysmerkkijono?

PostgreSQL-yhteysmerkkijono on muotoiltu tekstipalanen, joka yhdistää kaikki tietokannan yhteyden muodostamiseen tarvittavat tiedot — isäntänimi, portti, tunnistetiedot, tietokannan nimi ja SSL-asetukset — yhdeksi arvoksi. Sovellukset, ORM:t ja komentorivityökalut käyttävät yhteysmerkkijonoja tietokantaistuntojen muodostamiseen ilman, että jokainen parametri on määritettävä erikseen. On kaksi yleistä muotoa: URI-muoto (postgresql://user:password@host:port/dbname) ja libpq-avain=arvo-muoto (host=localhost port=5432 dbname=mydb). Molempia muotoja tuetaan käytännöllisesti katsoen kaikissa PostgreSQL-asiakasohjelmistokirjastoissa.

Työkalun kuvaus

Tämä työkalu luo kelpaavia PostgreSQL-yhteysmerkkijonoja yksittäisistä parametreista. Täytä isäntänimi, portti, tunnistetiedot, tietokannan nimi ja SSL-tila, niin se tuottaa välittömästi kolme käyttövalmiita tuloksia: yhteysmerkkijono-URL, psql-komento ja libpq-avain=arvo-merkkijono.

Esimerkit

Syöte:

Kenttä Arvo
Isäntä db.example.com
Portti 5432
Käyttäjänimi alice
Salasana s3cr3t
Tietokanta production
SSL-tila require

Yhteysmerkkijono-URL:

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

psql-komento:

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

libpq-avain=arvo-merkkijono:

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

Ominaisuudet

  • Kolme tuloksen muotoa: Luo yhteysmerkkijono-URL:n, psql-shell-komennon ja libpq-avain=arvo-merkkijonon samanaikaisesti
  • SSL-tilan valitsin: Tukee kaikkia kuutta PostgreSQL SSL-tilaa — disable, allow, prefer, require, verify-ca ja verify-full
  • Älykkäät oletusarvot: Jättää pois oletusarvot (portti 5432, sslmode=prefer) pitääkseen tuloksen puhtaana ja minimaalisena
  • URL-koodaus: Koodaa automaattisesti käyttäjänimien, salasanojen ja tietokannan nimien sisältämät erikoismerkit prosenttimerkillä
  • Portin validointi: Tarkistaa, että portti on numero välillä 1 ja 65535

Käyttötapaukset

  • Sovelluksen konfiguraatio: Luo DATABASE_URL-ympäristömuuttuja kehyksille kuten Django, Rails tai mihin tahansa sovellukseen, joka käyttää yhteysmerkkijonoa
  • Nopea CLI-käyttö: Tuota valmis psql-komento etätietokantaan yhdistämiseen ilman URI-syntaksin muistamista
  • Yhteyden vianmääritys: Rakenna libpq-merkkijono testaamaan yhteyksiä matalan tason ajureilla tai työkaluilla, jotka eivät hyväksy URI-muotoa

SSL-tilat selitettynä

Tila Kuvaus
disable Ei SSL:ää. Yhteys on salaamaton.
allow Käyttää SSL:ää, jos palvelin vaatii sitä; muuten muodostaa yhteyden ilman SSL:ää.
prefer Yrittää SSL:ää ensin; palaa salaamattomaan yhteyteen (oletus).
require Vaatii SSL:ää, mutta ei tarkista palvelimen sertifikaattia.
verify-ca Vaatii SSL:ää ja tarkistaa, että palvelimen sertifikaatti on allekirjoitettu luotetulla CA:lla.
verify-full Vaatii SSL:ää, tarkistaa CA:n ja tarkistaa myös, että isäntänimi vastaa sertifikaattia.