goneo mit sqlite Unterstützung

Screenshot von WordPress, Adminbereich (Dashboard)
MySQL ist ein tolles Datenbanksystem, das viele Operationen unterstützt. Für leichtgewichtigere Anwendungen reicht manchmal aber auch schon Sqlite. goneo Server unterstützen Sqlite dank des im Webserver integrierten pdo_sqlite Moduls mit den entsprechenden Bibliotheken. So kann man zum Beispiel auch WordPress mit Sqlite betreiben.

Normalerweise haben goneo Hostingpakete genügend Reserve, was die Anzahl der verfügbaren Datenbanken angeht. Zudem können auch mehrere Anwendungen sich eine Datenbank teilen. Die Unterscheidung wird oft mittels eines anwendungsspezifischen Tabellenprefix bewerkstelligt. Dennoch kann man sich Szenarien vorstellen, die eine serverunabhängige Datenbank als praktikabler erscheinen lassen. Vielleicht sind die Datenbanken voll oder eine Anwendung soll erst mal nur getestet werden.

Sqlite als eingebettete Datenbankalternative

Eine Möglichkeit für solche Zwecke ergibt sich dank SQLite.

Screenshot php.info unter PHP 5.5 als Apache Modul
Sqlite ist aktuell in der Version 3.x integriert

Die bei goneo einsetzbaren PHP-Versionen (aktuell von 5.3 bis 5.6) unterstützen Sqlite. Um es zu aktivieren, muss man nichts tun. Der Server verarbeitet entsprechenden Anweisungen. Damit steht Sqlite auf allen Hosting- und Servertarifen ab goneo Webhosting Basic L für 3,95 Euro im Monat zur Verfügung. Die Datendatei wird direkt im Webspace mitgespeichert. Es gibt also keine Limitierungen, was die Anzahl an Datenbanken, der Speichergröße und dergleichen betrifft.

Logo von sqlite
Sqlite ist ein relationales Datenbanksystem, das gerne in Anwendungen eingebettet wird, um Dateien strukturiert und serverunabhängig abspeichern zu können.

Sqlite unterstützt die gewohnten SQL Sprachbefehle. Berechtigungsbefehle wie „grant“ oder „revoke“ fehlen allerdings, da Sqlite in erster Linie für in Anwendungen eingebettete Datenbanken entworfen wurde. Zur Projektseite von Sqlite geht es hier: http://www.sqlite.org/
Mit einer Sqlite Datenbank benötigt man nicht viele Parameter, also keinen Datenbanknamen, kein Datenbankpasswort, keinen Datenbankhost etc.
WordPress lässt sich zum Beispiel mit Sqlite betreiben. Dafür gibt es ein Plugin, SQLite Integration. Um WordPress für Sqlite vorzubereiten, lädt man ein frisches WordPress-Installationspaket herunter, entpackt die Dateien lokal und lädt dann die Plugin – Dateien.

Dateien laden und anpassen

WordPress lässt sich hier downloaden: http://wordpress.org/download/
Das Plugin gibt es hier: http://wordpress.org/plugins/sqlite-integration/
Anschließend muss man die Plugindateien in das Pluginverzeichnis der WordPress-Installationspakets  verschieben und noch eine weitere Datei, nämlich db.php aus dem SQlite Plugin Verzeichnis in das Verzeichnis  wp-content kopieren.

Ausschnitt aus der Dateiauflistung für WordPress mit sqlite Plugin
So sieht die Dateistruktur aus, wenn die WordPress Installationsdateien mit dem Plugin Sqlite ergänzt wurden.

Dann muss das veränderte Installationspaket zum Server hochgeladen werden. Das sind etwa 18 MB an Daten. Anschließend muss man noch die Datei wp-config-sample.php in wp-config.php umbenennen und die Key anpassen. Die WordPress secret keys lassen sich hier generieren: https://api.wordpress.org/secret-key/1.1/salt/ (steht auch im Kommentarbereich der wp-config-Datei). Dann kann die Installation durch Aufruf des Domainnamens im Browser ausgeführt werden.

Mit diesem Plugin lassen sich MySQL und SQLite auch parallel benutzen. Wie, ist unter dem oben stehenden Link beschrieben.

So arbeitet das Plugin für WordPress

Das Plugin fängt MySQL Befehle ab und ersetzt diese, um Sqlite Statements zu formen. Das Ergebnis wird zurückgegeben.
Wie der Autor des Plugins betont, wird es mit verschiedenen Plugins Kompatibilitätsprobleme geben. Grund dafür die die MySQL Anweisungen der Plugins, die nicht verarbeitet werden können.

Screenshot FTP mit WordPress und der Sqlite Datei.
Die Datenbank findet man als Datei im Content-Verzeichnis von WordPress

Die Sqlite Datenbank selber wird im WordPress-Content-Verzeichnis vorgehalten. Unter wp-content befindet sich das Verzeichnis database mit einer Datei namens .ht.sqlite
Der Vorteil ist, dass bei einem Backup oder einer Migration auf einen anderen Server die Datenbankinhalte von WordPress, die ja normalerweise per MySQL angebunden sind, nicht extra gesichert werden müssen. Es würde also reichen, per FTP/SFTP die Daten runterzuladen und woanders wieder hochzuladen.
Wir haben das Plugin auf einem goneo Webserver Business getestet. Es lief alles einwandfrei. Aber: WordPress unterstützt Sqlite offiziell nicht. Es handelte sich in unserem Fall nur um eine einfache Grundinstallation ohne weitere Plugins. Wenn Bedarf besteht, können wir noch einige Tests vornehmen. Dafür bräuchten wir nur einen entsprechenden Hinweis.

Auch ownCloud lässt sich mit sqlite betreiben

Übrigens kann man auch die Onlinespeicher-Anwendung ownCloud, übrigens ohne Erweiterung und Codeumschreibung, mit einer Sqlite Datenbank betreiben. Dies ist hier dokumentiert (engl.): https://doc.owncloud.org/server/6.0/admin_manual/configuration/configuration_database.html
Wenn nicht so viele Mitbenutzer angelegt werden, also nicht mehr als vier, berichte manche Quellen, soll das durchaus noch praktikabel sein. ownCloud empfiehlt aber nur einen Benutzer, wenn man Sqlite verwendet.

Eine Antwort auf „goneo mit sqlite Unterstützung“

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert