NCP Migration auf frisches System welches Datenbank Password

Hallo zusammen!

Ich setzte demnächst ein frisches System auf meinen Pi4 auf. Dazu möchte ich gerne außerdem ein ganz frisches NCP haben. Meine Daten liegen zurzeit auf der HDD per USB. Das soll auch so bleiben.

Meine Schritte sind hier verlinkt

Für mein Vorhaben möchte ich die Datenbank kopieren. Dabei werde ich jedoch nach einem Passwort gefragt. Ich habe jedoch nie ein Passwort für die DB festgelegt oder geändert.

Für euer Hilfe wäre ich dankbar!

LG Karel

Edit: Über generelle Anregungen / Verbesserungen würde ich mich ebenfalls freuen. :wink:

Du musst bei deiner Datenbank (ich gehe mal von MariaDB) irgendein root-Passwort (nicht root von Linux) haben. Auch hat dein Nextcloud-Benutzer (in deiner Datenbank) ein Passwort. Das steht in der Nextcloud-Konfiguration config.php … ist an dieser Stelle aber wohl nicht gefragt.

Hier mal eine Anleitung, wie du dein root-Passwort der MariaDB neu setzt, wenn du es vergessen hast. Nicht selbst probiert.

Ja. MySQL. Danke für den Link, ich lese mich mal ein.

Mich wundert es nur, dass ich zu keiner Zeit eins vergeben musste…

Du kannst ja mal schauen, ob du dich an deiner MySQL-Datenbank als root ohne Passwort anmelden kannst.

Also
sudo mysql -u root
funktionert ohne Passwort-Eingabe.

Ok. Dann lass doch einfach bei
mysqldump --single-transaction -h localhost -unextcloud -pnextcloud nextcloud > /home/osusername/ncdb_dat…
die Option
-pnextcloud
weg :wink:

… denn das steht für Passwort… :woozy_face:

Du siehst, meine Linux Kenntnisse halten sich in Grenzen.

Wenn mein User “ncadmin” lauten würde und die Datenbank selbst “nextcloud” dann würde der Befehl:

mysqldump --single-transaction -h localhost -u ncadmin nextcloud > /home/osusername/ncdb_date +"%w".sql

richtig heißen?

Ok eine kleine Linux-Lektion. Alle Kommandozeilen-Befehle (Linux Shell) sind eigentlich gleich aufgebaut. Sie erwarten hinter ein bzw. zwei Gedankenstrichen Parameter. “-u” steht hier für User und “-p” für Passwort. In Teilen ist es so, dass zwischen dem Parameter wie “-u” oder “-p” nicht mal ein Leerzeichen sein muss oder darf.
Am besten mal ausprobieren. Was soll schon passieren. Du hast doch bestimmt ein Backup. Obwohl wahrscheinlich nicht, denn dafür hättest du den Befehl wohl benötigt :wink:

Lese Backup Nextcloud und Restore Nextcloud (da geht es auch um MySQL und MariaDB)

Alles klar, klingt einleuchtend.

Dann ist mein Befehl so richtig? Denn laut der Doku

mysqldump --single-transaction -h [server] -u [username] -p[password] [db_name] > nextcloud-sqlbkp_date +"%Y%m%d".bak

ist vor dem username ein Leerzeichen.

PS: Ich habe bis jetzt nur Full-Backups der ganzen SD gemacht. :wink:

Einfach mal ausprobieren. Wenns nicht funktioniert kann ich wohl im Quellcode suchen.

Alles klar, danke dir schon mal! Ich probiere es mal aus! :+1:

Hat funktioniert!
Lediglich

mysql -h localhost -u ncadmin -e “GRANT ALL PRIVILEGES on nextcloud.* to nextcloud@localhost”

führte zu folgender Fehlermeldung:

ERROR 1044 (42000) at line 1: Access denied for user ‘ncadmin’@‘localhost’ to database ‘nextcloud’

Diesen Schritt hat Carsten Rieger in seiner Anleitung als “Berechtigung für die DB setzen” aufgeführt.

Mit der Migration hat es leider noch nicht geklappt.

Beim Setzten des Fingerprints gab es die erste Fehlermeldung:

Nextcloud or one of the apps require upgrade - only a limited number of commands are available
You may use your browser or the occ upgrade command to do the upgrade

In der System-Info von NCP Panel wird

Nextcloud check error

angegeben…

Ich bin etwas ratlos.

Hat nun alles geklappt. Der Fehler beim Setzen des Fingerprinst lag daran, dass die beiden Versionen von NC nicht identisch waren, ich musste die alte Instanz erstmal upgraden.

Ansonten läuft jetzt alles! :+1: