Nextcloud falsches Passwort für mariaDB nach Backup/Restore

Status
Für weitere Antworten geschlossen.

thegab

Benutzer
Mitglied seit
05. Mai 2016
Beiträge
16
Punkte für Reaktionen
1
Punkte
9
Hallo,

ich habe meine DS218+ mit 1x 4TB WD Green auf 1x 6TB WD Red migriert. Also einen neuen Storage pool mit SHR und btrfs (die alte hatte Basis und btrfs). Soweit hat auch alles geklappt, die Packages konnte ich danach einfach reparieren. Geändert hat sich damit unter anderem auch volume1 => volume2.

Nun zu meinem Problem. Ich habe die Daten von Nextcloud exportiert (install-Ordner, Daten-Ordner und sql dump). Nun passt aber das Passwort von mariaDB scheinbar nicht mehr zu der Datenbank. Wie gehe ich vor, um hier ein neues Passwort zu setzen? In phpmyadmin (table oc_user) ist ein recht langes und kompliziertes eingetragen, in der config.php ein einfacheres (salted mit bcrypt vermute ich mal). Meine Vermutung ist, dass diese Passwörter Nextcloud erstellt hat.

Die Nextcloud Seite zeigt eine leere Seite, sobald ich einen Befehl mit occ ausführe bekomme ich folgende Fehlermeldung:
Rich (BBCode):
root@diskstation:~# sudo -u http /usr/local/bin/php72 -c /var/packages/WebStation/etc/php_profile/salat/conf.d/user_settings.ini -f /volume2/web/nc/occ maintenance:repair
An unhandled exception has been thrown:
Doctrine\DBAL\DBALException: Failed to connect to the database: An exception occurred in driver: SQLSTATE[HY000] [1045] Access denied for user 'xxx'@'localhost' (using password: YES) in /volume2/web/nc/lib/private/DB/Connection.php:64
Stack trace:
#0 /volume2/web/nc/3rdparty/doctrine/dbal/lib/Doctrine/DBAL/Connection.php(448): OC\DB\Connection->connect()
#1 /volume2/web/nc/3rdparty/doctrine/dbal/lib/Doctrine/DBAL/Connection.php(410): Doctrine\DBAL\Connection->getDatabasePlatformVersion()
#2 /volume2/web/nc/3rdparty/doctrine/dbal/lib/Doctrine/DBAL/Connection.php(354): Doctrine\DBAL\Connection->detectDatabasePlatform()
#3 /volume2/web/nc/3rdparty/doctrine/dbal/lib/Doctrine/DBAL/Connection.php(710): Doctrine\DBAL\Connection->getDatabasePlatform()
...

Ich verwende aktuell apache2.4 mit php7.2 (älter geht ja mit nextcloud 16.0.1 nicht) und mariadb5 oder 10, davor war die Datenbank auf mariadb5.

Grüße
thegab
 

Fusion

Benutzer
Sehr erfahren
Mitglied seit
06. Apr 2013
Beiträge
14.137
Punkte für Reaktionen
898
Punkte
424
Das DB Passwort in der Config.php ist ein Klartext Passwort für die nextcloud Datenbank für den Benutzer oc_control (default Werte, eigene Namensänderungen nicht berücksichtigt)

Zudem könnte sich der Port geändert haben, 3306 für mariadb 5 und 3307 für mariadb 10.
Dementsprechend muss auch die Angabe in der Config einmal localhost und 3306 sein und einmal 127.0.0.1:3307 mit leerem Eintrag für Port.

Was du genau exportiert und wie der ganze Import Wiederherstellungavorgang ablief hast du nicht beschrieben im Detail, schwer da was zu zu sagen.
 

thegab

Benutzer
Mitglied seit
05. Mai 2016
Beiträge
16
Punkte für Reaktionen
1
Punkte
9
Hallo Fusion,

vielen Dank für deine Antwort. Ich habe mich an die Anleitung gehalten. mariadb habe ich beides ausprobiert. Wenn ich dine Datenbank mit dem Namen nextcloud anlege und dann in phpmyadmin die Daten importiere (oder per putty), wird unter oc_user ja der richtige Nutzer angelegt. Ich nutze ja noch die alte config.php...
 

Fusion

Benutzer
Sehr erfahren
Mitglied seit
06. Apr 2013
Beiträge
14.137
Punkte für Reaktionen
898
Punkte
424
Speziell wenn die DB neu angelegt wird müssen denke trotzdem oc_control Benutzer angelegt und Berechtigungen auf die DB vergeben werden. Das ist denke nicht Teil des SQL Dumps.
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat