MySQL Administration
Authentifizierungsproblem von debian-sys-maint
Wenn auf ubuntu- oder debian-Systemen der Benutzer debian-sys-maint
nicht authentifiziert werden kann, äußert sich das beispielsweise so:
root@vs245088:/etc/init.d# ./mysql stop
Stopping MySQL database server: mysqld failed!
root@vs245088:/etc/init.d# ./mysql start
Starting MySQL database server: mysqld already running.
/usr/bin/mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'debian-sys-maint'@'localhost' (using password: YES)'
In diesem Fall konnte der MySQL-Dienst nicht neu gestartet werden. Dies ist insbesondere ärgerlich, wenn die Datenbank auch bei einem (automatischen) update nicht neu gestartet wird und apt-get
dann entsprechende Fehler liefert.
Abhilfe ist wie folgt möglich:
cat /etc/mysql/debian.cnf
Es erscheint eine Ausgabe:
# Automatically generated for Debian scripts. DO NOT TOUCH!
[client]
host = localhost
user = debian-sys-maint
password = xxxxxx
socket = /var/run/mysqld/mysqld.sock
[mysql_upgrade]
user = debian-sys-maint
password = xxxxxx
socket = /var/run/mysqld/mysqld.sock
basedir = /usr
Hier das Passwort xxxxxx
kopieren und in der MySQL-Konsole alle Rechte für debian-sys-maint
vergeben:
mysql -u root -p
mysql> GRANT ALL PRIVILEGES ON *.* TO 'debian-sys-maint'@'localhost' IDENTIFIED BY 'xxxxxx';
Danach kann die Datenbank vom Startscript wieder neu gestartet werden:
sudo /etc/init.d/mysql restart
Stopping MySQL database server: mysqld.
Starting MySQL database server: mysqld ..
Checking for corrupt, not cleanly closed and upgrade needing tables..
Quelle: https://mirzmaster.wordpress.com/2009/01/16/mysql-access-denied-for-user-debian-sys-maintlocalhost/
Laufende User-Prozesse anzeigen
Mit folgendem SQL-Statement können alle laufenden User-Prozesse auf dem mysql-Server angezeigt werden:
show processlist;
Laufenden User-Prozess beenden
Mit folgendem SQL-Statement kann ein User-Prozess auf dem mysql-Server beendet werden:
kill <pid>;