Ubuntu 16.04: MySQL startet nicht mehr – Die Lösung

MySQL scheint irgendwie gerne nach einem Update des Systems Probleme zu machen, wie schon damals bei Debian Squeeze. Ich habe das Update heute installiert, und dabei schon ein paar Fehler in Richtung MySQL bekommen, mir dabei aber erst mal nichts gedacht.

Nach dem Upgrade lief dann aber der MySQL-Server nicht mehr, und lies sich auch nicht mehr starten. Ein aptide uprade meinte auch, MySQL wäre nicht richtig konfiguriert, aber lösen konnte es das Problem auch nicht.



Setting up mysql-server-5.7 (5.7.11-0ubuntu6) ...
Job for mysql.service failed because the control process exited with error code. See "systemctl status mysql.service" and "journalctl -xe" for details.
invoke-rc.d: initscript mysql, action "start" failed.
dpkg: error processing package mysql-server-5.7 (--configure):
 subprocess installed post-installation script returned error exit status 1
dpkg: dependency problems prevent configuration of mysql-server:
 mysql-server depends on mysql-server-5.7; however:
  Package mysql-server-5.7 is not configured yet.

dpkg: error processing package mysql-server (--configure):
 dependency problems - leaving unconfigured
No apport report written because the error message indicates its a followup error from a previous failure.
                   Processing triggers for systemd (229-4ubuntu4) ...
Processing triggers for ureadahead (0.100.0-19) ...
Errors were encountered while processing:
 mysql-server-5.7
 mysql-server
E: Sub-process /usr/bin/dpkg returned an error code (1)

Weiterlesen

Kurztipp: UPDATE mit ORDER BY in SQL

Heute stand ein kleines Datenbank-Problem an, das eine „kreative“ Lösung erforderte. Die Sortierung von ein paar Elementen basierte auf der Datenbank-ID, aber ein neues Element musste unbedingt in die Mitte. Da es als letztes eingefügt wurde, hatte es aber natürlich die höchste ID (man stelle sich eine typische MySQL-Datenbank mit AUTO_INCREMENT-Feld als Primary Key vor). Zeit für eine „richtige“ Lösung war nicht, also mussten ein paar IDs in der Datenbank verschoben werden: Jeder Kurs rückt eine ID weiter, dann kann später der letzte auf das leere Feld aufrücken. Gesagt, getan:

update courses set id=id+1 where and id>=3041 and id<=3052

Weiterlesen

MySQL Dump auf Debian ohne Passwortabfrage

Ich bin gerade dabei auf einem Debian-Server ein Backup-System aufzubauen, und dazu gehört natürlich auch (eigentlich: vor allem!) der Inhalt der Datenbanken. Aber dafür gibt es ja mysqldump. Also mal schnell was in den crontab geschrieben:


mysqldump --all-databases > backup.sql

Dann noch schnell mal den Befehl ausprobiert:


mysqldump: Got error: 1045: Access denied for user 'root'@'localhost' (using password: NO) when trying to connect

Hmm… Das ist natürlich ungünstig. MySQL braucht einen Benutzer um sich anzumelden, nur dazu braucht es dann auch ein Passwort. Natürlich kann man jetzt einen Benutzer „backup“ oder so anlegen, nur dann hat man ein Problem: Jeder kann während des Backups mit ps das Passwort des Benutzer sehen. Und ihm kein Passwort geben ist auch keine Option, speziell wenn man phpMyAdmin aus dem Internet erreichbar macht (mache ich natürlich nicht!)

Doch es geht einfacher:

Weiterlesen

WordPress 3.2: Endlich!

Zuerst: Schöne Ferien! 6 Wochen Zeit für was besseres als Schule… Studienberatung zum Beispiel 🙁

WordPress 3.2 ist jetzt also endlich da. Das neue Layout ist ganz nett, das neue Theme muss ich mir noch mal ansehen. Der neue „Zen“-Editor zum schreiben ohne UI ist ziemlich praktisch, auch wenn die Tastenkombinationen noch einen kleinen Fehler haben.

Doch eine Sache ist da, auf die ich schon ewig gewartet habe: Das neue Linktool.Endlich kann man direkt aus dem Link-Menü nach alten Posts suchen und diese verlinken. Darauf warte ich schon, seit ich WordPress benutze.

Eine andere Sache wurde auch Zeit: Der Support für den IE 6 ist Geschichte, und ein halbwegs modernes PHP und MySQL wird jetzt auch vorausgesetzt. Das ist wirklich praktisch für Plugin Autoren (wie mich) die sich jetzt endlich nicht mehr mit dem uralten PHP und Browser Versionen rumschlagen müssen.

Weiterlesen

Debian Squeeze: MySQL startet nicht mehr – Die Lösung

Kurzer Tipp: Wenn bei jemanden nach dem Update auf Debian Squeeze MySQL nicht mehr starten sollte, und man sowas im Log findet:

/etc/init.d/mysql[22733]:  0 processes alive and '/usr/bin/mysqladmin  --defaults-file=/etc/mysql/debian.cnf ping' resulted in  #007/usr/bin/mysqladmin: connect to server at 'localhost' failed
 error: 'Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)'
 Check that mysqld is running and that the socket: '/var/run/mysqld/mysqld.sock' exists!
 

Kann es sein, dass das Paket nicht richtig installiert wurde. Bei mir haben folgende Befehle geholfen:

Weiterlesen