Nextcloud - Migration auf MariaDB 10

rednag

Benutzer
Mitglied seit
08. Nov 2013
Beiträge
3.955
Punkte für Reaktionen
12
Punkte
104
Guten Abend alle zusammen.

Jetzt muß ich hier auch mal um Hilfe bitten.
Kann mir jemand verraten wie ich MariaDB 10 über die Konsole ansprechen kann?
Rich (BBCode):
mysql -u root -p
. bringt mich zu MariaDB 5. Auch mit
Rich (BBCode):
mysql --port 3307 -u root -p
komme ich auf MariaDB 5.
Wie also kann ich meine DBs in MariaDB 10 migrieren?

Grund warum ich den ganzen Zirkus veranstalte, ist, daß ich eine exportierte Datenbank für Nextcloud nicht über phpMyAdmin importiert bekomme.
Die Datenbanken für WordPress sowie Kodi haben nach etwas Überzeugunsarbeit und anpassen der Clients/Configs funktioniert.

Bei Nextcloud beiße ich mir aber seit gestern die Zähne aus.
Auch mit Adminer und SQLDumper habe ich es probiert, da komme ich aber wieder nur auf MariaDB 5.
Werft mir also bitte keine mangelnde Eigeninitiative vor. :)

Unbenannt1.jpg
 

AndiHeitzer

Benutzer
Sehr erfahren
Mitglied seit
30. Jun 2015
Beiträge
3.332
Punkte für Reaktionen
624
Punkte
174
Rich (BBCode):
mysql -u root -p -P3307

So sollte es eigentlich gehen ...

Den Parameter '--port' kenne ich so nicht, daher der '-P3307' ...

Als User kann man jeden Account nutzen, der im DB-Server angelegt ist ...

Edit sagt:
Rich (BBCode):
mysql -u root -p -port 3307

Geht auch, aber aus Mangel an MDB10 habe ich das nur mit Port 3306 getestet ...
 
Zuletzt bearbeitet:

Fusion

Benutzer
Sehr erfahren
Mitglied seit
06. Apr 2013
Beiträge
14.159
Punkte für Reaktionen
912
Punkte
424
Die passende Binary hatte @götz ja schon aufgetan.

/usr/local/mariadb10/bin/mysql
 

MikeZulu

Benutzer
Mitglied seit
04. Mai 2016
Beiträge
101
Punkte für Reaktionen
2
Punkte
24
MariaDB 10 verwendet eine andere Socket-Adresse, die beim Aufruf angegeben werden muss:

mysql -u root -p -P3307 -S /run/mysqld/mysqld10.sock
Enter password:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 673
Server version: 10.0.30-MariaDB Source distribution

Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]>
 

rednag

Benutzer
Mitglied seit
08. Nov 2013
Beiträge
3.955
Punkte für Reaktionen
12
Punkte
104
Danke für die zahlreichen Vorschläge.
Mit
HTML:
/usr/local/mariadb10/bin/mysql -u root -pXXX nextcloud < nextcloud12.sql
konnte ich die Datenbank migrieren.
Leider bringt mir Nextcloud nach Anpassung des Passworts, Username und Port 3307 eine leere Seite zum Vorschein.
nginx sowie Web Station sind nach den Änderungen neu gestartet worden.
 

Crashandy

Benutzer
Mitglied seit
14. Mai 2014
Beiträge
293
Punkte für Reaktionen
100
Punkte
43
Hallo an Alle mit ähnlichen Problemen wie rednag.

Folgende Vorgehensweise hat mich zum Ziel gebracht:
- MariaDB 5 -> Export der Datenbank
- MariaDB 10 -> Import der Datenbank
- MariaDB 10 -> Benutzer "nextcloud" den Hostname von local auf "IP-der-NAS" geändert
- config.php -> den Eintrag 'dbhost' => 'localhost', auf 'dbhost' => 'IP-der-NAS:3307', geändert

Nun läuft Nextcloud mit der MariaDB 10 Datenbank.

Gruß
Andy
 

laserdesign

Benutzer
Mitglied seit
11. Jan 2011
Beiträge
2.549
Punkte für Reaktionen
47
Punkte
94
Hallo,

- MariaDB 10 -> Benutzer "nextcloud" den Hostname von local auf "IP-der-NAS" geändert

kannst du diesen Schritt etwas genauer beschreiben, check gerade nicht was du wo gemacht hast
 

Crashandy

Benutzer
Mitglied seit
14. Mai 2014
Beiträge
293
Punkte für Reaktionen
100
Punkte
43
@laserdesign

Ich habe die Datenbank-Benutzer von MariaDB 5 exportiert und in MariaDB 10 per SQL-Befehl importiert.
Mein DB-Benutzer für Nextcloud ist bei mir "nextcloud" und hat im Feld Hostname "localhost" stehen.
Damit wird automatisch der Port 3306 aufgerufen.
Nun habe ich bei meinem Benutzer "nextcloud" im Feld Hostname die IP von meinem NAS eigegeben, es geht auch der Hostname des NAS.
Egal wie, in der config.php muss dann die IP oder der Hostname mit dem Port 3307 angegeben werden.

Gruß
Andy
 

laserdesign

Benutzer
Mitglied seit
11. Jan 2011
Beiträge
2.549
Punkte für Reaktionen
47
Punkte
94
mmh, habe es jetzt so wie du beschrieben probiert, bekomme aber immer noch eine leere Seite im Browser.
Hast du denn MariaDB5 auch gestoppt oder deinstalliert??

PS: habe in der config.php diese beiden Einträge gemacht:
Rich (BBCode):
  'dbhost' => '192.168.10.7',
  'dbport' => '3307',
 

Crashandy

Benutzer
Mitglied seit
14. Mai 2014
Beiträge
293
Punkte für Reaktionen
100
Punkte
43
@laserdesign

Nein, den Eintrag 'dbport' scheint es in Nextcloud NOCH nicht zu geben.
Du musst hier eingeben 'dbhost' => '192.168.10.7:3307', dann sollte es gehen.

Gruß
Andy
 

laserdesign

Benutzer
Mitglied seit
11. Jan 2011
Beiträge
2.549
Punkte für Reaktionen
47
Punkte
94
die Option 'dbport' => '', stand schon in meiner config.php, habe sie nur mit der Portnummer aufgefüllt.

So wie du es vorschlägst geht es aber auch noch nicht bei mir.

Hast du denn MariaDB5 noch am laufen??
 

Crashandy

Benutzer
Mitglied seit
14. Mai 2014
Beiträge
293
Punkte für Reaktionen
100
Punkte
43
Mit der Option 'dbport' hat es bei mir nicht funktioniert, das hatte ich auch probiert.
Ich habe MariaDB 5 noch nicht deinstalliert, da dort noch nicht alle Datenbanken umgestellt sind.
Meine Datenbanken von "owncloud" und "nextcloud" sind aber gelöscht und befüllen sich nun weiter in MariaDB 10.

MariaDB 5 habe ich nun mal gestoppt und Nextcloud funktioniert.
Hier meine Einstellungen in MariaDB 10

screen_001.jpg
 
Zuletzt bearbeitet:

rednag

Benutzer
Mitglied seit
08. Nov 2013
Beiträge
3.955
Punkte für Reaktionen
12
Punkte
104
Der Eintrag "dbport" in der config.php wird anscheinend ignoriert. Erst die Lösung von @Crashcandy den Hostnamen in PMA zu ändern hat aus der weißen und leeren Seite meine Nextcloud zum Vorschein gebracht. Eine testweise über die GUI hochgeladene Datei wird in die neue MDB10 geschreiben. Gute Arbeit. Danke.
 

OdinsAuge

Benutzer
Mitglied seit
12. Nov 2015
Beiträge
377
Punkte für Reaktionen
36
Punkte
34
Ich konnte zum Glück mein exportiertes SQL direkt im PMA importieren.

Danke @Crashandy für den Hinweis mit dem Host, alles läuft bestens.
 

wolewo

Benutzer
Mitglied seit
24. Mrz 2009
Beiträge
293
Punkte für Reaktionen
5
Punkte
24
@Crashandy
Merci für den Tipp, funktioniert wunderbar.
 

rumknapser

Benutzer
Mitglied seit
02. Mai 2013
Beiträge
329
Punkte für Reaktionen
6
Punkte
24
MariaDB 10 verwendet eine andere Socket-Adresse, die beim Aufruf angegeben werden muss:

mysql -u root -p -P3307 -S /run/mysqld/mysqld10.sock

Hallo und danke f.d. Tipp! Der war Gold wert!

Ich habe eine Menge Skripte laufen, die ich diesbezüglich nicht anfassen möchte, aber müsste.
In den Skripten wird z.B. so etwas aufgerufen:
DBNAME=`echo 'show Databases;' | mysql -u foo -pfoo |grep Datenbank|sort -r|tail -n1` #

Frage:
kann man es irgendwie so einrichten, das beim Systemstart z.B. ein Alias gesetzt wird, oder eine Umgebungsvariable, die es weiterhin ermöglicht, mysql aus meinen Skripten aufzurufen, nur, das sie jetzt mit der richtigen Datenbank connecten ?

Nur der Bequemlichket halber ... :)
 

rumknapser

Benutzer
Mitglied seit
02. Mai 2013
Beiträge
329
Punkte für Reaktionen
6
Punkte
24
kann man es irgendwie so einrichten, das beim Systemstart z.B. ein Alias gesetzt wird, oder eine Umgebungsvariable, die es weiterhin ermöglicht, mysql aus meinen Skripten aufzurufen, nur, das sie jetzt mit der richtigen Datenbank connecten ?
Ja, das geht. Im neusten DSM kann man ja Skritpte hinterlegen, die NUR beim Hoch- oder Runterfahren der DS ausgeführt werden. Dort kann man sich einfach das in einem Shellscript hinterlegen, was man möchte.
 

mischmit

Benutzer
Mitglied seit
01. Jan 2012
Beiträge
7
Punkte für Reaktionen
4
Punkte
3
Hallo,
auch ich musste jetzt auf MariaDB 10 wechseln und wollte das Thema noch einmal hochholen:

1612457418386.png

Wollte mich für die Tipps hier bedanken, ohne die es wohl schwerer gewesen wäre, speziell der Parameter "dbhost", wo man den anderen Port der MariaDB 10 anhängen muss/kann.

Der Export und Import der Nextcloud-Datenbank lief bei mir problemlos mit der Methode "Schnell".

Ich wollte aber noch einen Tipp geben zum Thema Benutzer. Ich habe auch den Benutzer exportiert, wie weiter oben von @Crashandy erwähnt:

1612457707824.png

Als ich dann die vom Export erzeugten SQL-Statements zum Anlegen des Benutzers auf MariaDB 10 ausführen wollte

1612457993695.png

kam folgende Fehlermeldung:

1612458347693.png

Abhilfe war, die Variable strict-password-validation temporär auf "OFF" zu setzen:

1612458122747.png

Danach konnte ich die SQL-Statements ausführen und damit den Benutzer anlegen.

Jetzt sieht es wieder gut aus

1612458807424.png

Vielleicht hilft es ja dem einen oder anderen bei der bevorstehenden Migration.
 

Anhänge

  • 1612458023697.png
    1612458023697.png
    12,7 KB · Aufrufe: 13

dditt

Benutzer
Mitglied seit
08. Feb 2018
Beiträge
135
Punkte für Reaktionen
9
Punkte
18
Hallo Zusammen,

ich habe die gleiche Meldung wie @mischmit . Kann ich die Migration komplett auf der Web-Ebene vollziehen? Ich glaube ich habe hier in dem Thread am wenigsten Ahnung von der Materie. Ich bin immer heilfroh, wenn es läuft.

Aktuell habe ich mich über die Oberfläche der Synology -> phpmyadmin -> in die maria db 5 Datenbank eingeloggt


Dann meine angelegte "Tabelle?" angeklickt , danach oben in der Leiste auf Exportieren, die Vor-Einstellungen auf "schnell" und "sgl" gelassen und auf exportieren geklickt.

Erhalten habe ich eine Datei " -- datenbankname-- .sql".


Jetzt wechsel ich in die maria db 10 Datenbank und nun?

Gleich auf Importieren? mit welchen EInstellungen? oder erst eine neue "Tabelle" mit dem gleichen Namen erzeugen?

Und dann wie weiter? wie vermittle ich meiner Nextcloud Instanz dass jetzt auf v10 zugegriffen werden soll?
 

mischmit

Benutzer
Mitglied seit
01. Jan 2012
Beiträge
7
Punkte für Reaktionen
4
Punkte
3
Ich habe in phpMyAdmin/MariaDB 10 eine Datenbank mit demselben Namen wie in MariaDB 5 angelegt. Als Kollation hatte ich denselben Wert " utf8mb4_general_ci" wie in MariaDB 5 gewählt.
An den Importeinstellungen habe ich nichts geändert, soweit ich mich richtig erinnere.
Um Nextcloud auf MariaDB 10 umzuschießen, habe ich die aktuelle Version der Datei /volume1/web/nextcloud/config/config.php (Der Pfad kann abweichen) gesichert und dann die folgende Zeile mit dem Editor vi geändert:

Alt:

'dbhost' => '127.0.0.1',

Neu:

'dbhost' => '<Hostname der Synology>:3307',

Habe auch noch

'dbport' => '3306',

nach

'dbport' => '3307',

geändert. Könnte aber sein, dass dieser Parameter komplett nicht ausgewertet wird (s.o.).

Dann noch ein Restart komplett oder eventuell nur vom Webserver und es sollte laufen.

Viel Erfolg!
 


 

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