dbconfig-common vs. root-Passwort nach Upgrade von Jessie auf Strech

Alle weiteren Dienste, die nicht in die drei oberen Foren gehören.
Antworten
altmetaller
Beiträge: 108
Registriert: 03.02.2017 12:28:41

dbconfig-common vs. root-Passwort nach Upgrade von Jessie auf Strech

Beitrag von altmetaller » 05.02.2018 13:03:04

Hallihallo,

ich habe einen Host, auf dem Jessie installiert war, via apt-get auf Strech aktualisiert (keine alternativen Repositories, kein Pinning usw. usf.)

Nach dem Upgrade ist mir aufgefallen, dass ich keine MariaDB-Datenbanken mit dbconfig-common betanken kann.

In der Datenbank war vor dem Upgrade ist ein Kennwort für 'root'@'localhost' gesetzt. In der /etc/mysql/debian.cnf stand nach dem Upgrade kein Kennwort.

Ich habe daraufhin das Passwort (zweimal) in der debian.cnf gesetzt. "Im Grunde genommen" sieht alles gut aus - ich kann die Datenbank starten / stoppen, kann mich mit root über phpmyadmin anmelden, habe die SQL-Tabellen mit den Benutzerprofilen synchron usw. usf.

Was mich jetzt etwas unglücklich macht, ist dieser Hinweis in der /etc/mysql/debian.cnf:

Code: Alles auswählen

# Automatically generated for Debian Scripts. DOT NOT TOUCH!
Nun ja, ich hab's halt angefasst und bin mir nicht ganz sicher, ob das wirklich klug war... :cry: Ein paar Minuten später ist mir nämlich das Logrotate um die Ohren geflogen:

Code: Alles auswählen

/etc/cron.daily/logrotate:
mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'root'@'localhost' (using password: NO)'
error: error running shared postrotate script for '/var/log/mysql/mysql.log /var/log/mysql/mysql-slow.log /var/log/mysql/mariadb-slow.log /var/log/mysql/error.log '
run-parts: /etc/cron.daily/logrotate exited with return code 1
Woher denkt das logrotate, dass es (nach wie vor) kein Kennwort benutzen soll? Gibt es da noch eine weitere "Quelle allen Übels" oder war es schlichtweg Zufall, dass das logrotate angesprungen ist, während ich gerade ein paar Konfigurationsspielereien mit der Datenbank durchgeführt habe?

Gruß,
Jörg

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: dbconfig-common vs. root-Passwort nach Upgrade von Jessie auf Strech

Beitrag von rendegast » 05.02.2018 13:47:17

In der debian.cnf waren zu mysql-Zeit die Zugangsdaten für einen dedizierten Benutzer,
um Wartungsvorgänge in der db auszuführen (Upgrades, logrotate).
Das hat sich wohl mittlerweile geändert, und es wird einem paßwortlosen root@localhost überlassen.

Lösche das Passwort des root@localhost in der Datenbank.
Benutze für phpmyadmin u.a. einen separaten, adminberechtigten, paßwortgeschützten Zugang zur Datenbank.
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

altmetaller
Beiträge: 108
Registriert: 03.02.2017 12:28:41

Re: dbconfig-common vs. root-Passwort nach Upgrade von Jessie auf Strech

Beitrag von altmetaller » 05.02.2018 14:56:19

Hallo,
rendegast hat geschrieben: ↑ zum Beitrag ↑
05.02.2018 13:47:17
Benutze für phpmyadmin u.a. einen separaten, adminberechtigten, paßwortgeschützten Zugang zur Datenbank.
Danke für deinen Beitrag - ich war mir nicht sicher. Weil: Das hatte ich testweise getan und hatte danach das Problem, dass phpmyadmin folgendes auf der Konsole angezeigt hat:

Code: Alles auswählen

mysqli_real_connect(): (HY000/1045): Access denied for user 'root'@'localhost' (using password: YES)
"Mein" Fehler war, dass ich davon ausgegangen bin, dass phpmyadmin die Anmeldezugangsdaten vom Webinterface auch für den Datenbankzugriff nutzt. Nachdem ich die Daten von dem separaten Benutzer zusätzlich in der /etc/phpmyadmin/config-db.php eingetragen habe, ist die Meldung verschwunden.

In der debian.cnf habe ich jetzt wieder root ohne Passwort, zusätzlich habe ich das Root-Passwort in der Datenbank gelöscht.

Gruß,
Jörg

Antworten