Vor ein paar Tagen habe ich nachträglich Prosody auf meinem Server an eine MySQL-Datenbank angebunden. Diese Funktion hat einige Vorteile gegenüber der herkömmlichen Speicherung der Daten im Datenverzeichnis.
Die Anbindung an MySQL ist relativ einfach. Deshalb möchte ich hierauf nicht weiter eingehen.
Mit dem Prosody Migrator kann man nun den Altbestand der User in die Datenbank übernehmen. Der Pfad des Datenverzeichnisses ist in meinem Fall /etc/prosody/data. Zu beachten wäre, dass alle schon vorhandenen User-Daten dabei überschrieben werden.
Um mit der Migration zu beginnen, wechselt man in das Verzeichnis in dem der Ordner „data“ liegt.
1 |
# cd /etc/prosody |
Von der Beispiel-Konfiguration sollte man vorhe eine Sicherung anlegen.
1 |
# cp migrator.cfg.lua migrator.cfg.lua_bak |
Nun öffnet man die Config und bearbeitet diese folgendermaßen:
1 |
# nano migrator.cfg.lua |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
local data_path = '/etc/prosody/data'; input { type = "prosody_files"; path = data_path; } mydatabase { type = "prosody_sql"; driver = "MySQL"; database = "Name der Datenbank"; username = "Benutzername der Datenbank"; password = "Passwort der Datenbank"; host = "localhost"; } --[[ input { type = "prosody_files"; path = data_path; } output { type = "prosody_sql"; driver = "SQLite3"; database = data_path.."/prosody.sqlite"; } ]] |
Hierbei ist der Pfad (falls data woanders liegt) sowie die Zugangsdaten zur MySQL-Datenbank anzupassen. Das Ganze speichert man mit Ctrl + o und verlässt den Editor mit Ctrl + x. Nun migriert man mit
1 |
# prosody-migrator input mydatabase |
alle bestehenden Accounts. Erscheint
Migrating…
Done!
war die Migration erfolgreich.
Viel Spaß!
Kannst du noch mal kurz auf die Vorteile der DB-Anbindung angehen? Ich hatte nämlich auch überlegt, ob ich dann mal wechsle :/
Vorteile sehe ich darin, das Ganze besser abministrieren zu können. Gerade bei einem nochmaligen Umzug wäre nur das Backup der DB einzuspielen. Aktivitäten können weiterhin gut überwacht werden. So ist es dann auch relativ einfach inaktive Accounts zu identifizieren und dann ggf. zu löschen.
Weiterhin bilde ich mir ein, dass sich die Clients schneller mit dem Server verbinden.
Lässt sich das data-Verzeichnis nicht ebenso einfach administrieren?
Da ich schon ein paar Mal umgezogen bin, finde ich die Datenbanklösung viel komfortabler. Natürlich ist auch ein Datenverzeichnis administrierbar. Auch hier muss man natürlich genau wissen was man tut. Bei Hostern wie Uberspace ist es gar nicht erst möglich Prosody an eine Datenbank anzubinden.