PostgreSQL

Aus GISpunkt HSR
Version vom 6. April 2015, 01:08 Uhr von Stefan (Diskussion | Beiträge) (Desktop-Apps mit PostgreSQL)

(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Wechseln zu: Navigation, Suche

PostgreSQL ist eines der bewährtesten Datenbanksysteme im Bereich der Open Source Software. PostgreSQL ist weitgehend SQL-konform und braucht einen Vergleich mit bekannten Produkten nicht zu scheuen, insbesondere was die Wartbarkeit (Total Cost of Ownership), Funktionalität und Geschwindigkeit betrifft. PostgreSQL wird zunehmend in Dienstleistungsbetrieben und in öffentlichen Verwaltungen eingesetzt. beispielsweise für Geodaten.

Postgres war der erste Projekt- bzw. Produktname und entstand aus 'Post' und 'Ingres'. Ingres war das von Prof. Stonebraker initiierte Vorgängerprojekt.

Siehe auch:


Hinweise

  • Die Volltextsuche (Module 'Open Full Text Search', OpenFTS) ist ab PostgreSQL Version 8.3 Bestandteil der Standardlieferumfangs, das Modul TSearch2 ist also ein veralteter Vorgänger davon.
  • Performance tuning: Siehe PostgreSQL - Tipps und Tricks.

Bücher

  • Douglas & Douglas, PostgreSQL,
  • Peter Eisentraut & Bernd Helmle, PostgreSQL-Administration, O'Reilly Verlag, ISBN 978-3-89721-777-5 (sehr empfehlenswert)
  • PostgreSQL 9.0 High Performance, Packt, 2010. [1]

Software

Installation unter Windows:

Frontend- und Administrations-Software:

Erweiterungs-Module (Backend):

  • Slony1/Slony-I zur Daten-Replikation sowie Cascading und Switch-/Fail-over.
  • PGCluster - Enthält einen Load Balancer, eine Cluster DB, und ein Replikations-Server für PostgreSQL.
  • Pgpool - Ein Connection Pool Server für PostgreSQL. Sitzt als Connection-Cache zwischen Clients und PostgreSQL-Server. Zudem können damit zwei PostgreSQL-Servers für Fail over verbunden werden. Zudem ist "scheduled switch over" möglich. Pgpool-II behebt die Limitation auf 2 Server.
  • PostGIS - die Geometrie-Funktionen-Erweiterung (PostgreSQL Version 8 hat PostGIS integriert, falls bei der Installation angegeben).
  • PostLBS - mit dem Modul pgRouting zur Berechnung des kürzesten Weges und des "Problems des Handlungsreisenden" und dem Modul GeoCoder (nur Japan).
  • SDBC Driver - Treiber zur direkten Nutzung von PostgreSQL aus OpenOffice heraus ohne 'Umweg' über JDBC/ODBC.

Installation

Download:

Windows-Installation:

  1. Die Windows Version von PostgreSQL enthält PostGIS als optionale Komponente.
  2. Weil der Release-Zyklus von PostgreSQL unterschiedlich ist von demjenigen von PostGIS, enthält der offizielle PostgreSQL Windows installer meistens eine ältere PostGIS-Version. Dies genügt für viele Zwecke.
  3. Wer die neuste PostgreSQL und die neuste PostGIS-Version haben will, installiert zuerst PostgreSQL ohne PostGIS. Dann kann der PostGIS installer gestartet werden (Download von http://www.postgis.org/download/windows).

Linux:

  • Tipps:
    • Unbedingt mit Language Support psql compilieren.

Migration von Oracle und MySQL

  • Migration von ORACLE nach PostgreSQL: siehe PGConf-Konferenzen.
  • Migration von MySQL nach PostgreSQL: siehe PostgreSQL for MySQL Users.

FAQ

Support

Wie bei jedem Open Source-Projekt bietet sich die Community (d.h. Mailinglisten) für Support an.

Neu gibt es eine auch Website für den professionellen Support im deutschsprachigen Raum: http://www.postgres-support.ch

Weblinks:

Bugs and Feature Requests

Es gibt keinen Bug Tracker in PostgreSQL. Aber es gibt eine Todo-Liste mit Bugs und Feature Requests.

Tipps und Tricks zu PostgreSQL

Siehe PostgreSQL - Tipps und Tricks.

Performance Optimierung von PostgreSQL

Siehe PostgreSQL optimieren.

Desktop-Apps mit PostgreSQL

Eine sehr häufig gestellte Frage ist, ob es Desktop GUI-Werkzeuge Open Source (und u.a. unter Windows lauffähig) gibt für datenlastige Applikationen ähnlich MS Access, FileMaker oder Visual FoxPro?

Leider gibt es dazu keine direkte Antwort:

  1. LibreOffice Base mit PostgreSQL/pgAdmin (DB-Admin).
  2. Camelot: http://www.python-camelot.com - PyQt, sehr aktiv.
  3. DaboDev: http://dabodev.com/ , wxpython.

Ansonsten bleibt nur, Applikation selbst mit Python und QT erstellen, d.h. Standalone mit QT5 und SQLAlchemy.