My Universe Logo

Bye MySQL – Hello PostgreSQL

Posted by Jesco Freund at June 12, 2008 11:37 p.m.

Nach nunmehr beinahe 8 Jahren Dauereinsatz auf diversen Servern und Entwicklungssystemen habe ich mich heute von einem langjährigen Begleiter getrennt: MySQL. Ob als Backend für diverse Web-Applikationen oder für meine Mailserver – bislang hat es mir stets gute Dienste geleistet.

Warum nun der Wechsel zum Elefanten? Aus meiner Sicht sprechen momentan einige Gründe für PostgreSQL. Zunächst einmal habe ich seit der Entsorgung der letzten Typo3-Seite von meinem Server keine Applikation mehr im Einsatz, die MySQL zwingend voraussetzt. Dafür mehren sich Applikationen wie etwa Trac und andere Python-Anwendungen (auch einige Eigenentwicklungen, die auf Django basieren), die mit PostgreSQL einfach besser zurecht kommen. Natürlich beherrscht MySQL mit InnoDB Dinge wie Foreign Key Constraints oder Transaktionen. Viele Anwendungen gehen bei MySQL aber vom Worst Case (aus Sicht des Programmierers wäre das MyISAM) aus, was ich ob des zusätzlichen Programmieraufwands für eine Überprüfung der verfügbaren Engines durchaus nachvollziehen kann.

Nicht zuletzt sprechen aber auch aus administrativer Sicht einige Gründe für PostgreSQL. Dank der Crash Recovery Funktion und des Write Ahead Logs und seinen fein steuerbaren Logfile-Wechseln lässt sich in Verbindung mit Dateisystem-Snapshots (etwa über ZFS oder LVM) ein Hot Backup realisieren, ohne dafür ein aufwändiges Master-Slave Setup zu bemühen. Diese Annehmlichkeit wäre für ein MySQL-Setup mit InnoDB nur gegen teures Geld zu haben gewesen und damit für den Hobby-Einsatz kaum finanzierbar.

Kurzum: Ich war mit MySQL keinesfalls unzufrieden. PostgreSQL entspricht derzeit aber in einigen Punkten einfach besser meinen Anforderungen, weshalb ich mich für den Wechsel entschieden habe.

No comments | Defined tags for this entry: MySQL, PostgreSQL

Comments

No comments