Hopp til innhold

PostgreSQL

Fra Wikipedia, den frie encyklopedi
Sideversjon per 17. aug. 2006 kl. 10:43 av TommyG (diskusjon | bidrag) (Kopiert fra Linuxguiden.no)

PostgreSQL er en avansert SQL-databasetjener med en tilnærmet komplett støtte for SQL92- og SQL99-standardene.

Historie og lisensiering

PostgreSQL er basert på POSTGRES, som ble utviklet ved University of California. PostgreSQL er i dag et åpen kildekode-prosjekt, med en svært liberal lisens. Denne gjør at PostgreSQL kan brukes, modifiseres og distribueres av såvel private som kommersielle foretag uten noen som helst økonomisk kompensasjon til de originale utviklerne.

PostgreSQL har en lang rekke egenskaper som man forventer av et fullverdig databasesystem. Disse er blant annet komplekse spørringer, fremmednøkler, utløsere (eng: triggere), visninger (eng: views) og transaksjoner.

Det er også store muligheter for brukerne selv til å utvide PostgreSQLs egenskaper, og det er f.eks mulig å legge til nye datatyper, funksjoner, operatører, aggregerte funksjoner, index-metoder og prosedyrespråk.

Tekniske egenskaper

  • Full ACID-støtte.
  • Kompatibilitet med ANSI SQL-standarden
  • Referanseintegritet
  • Replikering. Se eget avnsitt i denne artikelen.
  • Innebygd grensesnitt for ODBC, JDBC, C, C++, PHP, Perl, TCL, ECPG, Python, og Ruby
  • Regler (eng: rules)
  • Visninger.(eng: views)
  • Utløsere (eng: triggers)
  • Unicode
  • Sekvenser
  • Objektrelasjonsstøtte gjennom arv.
  • Ytre sammenføyninger (eng: outer joins)
  • Underspørringer (eng: sub-selects)
  • Et åpent API
  • Lagrede prosedyrer
  • Innebygget SSL-støtte
  • Prosedyrespråk
  • Bedre enn radnivålåsing
  • Funksjonelle og begrensede indexer
  • Innebygget Kerberos-autentisering
  • Støtte for spørringer som UNION, UNION ALL og EXCEPT
  • Lastbare utvidelser med støtte for SHA1, MD5, XML og annen funksjonalitet
  • Utvidbart datatypesystem, som gjør det mulig å definere egne datatyper


Administrasjonsverktøy

Det finnes en rekke grafiske verktøy for administrasjon av PostgreSQL. pgadmin, pgaccess og phpPgAdmin er antageligvis blant de mest kjente.

Replikering og lastbalansering

Det er i dag flere replikerings-tillegg for PostgreSQL. Den mest omtalte nå er Slony-I som er utviklet av en av PostgreSQL sine hovedutviklere. Slony-I er et master-slave replikerings-system som gir mulighet for for å replikere databasene til en eller flere slavesystemer. Dette kan godt brukes til f.eks. feilhåndtering hvis databasetjeneren feiler.

I likhet med replikering er lastbalansering noe mange trenger. Pgpool er en av flere løsninger for lastbalansering. Pgpool gir mulighet til å spre belastningen over flere replikerte PostgreSQL-tjenere. Pgpool kan brukes sammen med Slony-I.

Det var lenge en debatt rundt replikerings-mulighetene til PostgreSQL. Det var flere tillegg, men noen var godseid programvare mens andre var uferdige. I dag brukes Pgpool og Slony-I i mange større løsninger internasjonalt.

Brukerstøtte

PostgreSQL har et stort online utviklersamfunn, og det er derfor lett å få hjelp om man står fast.

Første stopp bør alltid være dokumentasjonen.

E-postlistene er neste stopp dersom man ikke finner frem til det man trenger i dokumentasjonen. Det finnes en lang rekke e-postlister, og det lønner seg å se over beskrivelsen av alle, slik at man velger den listen som er mest relevant for det spørsmålet du ønsker svar på. E-postlistene er også tilgjengelig for lesing gjennom nyhetsgrupper, på servere news.postgreqsql.org.

Til slutt har man #postgresql på irc.freenode.net som er en IRC-kanalfreenodenettverket. Her sitter det ofte mange svært kunnskapsrike folk, og er en god plass å gå dersom man har vært igjennom punktene over, og fremdeles ikke kommer noen vei.

Eksterne ressurser