PostgreSQL
Ursprünglich wurde POSTGRES als universitäres Projekt an der University of California at Berkeley Computer Science Department entwickelt. Von vielen Entwicklern auf der ganzen Welt wurde seither an diesem Code weitergearbeitet und dieser bekam 1996 den Namen PostgreSQL. Es ist damit eines der ältesten und am weitesten fortgeschrittenen objektrelationalen Datenbankmanagementsysteme (ORDBMS) im Bereich der freien Software.
Es ist als Open-Source-Programm frei verfügbar und darf ohne Lizensierung heruntergeladen und benutzt werden. PostgreSQL bietet eine Reihe eigener Erweiterungen an, unterstützt die SQL92 und SQL99 Standards, implementiert die Speicherung nicht atomarer Daten, Vererbung und Objektidentitäten und erlaubt Benutzern, das System um selbstdefinierte Datentypen, Operatoren und Funktionen zu erweitern.
Es unterstützt die referentielle Integrität und zu den weiteren Leistungsmerkmalen gehört ein fortschrittliches Transaktionsmanagement, wie die Definition von Triggern und Regeln, mit denen Zugriffe auf Datenbankobjekte gesteuert werden können.
PostgreSQL basiert auf einem Client-Server-Modell: Ein Serverprozess verwaltet die Verbindungen, sowie die Datenbankdateien, die von Client-Programmen zum Server aufgebaut werden und bearbeitet die Anfragen, die von diesen Client-Programmen gestellt wurden. Das Serverprogramm "postmaster" erledigt diese Aufgaben und ermöglicht die Kommunikation mit den unterschiedlichsten Client-Programmen. Mit einem Client-Programm werden Verbindungen zum Datenbankserver aufgebaut und Aktionen in der Datenbank ausgeführt. Für das Client-Server-Modell ist eine verteilte Architektur typisch, Client und Server müssen nicht gemeinsam installiert sein. Sie kommunizieren über eine TCP/IP Verbindung, da der PostgreSQL Server viele parallele Verbindungen verwalten kann.
Die Größe der Datenbank ist unbegrenzt und wird eher durch das Speichervolumen beschränkt. Die PostgreSQL-Distribution enthält mit "psql" einen einfachen und schnellen Datenbankmonitor und einen grafischen Client „pgAccess“.