Kategorien
Allgemein

Buchhaltungssoftware MonKey Office: cubeSQL Datenbank auf einer Synology Diskstation ablegen und nutzen

Hinweis/Disclaimer: Dies ist keine Steuerberatung!
Das Geschriebene dient allgemeinen Informationszwecken und stellt lediglich meine eigene Meinung dar. Es handelt sich stets nur um Beispielsituationen oder Buchungsbeispiele. Ich übernehme keinerlei Gewähr für die Richtigkeit, Vollständigkeit oder Aktualität der bereitgestellten Informationen.
Insbesondere stellt dies keine Rechts- oder Steuerberatung dar und ersetzt diese keinesfalls. Bitte frage zu allen steuerlichen und rechtlichen Details immer deinen Steuerberater, der auf deine individuelle Situation eingehen kann.

MonKey Office kann natürlich problemlos mit einer lokal auf dem Computer gespeicherten Datenbank umgehen. Oft möchte man aber mit mehreren Personen von unterschiedlichen Orten aus auf die Buchhaltung und damit die entsprechende Datenbank zugreifen können. Wer jetzt auf die Idee kommt, die Datenbank einfach über eine Dateifreigabe z.B. über Dropbox, Synology Drive oder Google Drive zu synchronisieren, sollte aufpassen: Da die Datenbank nicht für gleichzeitigen Zugriff gewappnet ist, kann die Datenbank sehr wahrscheinlich dabei beschädigt werden.

Die saubere Lösung für dieses Problem ist, einen cubeSQL-Server aufzusetzen. Das machen wir auf einem NAS, in diesem Fall einer Synology Diskstation.

Docker-Image installieren

Logge dich auf deiner Synology Diskstation als Administrator ein, installiere ggf. das Docker-Paket (wenn nicht bereits vorhanden) und öffne Docker. Klicke dort auf „Registrierung“ (gemeint ist der Docker Hub, wo man Container Images finden kann) und suche nach „cubeSQL“. Wir wählen das Docker-Image von „jotools“, auch zu finden unter https://hub.docker.com/r/jotools/cubesql, und installieren die neuste Version.

Lege anschließend auf dem Dateisystem deiner Diskstation einen Ordner an, in dem die Datenbank für MonKey Office gespeichert werden soll.

Wenn der Download des Docker-Images abgeschlossen ist, findest du das Image unter „Abbild“. Klicke es an und klicke auf „Starten“. Vergebe einen Containernamen (z.B. „cubeSQL“) und klicke auf „Erweiterte Einstellungen“.

Mache dort folgende Einstellungen:

  • Volume: „Ordner hinzufügen“ und wähle den eben erstellten Ordner auf der Diskstation aus. Als „Mount-Pfad“ trägst du „/data“ ein (ohne Anführungszeichen). Setze keinen Haken bei „Nur Lesen“.
  • Möchtest du, dass die Datenbank auch außerhalb des lokalen Netzwerks über das Internet erreichbar ist, dann setze bei „Port-Einstellungen“ noch „Lokaler Port: 4430“ und „Container-Port: 4430“. Anschließend musst du an deinem Router den Port 4430 für Zugriffe aus dem Internet freigeben. Stelle dann insbesondere sicher, dass du das default-Passwort deines cubeSQL-Servers änderst.
  • Klick auf „Übernehmen“ und „Weiter“, bis der Container angelegt und gestartet wurde.

Wenn der Container erfolgreich läuft, findet man ihn jetzt unter „Container“.

Kostenlosen Lizenzschlüssel anfordern

Man kann für cubeSQL eine kostenlose Lizenz erhalten, so lange man nicht mehr als zwei gleichzeitige Verbindungen zum SQL-Server aufbaut. Die Lizenz ist zeitlich nicht beschränkt und kann über folgendes Formular beantragt werden https://www.sqlabs.com/cubesql_devkey
Nach Eingabe von Name und Emailadresse wird einem der Lizenzschlüssel unmittelbar per Email zugestellt.

Lizenzschlüssel eintragen

Um den cubeSQL-Server zu konfigurieren, benötigt man das „cubeSQL Admin Tool“, welches man hier herunterladen kann: http://www.sqlabs.com/cubesql_download.php#admin
Nach dem Download auf den lokalen Computer, kann man das Tool direkt starten und verbindet sich mit dem cubeSQL-Server mit den folgenden default-Nutzerdaten:

Hostname: IP-Adresse bzw. DynDNS-Domain (ohne „http(s)“) der Synology Diskstation; z.B. 192.168.0.42 oder mydiskstation.synology.me
Username: admin
Password: admin
Port: 4430
Encryption: AES256
–> Klick auf „Connect“

Anschließend klickt man im Menü auf „Server“ –> „Register Server…“ und gibt dort den registrierten Namen und Lizenzschlüssel aus der Email ein.

Default-Passwort des cubeSQL-Servers ändern

Klicke im „cubeSQL Admin Tool“ auf „Users & Groups“ –> Doppelklick auf den Nutzer „admin“ –> unter „change password to“ das neue Passwort eintragen.
Hinweis: Gewisse Sonderzeichen sind für das Passwort nicht erlaubt und führen zu einem Fehler nach dem Klick auf „Save“. Außerdem kann der default-Nutzername „admin“ nicht abgeändert werden.

Grundsätzlich, aber inbesondere bei Erreichbarkeit des cubeSQL-Servers über das Internet (statt nur im lokalen Netzwerk), ist es zu empfehlen, das Standardpasswort in ein sicheres Passwort abzuändern!

Verbindung mit MonKey Office herstellen

Zu erst müssen wir kurzzeitig eine lokale Datenbank anlegen, die wir im nächsten Schritt auf den cubeSQL-Server hochladen. Wurde MonKey Office bereits lokal genutzt und ist somit schon eine Datenbankdatei auf dem Computer vorhanden, dann muss natürlich keine neue Datenbank angelegt werden und man kann den folgenden Schritt überspringen.

Starte MonKeyOffice und klicke auf „Neue Datenbank anlegen…“. Wähle einen vorübergehenden Speicherort (z.B. den Desktop) und einen Dateinamen für die Datenbank und klicke auf „Speichern“. Eine neue Firma wollen wir erst später anlegen und klicke deswegen bei entsprechender Frage auf „Abbrechen“.

Jetzt schließen wir MonKey Office wieder und wählen „Programm beenden“ und klicken auf „OK“.

Anschließend starten wir MonKey Office erneut (dabei die Shift-Taste gedrückt halten, um direkt in den passenden Dialog zu kommen) und klicken auf „Mit cubeSQL-Server verbinden…“.

Dann gibst du die Server- und Login-Daten an, wie oben schon beim „cubeSQL Admin Tool“ geschehen, und klickst auf „Verbindung herstellen“.

Solltest du einen falschen Nutzernamen oder ein falsches Passwort eingegeben haben, wird dir dies konkret von MonKey Office in einer Fehlermeldung zurückgemeldet.

Wenn du eine Fehlermeldung „Connection timeout while trying to connect“ erhältst, dann ist der eingegebene Server zwar grundsätzlich erreichbar, blockiert die Verbindung aber ggf. aufgrund von Firewall-Einstellungen. Das kann z.B. der Fall sein, wenn du versuchst über deine DynDNS-Adresse (z.B. mydiskstation.synology.me) auf deinen Server zugreifen, der entsprechende Port (hier z.B. 4430) aber in deinem Router nicht nach außen zum Internet hin freigegeben ist. Dies kann man einfach testen, indem man stattdessen im lokalen Netzwerk die IP-Adresse der Diskstation eingibt. Funktioniert die Verbindung daraufhin, hat der Fehler höchst wahrscheinlich mit falschen oder fehlenden Einstellungen an deinem Router zu tun.

Wenn die Verbindung erfolgreich hergestellt werden konnte (Meldung „Verbunden mit [cubeSQL@…]“), wechselt man auf den Tab „Verwalten“ und klickt auf „Datenbank auf server hochladen…“ und wählt die eben erstellte (oder bereits länger lokal genutzte) Datenbankdatei aus. Wenn der Upload abgeschlossen ist, erscheint die Datenbank unter „Aktive Datenbanken auf dem Server“. Markiere diese in der Liste und schließe mit einem Klick auf „OK“ ab.

Anschließend wird man erneut dazu aufgefordert, eine neue Firma anzulegen, was man jetzt erledigen kann.

Da die Datenbank nun auf dem cubeSQL-Server liegt, benötigt man die eben temporär auf dem Computer angelegte Datenbank nicht mehr und kann diese Datei löschen.

Automatisches Backup der Datenbank einrichten

Um ein automatisches Backup einzurichten, nutzt man wieder das „cubeSQL Admin Tool“. Dort klickt man auf „Schedules“ und macht folgende Einstellungen

  • Name: <Datenbank-Dateiname>.sdb.backup
  • Type: Backup
  • Option: RETAIN OLD
    • dadurch werden auch die alten Sicherungen behalten und nicht überschrieben
  • Tage und Uhrzeit: entsprechend dem gewünschten Sicherungszeitplan einstellen
  • Special: None
  • Intervall: z.B. „every week“
  • schedule enabled: Haken setzen
  • –> Klick auf „Add“

Anschließend wird der neu angelegte Backupplan noch für die entsprechende Datenbank aktiviert: Klick auf „Databases“ –> Auswahl der zu sichernden Datenbank –> Klick (oben) auf Menü „Server“ –> „Manage Schedules…“ –> Auswahl des eben erstellten Backupplans (“ <Datenbank-Dateiname>.sdb.backup „) –> „Attach“

Alternative zur Installation via Docker

Im Blog von SQLabs wird beschrieben, wie man cubeSQL auch direkt als Drittanbieter Paket auf der Synology Diskstation installieren kann. Die Installation dieses Pakets wird aber auf neueren Synology NAS Systemen ggf. nicht mehr unterstützt.

Schreibe einen Kommentar

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