expertenaustausch > linux.debian.user.german

Theodor Rüthers (02.05.2020, 14:30)
Nach heutigen Neustart unseres Servers wegen neuem kernel startet völlig
überraschend
der maria-db server nicht mehr.

Da brauch ich mal wirklich dringend Hilfe:

also /etc/init.d/mysql start

[....] Starting mysql (via systemctl): mysql.serviceJob for
mysql.service failed because the control process exited with error code.
See "systemctl status mysql.service" and "journalctl -xe" for details.

dann also:
systemctl status mysql.service :

? mysql.service - LSB: Start and stop the mysql database server daemon
   Loaded: loaded (/etc/init.d/mysql; generated)
   Active: failed (Result: exit-code) since Sat 2020-05-02 12:54:24
CEST; 13min ago
     Docs: man:systemd-sysv-generator(8)
  Process: 6962 ExecStart=/etc/init.d/mysql start (code=exited,
status=1/FAILURE)

Mai 02 12:53:53 ottoserver systemd[1]: Starting LSB: Start and stop the
mysql database server daemon...
Mai 02 12:54:24 ottoserver mysql[6962]: Starting MariaDB database
server: mysqld . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.. failed!
Mai 02 12:54:24 ottoserver systemd[1]: mysql.service: Control process
exited, code=exited, status=1/FAILURE
Mai 02 12:54:24 ottoserver systemd[1]: mysql.service: Failed with result
'exit-code'.
Mai 02 12:54:24 ottoserver systemd[1]: Failed to start LSB: Start and
stop the mysql database server daemon.

und journalctl -xe:

Mai 02 13:10:29 ottoserver /etc/init.d/mysql[8168]: 0 processes alive
and '/usr/bin/mysqladmin --defaults-file=/etc/mysql/debian.cnf ping'
resulted in
Mai 02 13:10:29 ottoserver /etc/init.d/mysql[8168]: [61B blob data]
Mai 02 13:10:29 ottoserver /etc/init.d/mysql[8168]: error: 'Can't
connect to local MySQL server through socket
'/var/run/mysqld/mysqld.sock' (2)'
Mai 02 13:10:29 ottoserver /etc/init.d/mysql[8168]: Check that mysqld is
running and that the socket: '/var/run/mysqld/mysqld.sock' exists!
Mai 02 13:10:29 ottoserver /etc/init.d/mysql[8168]:
Mai 02 13:10:29 ottoserver mysql[7703]: Starting MariaDB database
server: mysqld . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.. failed!
Mai 02 13:10:29 ottoserver systemd[1]: mysql.service: Control process
exited, code=exited, status=1/FAILURE
-- Subject: Unit process exited
-- Defined-By: systemd
-- Support:
Harald Weidner (02.05.2020, 14:50)
Hallo,

> Nach heutigen Neustart unseres Servers wegen neuem kernel startet völlig
> überraschend der maria-db server nicht mehr.


> [....] Starting mysql (via systemctl): mysql.serviceJob for mysql.service
> failed because the control process exited with error code.
> See "systemctl status mysql.service" and "journalctl -xe" for details.
> [...]


Da steht leider nur, dass der Server nicht mehr startet, aber nicht, warum..

> Was ist zum Teufel 61B blob data.


Die Ausgabe des Kommandos enthält 61 Bytes, die systemctl für nicht-ASCII
hält und daher nicht darstellen möchte.

> Weiß jemand wie ich das wieder zum Laufen kriege?


Ohne mehr Information kann man hier nicht viel sagen. Was steht denn in
/var/log/mysql/error.log?

Gruß, Harald
Richard Kraut (02.05.2020, 15:20)
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Am Samstag, den 02.05.2020, 13:18 +0200 schrieb Theodor Rüthers:

> Nach heutigen Neustart unseres Servers wegen neuem kernel startet völlig
> überraschend der maria-db server nicht mehr.


[...snip...]

Hast Du testweise auch schon versucht den Daemon manuell am Init-System vorbei
zu starten?

/usr/sbin/mysqld [Optionen]

Standardmäßig wird die Konfiguration aus den Dateien /etc/my.cnf
/etc/mysql/my.cnf und ~/.my.cnf in genau dieser Reihenfolge eingelesen, so
dass man selber evtl. keine weiteren Optionen dem Daemon beim Startversuch
mitgeben muss.

- --
Rolf Reintjes (02.05.2020, 16:50)
Am 02.05.2020 um 13:18 schrieb Theodor Rüthers:
> Mai 02 13:10:29 ottoserver /etc/init.d/mysql[8168]: error: 'Can't
> connect to local MySQL server through socket
> '/var/run/mysqld/mysqld.sock' (2)'
> Mai 02 13:10:29 ottoserver /etc/init.d/mysql[8168]: Check that mysqld is
> running and that the socket: '/var/run/mysqld/mysqld.sock' exists!


Was ist bei dir mit der Datei /var/run/mysqld/mysqld.sock ?

Wenn die Datenbank läuft, existiert diese Datei mit Größe 0 .

Wenn die Datenbank nicht läuft, ist diese Datei nicht da.
Hans-Georg Bork (02.05.2020, 21:30)
Ist denn das Verzeichnis /var/run/mysqld da?

Am 2. Mai 2020 16:38:52 MESZ schrieb Rolf Reintjes <lists.rolf>:
[..]
Theodor Rüthers (03.05.2020, 14:30)
Ich habe nach einer purge Orgie den mariadb-server völlig neu installiert.
Danach ist die Datenbank sofort gestartet. Ohne Probleme. Mit dem aufspielen
eines backups von /var/lib/mysql konnte ich alles wieder benutzen wie
vorher, es lag also kein
Fehler in der Datenbankstruktur vor.

Der für mich einzige erkennbare Unterschied zu vorher ist folgender:
Die Datei my.cnf liegt jetzt in /etc/mysql/conf.d/.

Vorher war sie in /etc/mysql.

Wenn ich spasseslhalber die Datei von /etc/mysql/conf.d nach /etc/mysql
verschiebe,
kommt es zur oben genannten Fehlermeldung.

Egal, es läuft jetzt wieder. Danke und Grüße
Harald Weidner (03.05.2020, 15:10)
Hallo,

> Der für mich einzige erkennbare Unterschied zu vorher ist folgender:
> Die Datei my.cnf liegt jetzt in /etc/mysql/conf.d/.
> Vorher war sie in /etc/mysql.


Eine Datei /etc/mysql/conf.d/my.cnf gibt es nicht in den offiziellen
Debian-Paketen. Wenn die da liegt, wurde sie aus Drittquellen oder am Debian
Paketsystem vorbei installiert.

Gruß, Harald
Sven (03.05.2020, 15:40)
> Eine Datei /etc/mysql/conf.d/my.cnf gibt es nicht in den offiziellen
> Debian-Paketen. Wenn die da liegt, wurde sie aus Drittquellen oder am Debian
> Paketsystem vorbei installiert.


Wie kommst du darauf?

Aus meiner (unveränderten) /etc/mysql/martiadb.cnf:

# The MariaDB/MySQL tools read configuration files in the following order:
# 1. "/etc/mysql/mariadb.cnf" (this file) to set global defaults,
# 2. "/etc/mysql/conf.d/*.cnf" to set global options.
# 3. "/etc/mysql/mariadb.conf.d/*.cnf" to set MariaDB-only options.
[..]
# Import all .cnf files from configuration directory
!includedir /etc/mysql/conf.d/
!includedir /etc/mysql/mariadb.conf.d/

Die Dateien in meinem conf.d/ sind aber das letzte mal 2016 vom System
automatisch angefasst worden und haben keine relevanten Inhalte :-)
Vielleicht sind es auch nur Altlasten ¯\_(?)_/¯
Harald Weidner (03.05.2020, 16:00)
Hallo,

> > Eine Datei /etc/mysql/conf.d/my.cnf gibt es nicht in den offiziellen
> > Debian-Paketen. Wenn die da liegt, wurde sie aus Drittquellen oder am Debian
> > Paketsystem vorbei installiert.

> Wie kommst du darauf?


Suche auf packages.debian.org.

> Aus meiner (unveränderten) /etc/mysql/martiadb.cnf:
> # The MariaDB/MySQL tools read configuration files in the following order:
> # 1. "/etc/mysql/mariadb.cnf" (this file) to set global defaults,
> # 2. "/etc/mysql/conf.d/*.cnf" to set global options.
> # 3. "/etc/mysql/mariadb.conf.d/*.cnf" to set MariaDB-only options.


Ich habe nicht bezweifelt, dass eine Datei namens /etc/mysql/conf.d/my.cnf,
wenn sie denn existiert, vom MariaDB Server ausgewertet wird.

Vielleicht habe ich mich unklar ausgedrückt. Gemeint war, dass das
Paketsystem von Debian nicht daran schuld ist, wenn man eigene
Konfigurationsdateien unterhalb von /etc/mysql ablegt und das Zusammenspiel
nach einem harmlos aussehenden Update nicht mehr funktioniert.

Gruß, Harald
Alexander Reichle-Schmehl (03.05.2020, 17:00)
Hi!

Am 2020-05-03 15:53, schrieb Harald Weidner:

>>> Eine Datei /etc/mysql/conf.d/my.cnf gibt es nicht in den offiziellen [..]

>> Wie kommst du darauf?

> Suche auf packages.debian.org.


Das ist u.U. nicht ziel führend. packages.debian.org (bzw. die
Contents-XXX-Dateien im Archiv) listen Dateien, die Pakete enthalten.
Sie listen nicht Dateien, die während der Installation / Konfiguration /
Programmstart erzeugt werden.

Klassisches Beispiel: Bei der Installation wird gefragt, ob sich ein
Daemon an localhost binden soll, oder ob es im Netzwerk erreichbar sein
soll.

So eine my.cnf könnte also durchaus bei der Paket-Konfiguration erzeugt
worden sein.

Mit besten Grüssen,
Alexander
Wilhelm Boltz (03.05.2020, 17:00)
Am Sun, 3 May 2020 15:53:10 +0200
schrieb Harald Weidner <hweidner-lists>:

[..]
> Zusammenspiel nach einem harmlos aussehenden Update nicht mehr
> funktioniert.
> Gruß, Harald


die Datei /etc/mysql/my.cnf ist bei mir (buster in virtualbox) ein
symlink auf /etc/alternatives/my.cnf, das ist wieder ein symlink auf
/etc/mysql/mariadb.cnf. Das ist vermutlich bei dem Wechsel auf mariadb
eingeführt worden.

Gruß
Wilhelm
Hugo Wau (03.05.2020, 18:30)
Hallo,

On 03.05.20 16:53 Wilhelm Boltz wrote:
> [...]
> die Datei /etc/mysql/my.cnf ist bei mir (buster in virtualbox) ein
> symlink auf /etc/alternatives/my.cnf, das ist wieder ein symlink auf
> /etc/mysql/mariadb.cnf. Das ist vermutlich bei dem Wechsel auf mariadb
> eingeführt worden.
> Gruß
> Wilhelm

also ich habe auf dem System, an dem ich gerade sitze, noch nie
(zumindest nicht bewusst) mysql drauf gehabt, sondern gleich mariadb
installiert.

Da habe ich /etc/mysql/my.cnf als Link, der auf /etc/alternatives/my.cnf
zeigt, wobei das etc/mysql ohne "d" schon richtig geschrieben sein sollte.

Der Inhalt sieht bis zum "---" aus wie folgt:

cat my.cnf
# The MariaDB configuration file
#
# The MariaDB/MySQL tools read configuration files in the following order:
# 1. "/etc/mysql/mariadb.cnf" (this file) to set global defaults,
# 2. "/etc/mysql/conf.d/*.cnf" to set global options.
# 3. "/etc/mysql/mariadb.conf.d/*.cnf" to set MariaDB-only options.
# 4. "~/.my.cnf" to set user-specific options.
#
# If the same option is defined multiple times, the last one will apply.
#
# One can use all long options that the program supports.
# Run program with --help to get a list of available options and with
# --print-defaults to see which it would actually understand and use.

#
# This group is read both both by the client and the server
# use it for options that affect everything
#
[client-server]

# Import all .cnf files from configuration directory
Wilhelm Boltz (04.05.2020, 14:50)
Hallo Hugo,

Am Sonntag, 3. Mai 2020, 18:28:56 CEST schrieb Hugo Wau:
[..]
> cat my.cnf
> # The MariaDB configuration file
> # [...]


bei mir ist mysql-common installiert, sonst auch nichts von
mysql. Hier ist /etc/alternatives/my.cnf, wie schon gesagt, ein
symlink, der auf /etc/mysql/mariadb.cnf verweist.

Wenn ich mich recht erinnere, ist das alles nur
Kompatibilitätsgedöns, als die Distributionen auf breiter Front
von mysql auf mariadb umgeschwenkt sind.

Gruß
Wilhelm
Ähnliche Themen