hokaido
Goto Top

Nextcloud und Maria DB 10.5 my.cnf

Hallo,

meine Nextcloud 22.1.1 läuft unter Ubuntu 20.0.4 und nginx mit MariaDB 10.5.
Ich habe alles für das Update auf MariaDB 10.6 vorbereitet, als ich eine seltsame Sache mit der Datei /etc/mysql/my.cnf bemerkte.

Die my.cnf sollte so aussehen, ich bin mir sicher, dass ich es so während der Installation eingegeben habe:

Der Inhalt ist aber dieser:


Nachdem ich dies gelöscht hatte, versuchte ich, den korrekten Codeblock von oben in die my.cnf-Datei einzufügen, zu speichern und mysql neu zu starten.
Aber es gibt keine Möglichkeit, mysql neu zu starten.
Ich muss den zweiten Codeblock wiederherstellen, dann kann ich mysql neu starten und Nextcloud läuft einwandfrei.

Hat jemand eine Idee, wie ich das hinbekomme?

Danke

Content-Key: 1209573910

Url: https://administrator.de/contentid/1209573910

Ausgedruckt am: 03.10.2022 um 20:10 Uhr

Mitglied: Spirit-of-Eli
Spirit-of-Eli 30.08.2021 um 08:15:09 Uhr
Goto Top
Moin,

wieso kannst du den DB Dienst nicht neu starten?
"Service mysql restart"

Des weiteren sind die Default Parameter mittlerweile sehr gut und für eine normale Nextcloud Instanz ausreichend.
Einige Parameter fallen eh in neuerer Version raus. Hier ggf. ins Upgrade Manual schauen.

Was genau funktioniert denn nicht? Ggf. solltest du erstmal nur die Pfad Anpassungen über nehmen und alles andere default lassen.

Gruß
Spirit
Mitglied: hokaido
hokaido 30.08.2021 um 08:21:53 Uhr
Goto Top
Wie gesagt, wenn ich den 1. Codeblock, so wie er sein soll statt des 2. Codeblocks einfüge, und dann Service mysql restart mache, kommt die Meldung mysql könne nicht gestartet werden. Erst wenn ich wieder den 2. Codeblock einfüge geht es.
Lt. der Anleitung im www, nachdem ich die ganze Nextcloud problemlos installiert habe, soll aber der 1. Block rein.
Mitglied: Spirit-of-Eli
Spirit-of-Eli 30.08.2021 um 08:31:35 Uhr
Goto Top
Zitat von @hokaido:

Wie gesagt, wenn ich den 1. Codeblock, so wie er sein soll statt des 2. Codeblocks einfüge, und dann Service mysql restart mache, kommt die Meldung mysql könne nicht gestartet werden. Erst wenn ich wieder den 2. Codeblock einfüge geht es.
Lt. der Anleitung im www, nachdem ich die ganze Nextcloud problemlos installiert habe, soll aber der 1. Block rein.

Naja, dann musst du Zeile für Zeile testen.
Dann siehst du, an welcher Stelle Mariadb nicht mit der Konfig klar kommt.
Mitglied: LordGurke
LordGurke 30.08.2021 aktualisiert um 08:49:51 Uhr
Goto Top
Die Datei aus dem zweiten Codeblock folgt dem Standard, Dateien aus Unterverzeichnissen einzubinden.
Das ist Update-Sicherer.
Du findest deine Konfigurationen jetzt, möglicherweise auf mehrere Dateien gesplittet, in den beiden unten genannten Verzeichnissen.
Die my.cnf solltest du auch tunlichst nicht verändern sondern, wenn es wirklich nötig ist, in dem Verzeichnis eine lexalisch am Ende stehende Datei anzulegen, die die Einstellungen enthält, die du anpassen musst.
Aber die my.cnf solltest du nicht anfassen, denn die wird (wie du siehst) bei Updates ersetzt.

Und: Wenn Nextcloud einwandfrei läuft, warum willst du die Config anpassen?
Mitglied: 148848
148848 30.08.2021 um 13:12:42 Uhr
Goto Top
Hallo,

Zitat von @hokaido:

Wie gesagt, wenn ich den 1. Codeblock, so wie er sein soll statt des 2. Codeblocks einfüge, und dann Service mysql restart mache, kommt die Meldung mysql könne nicht gestartet werden. Erst wenn ich wieder den 2. Codeblock einfüge geht es.

Dann musst du in den Logs nachschauen, warum der MySQL Dienst nicht mehr laufen möchte. Da steht garantiert mehr drin, als nur "Service konnte nicht gestartet werden". Diese "Fehlermeldung" kommt übrigens von Systemd und nicht vom MySQL Dienst....

Alternativ kann man es natürlich auch sehr aufwendig machen und jede Zeile testen, so wie es @Spirit-of-Eli genannt hat. Das ist aber ziemlicher Murks.

Lt. der Anleitung im www, nachdem ich die ganze Nextcloud problemlos installiert habe, soll aber der 1. Block rein.

Das passiert wenn man irgendeiner fremden Anleitung folgt statt der offiziellen Herstellerdokumentation. Dort wird nähmlich überhaupt gar keine Einstellung von MySQL geändert. Warum auch? Die Standardeinstellungen reichen vollkommen aus.

MfG
Mitglied: hokaido
hokaido 30.08.2021 um 22:37:07 Uhr
Goto Top
Es ist nicht irgendeine Anleitung, und dass die offizielle Herstellerdoku nichts ändert, ist nicht ganz korrekt:
https://docs.nextcloud.com/server/latest/admin_manual/configuration_data ...

Ich hab jetzt noch mal den gewünschten Codeblock reinkopier => service mysql restart:

Job for mariadb.service failed because the control process exited with error code.
See "systemctl status mariadb.service" and "journalctl -xe" for details.

Und hier aus dem Log:
Mitglied: 148848
148848 30.08.2021 aktualisiert um 23:57:06 Uhr
Goto Top
Es ist nicht irgendeine Anleitung, und dass die offizielle Herstellerdoku nichts ändert, ist nicht ganz korrekt:
https://docs.nextcloud.com/server/latest/admin_manual/configuration_data ...

Dann großes Sorry. ich selbst nutze nur Owncoud. Da ist keine Änderung notwendig, da das bereits die Standardkonfiguration von MySQL ist. Und das letze mal wo ich testweiße eine Nextcloud Instanz installiert habe, war das bei dem Fork auch nicht notwendig.

Zum Thema zurück:
Du hast eine Major Version von MariaDB aktualisiert. Nextcloud unterstützt derzeit noch nicht MariaDB 10.6. Und die Dokumentation richtet sich daher auch nur an MariaDB 10.5. Deshalb kann das so nicht funktionieren.

Und die Konfiguration wird deshalb auch für die MariaDB 10.6 ganz anders aussehen. Hier mal ein Beispiel warum:
[Warning] The parameter innodb_buffer_pool_instances is deprecated and has no effect.

Wie hast du das Upgrade durchgeführt? Hast du die veralteten Funktionen (Incompatible Changes) berücksichtigt?
https://mariadb.com/kb/en/upgrading-from-mariadb-105-to-mariadb-106/

Warum eigentlich überhaupt das Upgrade? Die MariaDB 10.5 wird doch noch bis 24. Juni 2025 supported?
Mitglied: hokaido
hokaido 30.08.2021 um 23:57:28 Uhr
Goto Top
Nein, ich hab das Upgrade noch nicht durchgeführt, weil die my.cnf eben nicht so aussieht wie sie soll.

Und die Konfig die ich gepostet hatte, war für 10.5
Mitglied: Spirit-of-Eli
Spirit-of-Eli 31.08.2021 um 06:48:46 Uhr
Goto Top
Zitat von @hokaido:
2021-08-30 22:24:09 0 [ERROR] mariadbd: File '/var/log/mysql/mariadb-bin.000031' not found (Errcode: 2 "No such file or directory")
2021-08-30 22:24:09 0 [ERROR] Failed to open log (file '/var/log/mysql/mariadb-bin.000031', errno 2)
2021-08-30 22:24:09 0 [ERROR] Could not open log file
2021-08-30 22:24:09 0 [ERROR] Can't init tc log
2021-08-30 22:24:09 0 [ERROR] Aborting</code>

Da ist doch schon dein Thema. Die restlichen Parameter, welche als Info aufgeführt werden, kannst du rauswerfen. Die sind dann über.

Wenn Mariadb 10.6 noch nicht support ist, kann es funktionieren, muss aber nicht.
Mitglied: hokaido
hokaido 31.08.2021 um 13:00:43 Uhr
Goto Top
Der Dienst kann nicht starten, weil er irgendeine komische Datei nicht findet, die noch nie da war? Und die mit dem Standard Codeblock auch nicht da ist, der Deinst aber trotzdem startet?

Kann schlecht sein, oder?
Mitglied: Dani
Dani 31.08.2021 um 13:08:25 Uhr
Goto Top
Moin,
der Dienst kann nicht starten, weil er irgendeine komische Datei nicht findet, die noch nie da war?
es geht um die Logfile welche du in deiner Konfiguration explizit konfiguriert hast. Vermutlich gibt es auch den Pfad so nicht mehr. Daher würde ich einfach mal nachschauen, was der Standardpfad/Name ist.


Gruß,
Dani
Mitglied: LordGurke
LordGurke 31.08.2021 um 13:45:06 Uhr
Goto Top
Zitat von @hokaido:

Es ist nicht irgendeine Anleitung, und dass die offizielle Herstellerdoku nichts ändert, ist nicht ganz korrekt:
https://docs.nextcloud.com/server/latest/admin_manual/configuration_data ...

Es geht ja nicht nur darum, Texte zu lesen. Man muss sie auch inhaltlich verstehen.
Da steht, wie deine Config insgesamt aussehen könnte, wenn du die benötigten Optionen gesetzt hast. Die Betonung liegt auf dem Konjunktiv und die Optionen, die du anpassen sollst, sind darüber genannt.

Du lässt also deine my.cnf in Ruhe (die wird beim nächsten Update entweder mit der Paket-Konfiguration ersetzt oder zumindest verunstaltet), legst im Verzeichnis "/etc/mysql/mariadb.conf.d/" eine Datei an, die du z.B. "nextcloud.cnf" nennst und schreibst nur die Parameter hinein, die angepasst werden müssen.
Das wären dann:

Fertig.
Mitglied: hokaido
hokaido 31.08.2021 um 14:23:03 Uhr
Goto Top
Ich lasse es wie es ist, auch wenn ich nicht verstehe, warum es nicht geht.
Exakt hier so beschrieben:
https://www.c-rieger.de/nextcloud-installationsanleitung/#c03
Mitglied: Spirit-of-Eli
Spirit-of-Eli 31.08.2021 um 15:05:57 Uhr
Goto Top
Zitat von @hokaido:

Ich lasse es wie es ist, auch wenn ich nicht verstehe, warum es nicht geht.
Exakt hier so beschrieben:
https://www.c-rieger.de/nextcloud-installationsanleitung/#c03

Aber es steht doch schon in der Beschreibung auf deinem Screenshot was schief läuft. Da brauchst du doch nur einmal kurz Energie auf wenden um die paar Zeilen zu interpretieren.
Mitglied: Spirit-of-Eli
Spirit-of-Eli 03.09.2021 aktualisiert um 08:21:10 Uhr
Goto Top
Ich habe jetzt mal Testweise eine Nextcloud Instanz aktualisiert und MariaDB von 10.5 auf 10.6 gehoben.
Im Anschluss daran musste ich feststellen, Nextcloud kommt mit der MariaDB Version noch nicht klar.

Daher wäre es hilfreich, welche weiteren Anpassungen du noch durchgeführt hast?

Edit: Habe den Punkt soeben selbst gefunden:
https://github.com/nextcloud/docker/issues/1492
Mitglied: hokaido
hokaido 03.09.2021 um 08:30:31 Uhr
Goto Top
Wie man in meinem Eingangspost gesehen hat, habe ich das Update von 10.5 auf 10.6 nicht durchgeführt, da wie beschrieben die my.cnf nicht so aussieht wie sie aussehen sollte und ich das erst vorher klären wollte. Lt. Anleitungen von c-rieger.de läuft Nextcloud auf 10.6
Mitglied: Spirit-of-Eli
Spirit-of-Eli 03.09.2021 aktualisiert um 09:57:49 Uhr
Goto Top
Zitat von @hokaido:

Wie man in meinem Eingangspost gesehen hat, habe ich das Update von 10.5 auf 10.6 nicht durchgeführt, da wie beschrieben die my.cnf nicht so aussieht wie sie aussehen sollte und ich das erst vorher klären wollte. Lt. Anleitungen von c-rieger.de läuft Nextcloud auf 10.6

Nach meiner erwähnten Anpassung läuft meine Instanz ohne Probleme.
Bei Interesse kann ich die Konfig gerne bereitstellen. Diese habe ich nun allerdings in ein separates file unter /etc/mysql/mariadb.conf.d/nextcloud.cnf migriert.

my.cnf

nextcloud.cnf

Das Setup läuft nun ohne Probleme. Meine vorherige my.cnf habe ich somit quasi um über 100 Zeilen gekürzt. Die default Parameter laufen anscheint noch performanter.


Hier noch eben der Upgrade Guide von MariaDB:
https://mariadb.com/kb/en/upgrading-from-mariadb-105-to-mariadb-106/
Mitglied: hokaido
hokaido 04.09.2021 um 19:16:52 Uhr
Goto Top
Da ich aber immer noch nicht geklärt habe, warum meine my.cnf unter 10.5 nicht so zum Laufen gebracht wird wie sie gehört, werde ich bis auf Weiteres kein Update auf 10.6 machen
Mitglied: Spirit-of-Eli
Spirit-of-Eli 04.09.2021 um 19:31:26 Uhr
Goto Top
Jetzt wirds mir echt zum dumm. Sorry....
Du musst dich definitiv noch etwas mit dem System beschäftigen. Da fehlt noch einiges.
Mitglied: hokaido
hokaido 04.09.2021 um 20:54:04 Uhr
Goto Top
Ich hab mich damit beschäftigt. Egal was ich anstelle, es läuft nicht wie es soll. Wenn es Dir zu dumm wird, kann ich Dir auch nicht helfen. Fakt ist, die my.cnf in 10.5. schaut anders aus als sie soll und kann nicht in den gewünschten Zustand gebracht werden (s. Post 1)
Mitglied: LordGurke
LordGurke 04.09.2021 um 21:01:03 Uhr
Goto Top
Und Fakt ist auch, dass dir mehrfach von verschiedenen Leuten gesagt wurde, dass du die in der Doku gezeigte Datei nicht 1:1 übernehmen sollst...
Du sollst nur sicherstellen, dass die zwei-drei erwähnten Einstellungen richtig gesetzt sind.
Von mir zuletzt erwähnt hier:
https://administrator.de/contentid/1209573910#comment-1214008455

Und, da wiederhole ich mich ein drittes Mal: Diese Einstellungen werden nicht in der "my.cnf" vorgenommen. Die bleibt unverändert!
Man erwartet, dass du eine Datei in einem der ganz unten in der my.cnf genannten erstellst (z.B. "z-nextcloud.cnf") und dort diese 2-3 Einstellungen einträgst.
So wie es unter Linux Standard ist.
Mitglied: hokaido
Lösung hokaido 04.09.2021 um 21:39:31 Uhr
Goto Top
Ich halte mich an die Anleitung wo genau das beschrieben wird.
Mitglied: LordGurke
LordGurke 04.09.2021 aktualisiert um 22:24:27 Uhr
Goto Top
Dann gebe ich hier auch auf.
Neben den Linux-Kenntnissen fehlt es auch am Verständnis von Anleitungen.
Wenn du der Meinung bist, dass die Nextcloud-Leute besser wissen, wie deine Configs aussehen sollen anstelle des Herstellers von MariaDB oder mehreren anderen Leuten aus dem Forum, dann halte ruhig daran fest.

Wenn die Anleitung, wie sie da steht, funktioniert hätte, würden wir wohl kaum diesen Thread haben.
Mitglied: 148848
148848 05.09.2021 aktualisiert um 00:03:03 Uhr
Goto Top
Guten Abend,

Wenn du der Meinung bist, dass die Nextcloud-Leute besser wissen, wie deine Configs aussehen sollen anstelle des Herstellers von MariaDB oder mehreren anderen Leuten aus dem Forum, dann halte ruhig daran fest.

Also ich will doch stark hoffen, dass die Entwickler der Nextcloud Software am besten wissen, wie man die Software und die dazugehörigen Tools (Webserver, Datenbanken usw.) konfigurieren muss. 😉

Wenn die Anleitung, wie sie da steht, funktioniert hätte, würden wir wohl kaum diesen Thread haben.

Die Anleitung funktioniert zu 100%. Natürlich nur dann, wenn man die Anleitung auch zu 100% befolgt. Das schließt auch die Berücksichtigung der Systemvoraussetzungen ein. Und diese Anleitung ist nur für MariaDB Version 10.5 geschrieben worden. Die 10.6 Version wird, wie bereits geschrieben, derzeit noch nicht unterstützt.

Da MariaDB 10.5 und 10.6 zwei unterschiedliche Major Versionen sind, macht das in diesem Fall einen großen Unterschied. Dagegen sollte bei einem normalen Patch keine Konfigurationsdateien überschrieben werden oder Features geändert oder gar entfernt werden.

Also grundsätzlich hast du schon vollkommen recht, allerdings hast du dich dabei etwas unglücklich formuliert. Daher hier nochmal die Klarstellung. 😉

MfG