Die Daten fest im Griff

Open-Source Datenbanksysteme

Spätestens wenn das Adressbuch voll ist und der Karteikasten überquillt, sollten Sie sich nach einem geeigneten Datenbanksystem umsehen.

Bevor Sie sich auf teure, proprietäre Lösungen stürzen, lohnt sich ein Blick auf die oft nicht weniger leistungsstarken Open-Source-Vertreter. In diesem Artikel wollen wir Ihnen die Konzepte freier Datenbanken näherbringen und den praktischen Umgang mit den passenden Hilfswerkzeugen erklären.

Der Einsatz größerer Datenbank-Management-Systeme (DBMS) setzt allerdings voraus, dass Sie eine Vorstellung davon haben, was Sie von so einem System erwarten. Typische Merkmale sind Datensicherheit, Integrität, Performance, Schnittstellen nach außen (z. B. zu Ihrer Internet-Seite oder zu einem Frontend für das eigene Photoalbum) und schließlich die Bedienerschnittstelle zum DBMS selbst. Eine häufig anzutreffende Fehleinschätzung ist, dass eine Tabellenkalkulation wie Excel oder StarCalc und ein DBMS ähnlichen Funktionsumfang bieten.

Bei der Suche nach dem passenden Programm werden Sie hauptsächlich über die Namen folgender etablierter Open-Source-Systeme stolpern: MySQL, mSQL und PostgreSQL. Sie alle haben Anhänger, die auf die eigene Lösung schwören und mit Negativ-Argumenten für die Gegenseite nicht zurückhaltend sind. Tatsächlich sind alle genannten Systeme sehr geeignet, nur ist eben jedes System auf unterschiedlichen Gebieten stärker als das andere. Informationen dazu finden Sie unter [1] und [3].

Qual der Wahl

In diesem Artikel haben wir uns dafür entschieden, PostgreSQL genauer unter die Lupe zu nehmen. Nicht, weil wir es für überlegen halten, sondern weil die grundsätzliche Funktionalität dieselbe wie etwa bei MySQL ist. Deshalb gilt: Wenn Sie sich gut in PostgreSQL auskennen, wird es Ihnen nicht schwer fallen, sich in MySQL oder Oracle einzuarbeiten.

Ursprünglich stammt PostgreSQL von der Universität Berkeley (erst Ingres genannt, später Postgres95), wird seit 1996 aber von einer Gruppe weltweit verstreuter Open-Source-Programmierer weiterentwickelt. Es ist die einzige wirklich freie Datenbank, die schon immer selbst komplizierte Verarbeitungsmechanismen wie zum Beispiel Transaktionen (siehe Kasten "Transaktionen"), unterstützt hat.

Transaktionen

Transaktionen sind ein sinnvolles DBMS-Feature, wenn es darum geht, die Integrität bei Datenbestandsveränderungen zu gewährleisten. Stellen Sie sich vor, Herr Müller möchte an Frau Huber 50000 Mark überweisen. Die Datenbank wird zunächst versuchen, den Betrag vom Kontostand des Herrn Müller zu subtrahieren. Wenn dieser Vorgang erfolgreich abgeschlossen wurde, kann die Datenbank in einem weiteren Schritt die Differenz auf den Kontostand von Frau Huber addieren. Das sind im Wesentlichen zwei getrennte Operationen.

Fällt nun nach dem ersten Schritt der Strom aus, dann ist Herr Müller ärmer, aber Frau Huber wartet noch immer auf das versprochene Geld. Mit einer Transaktion wäre das nicht passiert, denn innerhalb dieser werden beide Operationen erst dann gemeinsam ausgeführt, wenn das DBMS sicher gestellt hat, dass dies möglich ist (Herr Müller hat vielleicht nur 5 Mark auf dem Konto und darf nicht überziehen). Angefangene Teiloperationen würden bei einem Systemausfall oder anderen Problemen einfach rückgängig gemacht (Roll-Back), so dass keine Inkonsitenz entstehen kann.

Transaktionen gibt es natürlich nicht nur bei PostgreSQL; mittlerweile wird dieser Mechanismus (mit marginalen Einschränkungen) auch vom populären MySQL unterstützt.

Programm-Installation

PostgreSQL ist in vielen Linux-Distributionen enthalten. Sie können also auf den gewohnten Installer von CD-ROM zurückgreifen, falls die Pakete noch nicht auf Ihrem System eingerichtet sind. Alternativ besteht die Möglichkeit, entsprechende Dateien in diversen Paketformaten direkt von einer der deutschen Mirror-Seiten zu beziehen [2]. Die Sourcen stehen ebenfalls zur Verfügung, doch das Übersetzen von derart umfangreichen Programmen ist eher eine Angelegenheit für Tüftler und für unsere Zwecke nicht nötig.

PostgreSQL (ebenso wie MySQL oder mSQL) ist ein Server-Prozess, der ständig im Hintergrund läuft. Daher ist es aus Sicherheitsgründen wichtig, dass dieser nicht vom Administrator root gestartet wird. Legen Sie sich also nach der Installation mit

adduser postgres

einen Dummy an (falls dieser User nicht eh schon eingerichtet ist), mit dem Sie in Zukunft den PostgreSQL-Server starten werden.

Datenbank-Erstellung

Jede Datenbank benötigt entweder eine gesamte Partition der Festplatte oder zumindest einen fest definierten Bereich im File-System, in dem sie die Informationen halten kann. Es bietet sich meistens an, die Daten in /usr/local/pgsql/data abzulegen. (Alternativ ist bei manchen RPM-Paketen von PostgreSQL automatisch /var/lib/pgsql/data voreingestellt und bereits angelegt.)

mkdir /usr/local/pgsql/data
 chown postgres /usr/local/pgsql/data

Werden Sie mit su postgres zum User postgres und erstellen Sie das Grundgerüst für Ihre Datenbank:

initdb -D /usr/local/pgsql/data

Sie sind nun soweit, den Server zum ersten Mal zu starten. Bleiben Sie als User postgres angemeldet und setzen Sie das folgende Startkommando auf der Konsole ab:

postmaster -i -D /usr/local/pgsql/data &

Damit ist die Einrichtung abgeschlossen. PostgreSQL ist einsatzbereit und erwartet Ihre Kommandos und Daten.

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

Kommentare

Infos zur Publikation

LU 09/2017 PERFEKTE FOTOS

Digitale Ausgabe: Preis € 5,95
(inkl. 19% MwSt.)

LinuxUser erscheint monatlich und kostet 5,95 Euro (mit DVD 8,50 Euro). Weitere Infos zum Heft finden Sie auf der Homepage.

Das Jahresabo kostet ab 86,70 Euro. Details dazu finden Sie im Computec-Shop. Im Probeabo erhalten Sie zudem drei Ausgaben zum reduzierten Preis.

Bei Google Play finden Sie digitale Ausgaben für Tablet & Smartphone.

HINWEIS ZU PAYPAL: Die Zahlung ist ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!

Aktuelle Fragen

kein foto, etc. upload möglich, wo liegt mein fehler?
kerstin brums, 17.09.2017 22:08, 4 Antworten
moin, zum erstellen einer einfachen wordpress website kann ich keine fotos uploaden. vom rechne...
Arch Linux Netzwerkkonfigurationen
Franziska Schley, 15.09.2017 18:04, 0 Antworten
Moin liebe Linux community, ich habe momentan Probleme mit der Einstellung des Lan/Wlan in Arc...
WLan mit altem Notebook funktioniert nicht mehr
Stefan Jahn, 22.08.2017 15:13, 0 Antworten
Ich habe ein altes Compaq-6710b Notebook mit Linux Mint Sonya bei dem WLan neulich noch funktioni...
Würde gerne openstreetmap.de im Tor-Browser benutzen, oder zu gefährlich?
Wimpy *, 21.08.2017 13:24, 2 Antworten
Im Tor-Netzwerk (Tor-Browser) kann ich https://www.openstreetmap.de/karte.html# nicht nutzen....
Samsung VG-KBD1500 - Bluetooth-Tastatur mit Touchpad mit Xubuntu 16.04.2 LTS
Linux- & BSD-UserGroup im Weserbergland, 16.08.2017 19:16, 0 Antworten
Bin grad mit "meinem Latein am Ende" darum hier mal so in den Raum geworfen. Samsung VG-KBD1500 -...