Migration MariaDB5 > MariaDB10 - Probleme

DPoi

Benutzer
Mitglied seit
03. Feb 2013
Beiträge
137
Punkte für Reaktionen
7
Punkte
24
Hallo Leute.
Ich habe massive Probleme mit der Migration auf die aktuelle Datenbank. Das Upgrade auf DSM 7.0 verlangt zuvor die mariaDB5 zu deinstallieren.

Was ich gemacht habe, die kpl. Datenbanken auf DB10 eingespielt. Sind auch vorhanden. Über phpMySQL kann ich beide Server ansprechen und sehe auch die Datenbanken.
Ich habe dann DB5 deinstalliert und die DB10 auf port 3306 eingestellt. Nach Neustart wird aber keine Webseite angesprochen, Meldung "Datenbankfehler". Also ich bekomme so keine Verbindung hin. Wenn ich phpMyAdmin aufrufe kann ich beide Server einsehen und kontaktieren.

Dann habe ich die DB5 wieder installiert, zuvor die DB10 auf Port 3307 zurückgestellt. Läuft wieder alles... uff!

Irgendwie mache ich was nicht richtig. Ich habe hier schon so einiges gelesen und versucht. Komme auf keinen grünen Zweig. Es wäre sehr nett, wenn mir jemand mal aufzeigen kann, wie die Migration richtig klappt.

Danke und Gruß...
 

geimist

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
04. Jan 2012
Beiträge
5.569
Punkte für Reaktionen
1.397
Punkte
234
Die größte Hürde bei der Migration von MariaDB5 zu v10 waren bei mir nicht die Tabellen, sondern die Rechte. Ich hatte erst mal alles von 5 auf 10 migriert und mit Port 3307 in der jeweiligen Anwendung getestet bis die Rechte passten. Anschließend v5 deinstalliert und noch den Port auf 3306 geändert (wenn man das dann überhaupt noch will).
 

DPoi

Benutzer
Mitglied seit
03. Feb 2013
Beiträge
137
Punkte für Reaktionen
7
Punkte
24
@geimist Die Rechte. Okay. Wie teste ich das? Ich bin auch der Meinung dass es bei dem Problem in diese Richtung geht. Habe da auch irgendwas im logfile gelesen. Wie bekomme ich die Rechte geradegebogen?! Ich habe ja die DB10 de- und wieder installiert, Hoffnung stirbt zuletzt. Aber brachte nix.
Wie bekomme ich das hin, dass mein System dann auf Port 3307 horcht? Da muss ich doch garantiert auch Hand anlegen? Meine DS218+ z. B. hat den Port 3307 auf der DB10 eingestellt. Das Upgrade dort lief auch anders. Bei der 214 um die es hier geht funktioniert das Upgrade etwas anders. Da wird geprüft und man muss die Vorgaben abarbeiten, ansonsten wird das Upgrade auf DSM 7,0 nicht durchlaufen...

Gruß!
 

geimist

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
04. Jan 2012
Beiträge
5.569
Punkte für Reaktionen
1.397
Punkte
234
Na den Port des MariaDB-Servers stellst im Paket ein. Und wo du es in deiner Anwendung einstellst, ist ja individuell (in der Regel gibt es dafür ja ein eigenen Parameter im Configfile oder der Anwendungs-GUI).
Ich glaube, meine Probleme lagen im Hostnamen des angelegten Benutzerkontos (localhost, IP, % ect.)
 
Zuletzt bearbeitet:

DPoi

Benutzer
Mitglied seit
03. Feb 2013
Beiträge
137
Punkte für Reaktionen
7
Punkte
24
Das mit dem Port einstellen habe ich begriffen, das wusste ich schon von den vielen Beiträgen die ich gelesen habe. Ist schonmal eine feine Sache!

Soweit ich das von Linux kenne gibst du den Anwendungen in den configs ja keinen Port mit. Irgendwie muss der Server ja über den socket an localhost gebunden werden, damit Anwendungen den Datenbankserver finden. Da aber ist bei mir noch eine Wissenslücke…

Dann komme ich jetzt irgendwie nicht weiter. Hmmm…

Danke.
 

luddi

Benutzer
Sehr erfahren
Mitglied seit
05. Sep 2012
Beiträge
3.259
Punkte für Reaktionen
601
Punkte
174
gibst du den Anwendungen in den configs ja keinen Port mit.
Da der default Port bei mysql/mariadb 3306 ist, muss bei den meisten Applikationen nicht zwingend und explizit ein Port konfiguriert werden weil sie es auf dem default Port versuchen die Datenbank zu erreichen.
Verwendet man einen anderen Port für den Zugang zur Datenbank muss man jeder Applikation die auf die Datenbank/en zugreifen möchte den entsprechenden Port mitteilen.

Bei Verwendung der Kommandozeile mit mysql sieht die Port Konfiguration wie folgt als Argument aus:
--port=port_num, -P port_num For TCP/IP connections, the port number to use.

Irgendwie muss der Server ja über den socket an localhost gebunden werden, damit Anwendungen den Datenbankserver finden.
Und es ist auch nicht zwingend "localhost" vorgeschrieben als Host. Denn die Datenbank/en kann/können auch auf einem anderen Server liegen.
Dafür verwendet man als Kommandozeilenparameter folgendes Argument:
--host=host_name, -h host_name Connect to the MySQL server on the given host.

Somit sollte auch jede Applikation die auf eine Datenbank zugreift, die Möglichkeit haben den Port explizit konfigurieren zu können.
 
  • Like
Reaktionen: DPoi

Tommi2day

Benutzer
Mitglied seit
24. Aug 2011
Beiträge
1.192
Punkte für Reaktionen
73
Punkte
68
Oder man macht zuerst einen Dump (mysqldump -A ...) der DB, deinstalliert MysqlDB5, installiert Mariadb10, ändert nach der Installation den Port von 3307 auf 3306 (kann ja nach der Deinstallation nicht kollidiernen), und lädt dann dem Dump wieder zurück. Dann spart man sich das Ändern in jeder Applikation
Den Dump mit phpmyadmin wie vorgeschlagen zu machen ist bei größeren Datenbanken leider nicht sinvoll, da der Dump nach der php max execution time abgeschnitten wird. Auf der Kommandozeile kann das problemlos bis zum Ende laufen.
 
  • Like
Reaktionen: luddi

DPoi

Benutzer
Mitglied seit
03. Feb 2013
Beiträge
137
Punkte für Reaktionen
7
Punkte
24
@Tommi2day Wenn ich den dump importiere, dann werden die Rechte usw ja auch übernommen? Du hast Recht mit der Aussage das es per phpMyAdmin nur Abbrüchte gab, weil Zeitüberschreitung.
Ich versuche das nochmal über die console...

Danke!
 

Tommi2day

Benutzer
Mitglied seit
24. Aug 2011
Beiträge
1.192
Punkte für Reaktionen
73
Punkte
68
Das kommt darauf an, was man von dem Dump importiert. Bei einem Full Export (-A) sollten auch die User Tabellen mitkommen und dann auch beim Full Import wieder geladen werden. Wenn man nur einzelne DBs exportiert sind die nicht dabei und man muss die einen passenden User miit den gleichen Rechten vorher anlegen.
 
  • Like
Reaktionen: DPoi

DPoi

Benutzer
Mitglied seit
03. Feb 2013
Beiträge
137
Punkte für Reaktionen
7
Punkte
24
Ich hatte mal die Zeilen gefunden mit der man den kpl. Server ex- und wieder importieren kann. Finde ich nicht mehr.
Hat jemand für die console diese Zeilen im Kopf oder kennt eine Quelle? Ich suche mich blöde. Hätte ich mal nur die Seite gesichert...
Via phpMyAdmin gibt es timeouts und es folgen dann Abbrüche. EIne Datenbank ist einfach zu groß. Spätestens beim 3. Start (weitermachen an Stelle...) kommen dann Fehlermeldungen. Deshalb möchte ich das gern via console realisieren.

Danke!
 

Tommi2day

Benutzer
Mitglied seit
24. Aug 2011
Beiträge
1.192
Punkte für Reaktionen
73
Punkte
68
  • Like
Reaktionen: DPoi

DPoi

Benutzer
Mitglied seit
03. Feb 2013
Beiträge
137
Punkte für Reaktionen
7
Punkte
24
@Tommy2day danke dir! Ich werde das in Kürze testen. Bin gespannt… ??

Gruß
 


 

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