postgresql Handledning
Komma igång med postgresql
Sök…
Anmärkningar
Det här avsnittet ger en översikt över vad postgresql är och varför en utvecklare kanske vill använda den.
Det bör också nämna alla stora ämnen inom postgresql och länka till relaterade ämnen. Eftersom dokumentationen för postgresql är ny kan du behöva skapa initialversioner av relaterade ämnen.
versioner
Version | Utgivningsdatum | EOL-datum |
---|---|---|
9,6 | 2016/09/29 | 2021/09/01 |
9,5 | 2016/01/07 | 2021/01/01 |
9,4 | 2014/12/18 | 2019/12/01 |
9,3 | 2013/09/09 | 2018/09/01 |
9,2 | 2012/09/10 | 2017/09/01 |
9,1 | 2011-09-12 | 2016/09/01 |
9,0 | 2010-09-20 | 2015/09/01 |
8,4 | 2009-07-01 | 2014/07/01 |
Installation på GNU + Linux
På de flesta GNU + Linux-operativsystem kan PostgreSQL enkelt installeras med operativsystempakethanteraren.
Red Hat-familjen
Förvaringar finns här: https://yum.postgresql.org/repopackages.php
Ladda ner förvaret till lokal maskin med kommandot
yum -y install https://download.postgresql.org/pub/repos/yum/X.X/redhat/rhel-7-x86_64/pgdg-redhatXX-X.X-X.noarch.rpm
Visa tillgängliga paket:
yum list available | grep postgres*
Nödvändiga paket är: postgresqlXX postgresqlXX-server postgresqlXX-libs postgresqlXX-contrib
Dessa installeras med följande kommando: yum -y install postgresqlXX postgresqlXX-server postgresqlXX-libs postgresqlXX-contrib
När installationen är installerad måste du starta databasstjänsten som tjänstägare (standard är postgres). Detta görs med kommandot pg_ctl.
sudo -su postgres
./usr/pgsql-X.X/bin/pg_ctl -D /var/lib/pgsql/X.X/data start
För att komma åt DB i CLI, ange psql
Debians familj
Skriv Debian och härledda operativsystem:
sudo apt-get install postgresql
Detta kommer att installera PostgreSQL-serverpaketet i standardversionen som erbjuds av operativsystemets paketförråd.
Om den version som installeras som standard inte är den du vill kan du använda pakethanteraren för att söka efter specifika versioner som samtidigt kan erbjudas.
Du kan också använda Yum-förvaret som tillhandahålls av PostgreSQL-projektet (känd som PGDG ) för att få en annan version. Detta kan tillåta versioner som ännu inte erbjuds av operativsystempaketförvar.
Hur man installerar PostgreSQL via MacPorts på OSX
För att installera PostgreSQL på OSX måste du veta vilka versioner som för närvarande stöds.
Använd det här kommandot för att se vilka versioner du har tillgängliga.
sudo port list | grep "^postgresql[[:digit:]]\{2\}[[:space:]]"
Du bör få en lista som ser ut som följande:
postgresql80 @8.0.26 databases/postgresql80
postgresql81 @8.1.23 databases/postgresql81
postgresql82 @8.2.23 databases/postgresql82
postgresql83 @8.3.23 databases/postgresql83
postgresql84 @8.4.22 databases/postgresql84
postgresql90 @9.0.23 databases/postgresql90
postgresql91 @9.1.22 databases/postgresql91
postgresql92 @9.2.17 databases/postgresql92
postgresql93 @9.3.13 databases/postgresql93
postgresql94 @9.4.8 databases/postgresql94
postgresql95 @9.5.3 databases/postgresql95
postgresql96 @9.6beta2 databases/postgresql96
I det här exemplet, den senaste versionen av PostgreSQL som stöds i 9.6, så vi kommer att installera det.
sudo port install postgresql96-server postgresql96
Du kommer att se en installationslogg så här:
---> Computing dependencies for postgresql96-server
---> Dependencies to be installed: postgresql96
---> Fetching archive for postgresql96
---> Attempting to fetch postgresql96-9.6beta2_0.darwin_15.x86_64.tbz2 from https://packages.macports.org/postgresql96
---> Attempting to fetch postgresql96-9.6beta2_0.darwin_15.x86_64.tbz2.rmd160 from https://packages.macports.org/postgresql96
---> Installing postgresql96 @9.6beta2_0
---> Activating postgresql96 @9.6beta2_0
To use the postgresql server, install the postgresql96-server port
---> Cleaning postgresql96
---> Fetching archive for postgresql96-server
---> Attempting to fetch postgresql96-server-9.6beta2_0.darwin_15.x86_64.tbz2 from https://packages.macports.org/postgresql96-server
---> Attempting to fetch postgresql96-server-9.6beta2_0.darwin_15.x86_64.tbz2.rmd160 from https://packages.macports.org/postgresql96-server
---> Installing postgresql96-server @9.6beta2_0
---> Activating postgresql96-server @9.6beta2_0
To create a database instance, after install do
sudo mkdir -p /opt/local/var/db/postgresql96/defaultdb
sudo chown postgres:postgres /opt/local/var/db/postgresql96/defaultdb
sudo su postgres -c '/opt/local/lib/postgresql96/bin/initdb -D /opt/local/var/db/postgresql96/defaultdb'
---> Cleaning postgresql96-server
---> Computing dependencies for postgresql96
---> Cleaning postgresql96
---> Updating database of binaries
---> Scanning binaries for linking errors
---> No broken files found.
Loggen innehåller instruktioner om resten av installationsstegen, så vi gör det nästa.
sudo mkdir -p /opt/local/var/db/postgresql96/defaultdb
sudo chown postgres:postgres /opt/local/var/db/postgresql96/defaultdb
sudo su postgres -c '/opt/local/lib/postgresql96/bin/initdb -D /opt/local/var/db/postgresql96/defaultdb'
Nu startar vi servern:
sudo port load -w postgresql96-server
Kontrollera att vi kan ansluta till servern:
su postgres -c psql
Du kommer att se en fråga från postgres:
psql (9.6.1)
Type "help" for help.
postgres=#
Här kan du skriva en fråga för att se att servern körs.
postgres=#SELECT setting FROM pg_settings WHERE name='data_directory';
Och se svaret:
setting
------------------------------------------
/opt/local/var/db/postgresql96/defaultdb
(1 row)
postgres=#
Skriv \ q för att avsluta:
postgres=#\q
Och du kommer tillbaka med din skalprompt.
Grattis! Du har nu en körande PostgreSQL-instans på OS / X.
Postgres.app för Mac OSX
Ett extremt enkelt verktyg för att installera PostgreSQL på en Mac är tillgängligt genom att ladda ner Postgres.app .
Du kan ändra inställningar så att PostgreSQL körs i bakgrunden eller bara när applikationen körs.
Installera PostgreSQL på Windows
Det är bra att använda ett Unix-baserat operativsystem (ex. Linux eller BSD) som en produktionsserver, men du kan enkelt installera PostgreSQL på Windows (förhoppningsvis bara som utvecklingsserver).
Ladda ner Windows-installationsbinarierna från EnterpriseDB: http://www.enterprisedb.com/products-services-training/pgdownload Detta är ett tredjepartsföretag startat av kärnbidragsgivare till PostgreSQL-projektet som har optimerat binärerna för Windows.
Välj den senaste stabila versionen (icke-Beta) (9.5.3 i skrivande stund). Du kommer troligtvis vill ha Win x86-64-paketet, men om du kör en 32-bitarsversion av Windows, som är vanligt på äldre datorer, välj istället Win x86-32.
Obs: Växling mellan Beta- och Stable-versioner innebär komplexa uppgifter som dumpning och återställning. Uppgradering inom beta- eller stabilversion kräver endast en omstart av tjänsten.
Du kan kontrollera om din version av Windows är 32 eller 64 bitar genom att gå till Kontrollpanelen -> System och säkerhet -> System -> Systemtyp, som säger "## - bitars operativsystem". Detta är vägen för Windows 7, det kan vara något annorlunda i andra versioner av Windows.
I installationsprogrammet väljer du de paket du vill använda. Till exempel:
- pgAdmin ( https://www.pgadmin.org ) är ett gratis GUI för hantering av din databas och jag rekommenderar den starkt. I 9.6 installeras detta som standard.
- PostGIS ( http://postgis.net ) tillhandahåller geospatialanalysfunktioner på GPS-koordinater, avstånd etc. mycket populära bland GIS-utvecklare.
- Språkpaketet tillhandahåller obligatoriska bibliotek för officiellt stödda procedurspråk PL / Python, PL / Perl och PL / Tcl.
- Andra paket som pgAgent, pgBouncer och Slony är användbara för större produktionsservrar, endast kontrollerade vid behov.
Alla dessa valfria paket kan installeras senare via "Application Stack Builder".
Obs: Det finns också andra icke-officiellt stödda språk som PL / V8 , PL / Lua PL / Java tillgängliga.
Öppna pgAdmin och anslut till din server genom att dubbelklicka på dess namn, ex. "PostgreSQL 9.5 (localhost: 5432).
Från denna punkt kan du följa guider som den utmärkta boken PostgreSQL: Up and Running, 2nd Edition ( http://shop.oreilly.com/product/0636920032144.do ).
Valfritt: Manuell serviceuppstartstyp
PostgreSQL körs som en tjänst i bakgrunden som är något annorlunda än de flesta program. Detta är vanligt för databaser och webbservrar. Dess standardstarttyp är Automatisk vilket innebär att den alltid körs utan någon inmatning från dig.
Varför vill du kontrollera PostgreSQL-tjänsten manuellt? Om du använder din dator som utvecklingsserver en del av tiden men också använder den för att spela tv-spel till exempel, kan PostegreSQL bromsa ditt system lite medan det körs.
Varför skulle du inte vilja manuell kontroll? Att starta och stoppa tjänsten kan vara ett besvär om du gör det ofta.
Om du inte märker någon skillnad i hastighet och föredrar att undvika krångel, lämna sin starttyp som automatisk och ignorera resten av den här guiden. Annat...
Gå till Kontrollpanelen -> System och säkerhet -> Administrationsverktyg.
Välj "Tjänster" från listan, högerklicka på dess ikon och välj Skicka till -> Skrivbord för att skapa en skrivbordsikon för mer bekväm åtkomst.
Stäng fönstret Administrationsverktyg och starta sedan tjänster från skrivbordsikonen som du just skapade.
Rulla ner tills du ser en tjänst med ett namn som postgresql-x ## - 9. # (ex. "Postgresql-x64-9.5").
Högerklicka på postgres-tjänsten, välj Egenskaper -> Starttyp -> Manuell -> Använd -> OK. Du kan ändra det till automatiskt lika enkelt.
Om du ser andra PostgreSQL-relaterade tjänster i listan som "pgbouncer" eller "PostgreSQL Scheduling Agent - pgAgent" kan du också ändra deras starttyp till Manuell eftersom de inte använder mycket om PostgreSQL inte körs. Även om detta kommer att innebära mer krångel varje gång du startar och slutar så det är upp till dig. De använder inte så många resurser som PostgreSQL själv och kanske inte har någon märkbar inverkan på dina systemprestanda.
Om tjänsten körs kommer Status att säga Startat, annars körs inte.
För att starta det högerklicka och välj Start. En laddningsprompt visas och bör försvinna på egen hand strax efter. Om det ger dig ett fel kan du prova en gång till. Om det inte fungerar så fanns det något problem med installationen, eventuellt för att du ändrade någon inställning i Windows, de flesta ändrar inte, så att det kan behöva lite slutning för att hitta problemet.
För att stoppa postgres högerklicka på tjänsten och välj Stopp.
Om du någonsin får ett fel när du försöker ansluta till din databas kontrollera Services för att se till att det körs.
För andra mycket specifika detaljer om EDB PostgreSQL-installationen, t.ex. Python-runtime-versionen i det officiella språkpaketet för en specifik PostgreSQL-version, hänvisa alltid till den officiella EBD-installationsguiden , ändra versionen i länk till din installatørs huvudversion.
Installera postgresql med brygg på Mac
Homebrew kallar sig " den saknade pakethanteraren för macOS ". Det kan användas för att bygga och installera applikationer och bibliotek. När du har installerat kan du använda brew
att installera PostgreSQL och det är beroende på följande sätt:
brew update
brew install postgresql
Homebrew installerar vanligtvis den senaste stabila versionen. Om du behöver en annan så brew search postgresql
listar de tillgängliga versionerna. Om du behöver PostgreSQL byggd med speciella alternativ, då brew info postgresql
listar vilka alternativ som stöds. Om du behöver ett byggnadsalternativ som inte stöds kan du behöva bygga själv, men kan ändå använda Homebrew för att installera de vanliga beroenden.
Starta servern:
brew services start postgresql
Öppna PostgreSQL-prompten
psql
Om psql klagar över att det inte finns någon motsvarande databas för din användare, kör createdb
.
Installera PostgreSQL från källan på Linux
beroenden:
- GNU Gör version> 3,80
- en ISO / ANSI C-Compiler (t.ex. gcc)
- en extraherare som tjära eller gzip
- zlib-devel
- readline-devel eller libedit-devel
Källor: Länk till den senaste källan (9.6.3)
Nu kan du extrahera källfilerna:
tar -xzvf postgresql-9.6.3.tar.gz
Det finns ett stort antal olika alternativ för konfigurationen av PostgreSQL:
Full länk till hela installationsproceduren
Liten lista med tillgängliga alternativ:
-
--prefix=PATH
sökväg för alla filer -
--exec-prefix=PATH
sökväg för arkitektur-avhängig fil -
--bindir=PATH
sökväg för körbara program -
--sysconfdir=PATH
sökväg för konfigurationsfiler -
--with-pgport=NUMBER
ange en port för din server -
--with-perl
lägg till perl-stöd -
--with-python
lägg till python-stöd -
--with-openssl
lägg till openssl-support -
--with-ldap
lägg till ldap-stöd -
--with-blocksize=BLOCKSIZE
ställa in sidstorlek i KB-
BLOCKSIZE
måste ha en effekt på 2 och mellan 1 och 32
-
-
--with-wal-segsize=SEGSIZE
uppsättning storlek på WAL-segmentstorlek i MB-
SEGSIZE
måste vara en effekt på 2 mellan 1 och 64
-
Gå in i den nya skapade mappen och kör cofigure-skriptet med önskade alternativ:
./configure --exec=/usr/local/pgsql
Kör make
att skapa objectfiles
Kör make install
att installera PostgreSQL från de inbyggda filerna
Kör make clean
att städa upp
För tillägg växla katalogen cd contrib
, kör make
och make install