Beiträge von lhsei

    Hallo,


    ja, der Eintrag unter /mnt/HDA_ROOT/.config/crontab macht es bootfest.


    Rückspielen der Datenbank würde ich immer über die Konsole machen:


    mysql -u root -pPASSWORT <SICHERUNGSDATEI.SQL


    Erklärung:

    Passwort ist das root-Passwort Deiner Mysql-Instanz. Sicherungsdatei.sql ist die komplette Sicherungsdatei (in der alle Datenbanken enthalten sind).


    Wenn Du nur die Nextcloud-DB zurückspielen möchtest, sieht der Befehl wie folgt aus

    mysql -u root -pPASSWORT DROP DATABASE nextcloud

    mysql -u root -pPASSWORT CREATE DATABASE nextcloud

    mysql -u root -pPASSWORT nextcloud <SICHERUNGSDATEI_NEXTCLOUD.SQL

    mal eine ganz blöde Frage:


    Hast Du denn NACH der Installation von mlocate die Datenbank mit updatedb initialisiert? Falls nein, mach das mal.


    Standardmäßig wird das nämlich nur einmal täglich per Cronjob erledigt. Sofern noch kein Cronjob gelaufen ist, fehlt einfach die Datenbank, worauf auch die Fehlermeldung hindeutet.

    Kein Problem. Ich habe es folgendermaßen gemacht:


    1. Ein Script in einem beliebigen share auf dem NAS angelegt, welches für JEDE Datenbank den in meinem letzten Post aufgeführten Befehl enthält. Anlegen und bearbeiten kannst Du das Script mit folgenden Befehlen:


    touch /share/Public/dump_db.sh

    vi /share/Public/dump_db.sh


    Nun die mysqldump- Aufrufe für jede DB eintragen - jeweils auf einer separaten Zeile.


    Dann mit ESC :wq speichern und vi beenden.


    Nun das Script ausführbar machen:


    chmod +x /share/Public/dump_db.sh


    Jetzt noch den Cronjob anlegen:


    crontab -e


    Nun den Cronjob in einer neuen Zeile eintragen:


    0 2 * * * /share/Public/dump_db.sh


    Dies würde bedeuten, dass der Cronjob jeden Tag um 2 Uhr in der Nacht das Script startet.


    Mit ESC :wq die Crontab speichern.


    Damit das ganze rebootsicher wird, dass gleiche noch mal mit der zentralen crontab machen:


    vi /mnt/HDA_ROOT/.config/crontab

    Hat Dein SSH-Nutzer volle Adminrechte? Bzw. hat er Schreibrechte auf der Freigabe, auf die Du sicherst?


    Ist Dein root-Nutzer auf allen Datenbanken mit vollen Rechten berechtigt?


    Ich sichere jede Datenbank einzeln per Script mit folgendem Aufruf:


    mysqldump --protocol=socket -S /tmp/QMariadDB2.sock --single-transaction -h localhost -u root -pPASSWORT DATENBANK > /share/homes/dbbackup/DATENBANK.sql


    Ausgeführt wird das Script im Kontext des Ur-Adminnutzers des NAS per Cronjob. Alternativ kannst Du es mit sudo -u ADMINNUTZER aufrufen.

    PASSWORT und DATENBANK sind natürlich durch Deine individuellen Werte zu ersetzen.

    Hallo,


    Die Fehlermeldung besagt, dass der Standardsocket nicht benutzt wird. Das ist aber bei Qmariadb auch korrekt.

    Du musst erst mal in der Qmariadb-Config den Socket herausbekommen. Standardmäßig ist der Socket /tmp/QMariaDB2.sock laut dieser Dokumentation:


    [ QMariaDB ] [ 10.5.11 ] MariaDB Server (wth PhPMyadmin) - QNAP NAS Community Forum


    Dann kannst Du diesen als Parameter bei mysqldump mitgeben:


    Code
    mysqldump --protocol=socket -S /tmp/QMariadDB2.sock

    Schau Dir bitte mal folgende Anleitung an, dort ist eigentlich alles beschrieben:



    Nach dieser Anleitung kannst Du dann das originale PHPMyAdmin von QNAP mit der MariaDB10 verwenden.

    Das sind doch schon mal hilfreiche Informationen.


    Wenn der Zugriff auf die Datenbanken, wie Du schreibst, von extern klappt, solltest Du mal die Logfiles des Webservers auf Fehler durchgehen.


    Diese findest Du beim eingebauten Apache unter /usr/local/apache/logs


    Schau dort bitte mal nach, ob Fehler drin sind. Weiterhin hilft die Ausgabe von phpinfo() weiter, dort siehst Du, wie der PHP-Interpreter auf die MariaDB5 zugreift (per Socket oder per IP/Port).


    Poste mal bitte die Ausgabe von phpinfo().