Inställningar för att tillåta andra datorer att ansluta till PostgreSQL-databasen (Windows-version)
Omvärld
- PostgreSQL (på engelska)
-
- PostgreSQL 15
- Windows (server)
-
- Windows Server 2019
- Windows (klient)
-
- Windows 11 (på engelska)
Förutsättningar
- Windows
-
- Windows Server 2019
- Windows Server 2016
- Andra versioner kan fungera, men stöds inte officiellt.
brandvägg
I Windows förhindrar brandväggar andra anslutningar än standardportar. Den måste konfigureras för att kunna ansluta på porten för att ansluta till PostgreSQL.
När du har loggat in på Windows-miljön på serversidan skriver du "brandvägg" på startmenyn och väljer Öppna Windows Defender-brandväggen med avancerad säkerhet.
När skärmen öppnas väljer du "Regler för inkommande trafik" i menyn till vänster och klickar på "Ny regel..." i menyn till höger.
För Regeltyp väljer du Port.
För Protokoll och port väljer du TCP som protokoll. För porten anger du standardvärdet 5432. Om du angav ett annat portnummer i PostgreSQL-installationen anger du det portnumret.
För "Åtgärd" väljer du "Tillåt anslutning".
I "Profil" markerar du "Domän" och "Privat". Jag tror att det är osannolikt att du kommer att låta en databas nås i en "offentlig" miljö som tillåter ospecificerade personer att komma åt den.
Ange ett valfritt namn och en beskrivning. Ange det så att det är lätt att förstå syftet med att öppna porten.
När den har lagts till kommer den att visas i listan.
postgresql.conf
Kontrollera inställningarna i postgresql.conf. Jag tror inte att du behöver ändra det i version 15.
Det finns en fil på följande plats, så öppna den med ett anteckningsblocksprogram. Kontrollera sökvägen eftersom den varierar beroende på version.
C:\Program Files\PostgreSQL\15\data\postgresql.conf
listen_addresses
Leta efter parametern som anropas. Du behöver inte ändra den om den är inställd enligt följande:
listen_addresses = '*'
pg_hba.conf
Som standard kan databasen endast nås från den lokala miljön.
Det finns en fil på följande plats, så öppna den med ett anteckningsblocksprogram. Kontrollera sökvägen eftersom den varierar beroende på version.
C:\Program Files\PostgreSQL\15\data\pg_hba.conf
Det finns en möjlighet att du kan göra ett misstag när du korrigerar det, så kopiera och säkerhetskopiera filen innan du ändrar den för säkerhets skull.
Om du bläddrar till botten hittar du följande rader: Detta indikerar att IPv4 endast kan nås lokalt.
# TYPE DATABASE USER ADDRESS METHOD
:
host all all 127.0.0.1/32 scram-sha-256
:
Ställ in denna ADRESS till en enda eller ett intervall så att den kan nås från andra datorer.
Vilket värde du ställer in beror på vilket nätverk du bygger.
Om du inte är säker, tillåt 0.0.0.0/0
alla med eller samenet
typ för att tillåta hela räckvidden för samma nätverk som servern.
Exempel på konfiguration
# TYPE DATABASE USER ADDRESS METHOD
:
host all all 192.168.0.0/24 scram-sha-256
:
Starta om tjänsten
pg_hba.conf
Dessa konfigurationsfiler läses bara när PostgreSQL startas, så du måste starta om tjänsten.
Förresten, den laddas när PostgreSQL startar, så om du startar om Windows kommer den att laddas vid den tidpunkten.
När du har öppnat startmenyn skriver du "tjänster" för att starta den.
Hitta och välj "postgresql-x64-15 - PostgreSQL Server 15" från den mellersta listan. Observera att namnet varierar beroende på version. När du har valt klickar du på "Starta om tjänsten" från vänster.
Kontrollera anslutningen från andra datorer
Låt oss se om vi kan ansluta till databasen från en annan dator. Information om anslutningsdestinationen varierar beroende på miljön, så det är bara proceduren som beskrivs här. Jag använder pgAdmin för att ansluta den här gången, men jag tror att du kan ansluta med andra verktyg för databasåtkomst också.
Efter att ha startat pgAdmin på en klientdator separat från databasservern, högerklicka på Servrar och välj "Registrera > server...".
På fliken Allmänt ska namnet vara ett namn som hjälper dig att identifiera servern.
Välj fliken Anslutning. Ange "Värdnamn/adress", "Underhållsdokumentation", "Användarnamn" och "Lösenord". Om du inte vill ange lösenordet varje gång, aktivera "Spara lösenord". Förresten, pdAdmin kanske inte kan matcha namnet på värden, så ange i så fall IP-adressen direkt.
Fyll i de andra inmatningsfälten efter behov. När du är klar klickar du på knappen "Spara".
Om du kan ansluta till målserverns databas är verifieringen klar.