Mysql-server kann in Ubuntu nicht installiert werden


17

Ich kann mysql-server nicht auf meinem Ubuntu 9.10-Server installieren. Bei Verwendung von apt-get install mysql-server lautet die Ausgabe:

# apt-get install mysql-server

Reading package lists... Done
Building dependency tree
Reading state information... Done

mysql-server is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 120 not upgraded.
2 not fully installed or removed.

After this operation, 0B of additional disk space will be used.
Setting up mysql-server-5.1 (5.1.37-1ubuntu5.4) ...
* Stopping MySQL database server 
    Mysqld    [ OK ]
* Starting MySQL database server 
mysqld [fail]

invoke-rc.d: initscript mysql, action "start" failed.

dpkg: error processing mysql-server-5.1 (--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.1; however:
Package mysql-server-5.1 is not configured yet.

dpkg: error processing mysql-server (--configure):
dependency problems - leaving unconfigured

No apport report written because the error message indicates its a followup error from a previous failure.
Errors were encountered while processing:
mysql-server-5.1
mysql-server  
E: Sub-process /usr/bin/dpkg returned an error code (1)

Ich kann nirgendwo eine zufriedenstellende Lösung für dieses Problem finden. Viele Sites fordern eine Neuinstallation, aber es funktioniert nicht.

Jede Hilfe wird geschätzt.

Vielen Dank..


Haben Sie es mit aptitude versucht? aptitude installiere mysql-server-5.1
Chris_O

yeah..versuchte das auch, den gleichen Fehler.
Arihant

Hatte sehr ähnliche Symptome bei der Installation von MySQL-Server, als Port 3306 von einem SSH-Tunnel belegt wurde. Es dauerte eine Weile, bis
ich

Antworten:


26

Das hat bei mir funktioniert:

apt-get purge mysql-server
apt-get purge mysql-common
rm -rf /var/log/mysql
rm -rf /var/log/mysql.*
rm -rf /var/lib/mysql
rm -rf /etc/mysql
# and then:
apt-get install mysql-server --fix-missing --fix-broken

Obwohl es auch alle Abhängigkeiten von MySQL entfernt.

Und es werden auch vorhandene Datenbanken gelöscht, Backup zuerst!

Quelle .


+1 Hat auch für mich gut funktioniert!
Chris McCauley

Arbeitete auf Ubuntu 12.04 LTS und MySQL 5.5.34.
Knuspriger

+1 hat auch für mich funktioniert. Ich hatte apt-get purge mysql-server ausprobiert, aber apt-get purge mysql-common nicht und funktionierte nicht. Vielen Dank.
Davide Vernizzi

2
ACHTUNG: dies löscht alle Ihre Datenbanken, sichern Sie zuerst!
Panthro

1
Es funktioniert, danke. Wenn es nicht funktioniert, weiß ich nicht, warum es nicht funktioniert. Wenn es funktioniert, weiß ich auch nicht, warum es funktioniert.
Qian Chen

5

Ein paar Vorschläge:

  • Das immer offensichtliche, stellen Sie sicher, dass Sie als root ausgeführt werden.
  • Versuchen Sie es mit apt-get remove mysql .
  • Versuchen Sie dann, eine apt-get-Bereinigung durchzuführen (möglicherweise benötigen Sie apt-get-bereinigung in mysql , manchmal kann aptitude wählerisch sein).
  • Überprüfen Sie immer Ihre Protokolle. Sie werden höchstwahrscheinlich die Antwort für fast alles haben.
  • Versuchen Sie auch, einen Cache für apt-get clear und apt-get clean zu erstellen . Versuchen Sie dann erneut zu installieren.

Oder versuchen Sie diese Lösung, die ich auf Google gefunden habe:

Das Paket mysql-server-5.1 versucht, MySQL nach der Installation des Pakets zu starten, was fehlschlägt. Als erstes müssen Sie den Installationsvorgang sauber abschließen. Hierfür gibt es verschiedene Möglichkeiten:

Korrigieren Sie entweder Ihre MySQL-Konfiguration, überprüfen Sie, ob /etc/init.d/mysql-server funktioniert, und starten Sie dpkg --configure -a, um den Installationsvorgang abzuschließen. oder editieren Sie /var/lib/dpkg/info/mysql-server-5.1.postinst und entfernen Sie den Teil, in dem der Server gestartet wird (wahrscheinlich rufen Sie /etc/init.d/mysql-server start oder so auf), und starten Sie dann dpkg - Konfigurieren Sie -a, um den Installationsvorgang abzuschließen und dann Ihre Konfiguration zu korrigieren.


1
Stimmen Sie dem Rat zu, die install & retry
jamespo

das funktioniert nicht !!
Arihant

2

MySQL konnte nicht gestartet werden. Der Grund dafür sollte in /var/log/mysql.log protokolliert werden (oder ist es immer noch /var/lib/mysql/.err?). Können Sie die Ausgabe von dort einfügen und vielleicht können wir herausfinden, was schief gelaufen ist.


/var/log/mysql.err und /var/log/mysql.log beide Dateien sind leer.
Arihant

Es folgt die Ausgabe von /usr/local/mysql/clc.err file.clc lautet hostname 20:50:31 mysqld_safe Starten von mysqld daemon mit Datenbanken aus / var / lib / mysql 110402 20:50:31 [Warnung] Kann nicht Testdatei erstellen /var/lib/mysql/clc.lower-test 110402 20:50:31 [Warnung] Testdatei kann nicht erstellt werden /var/lib/mysql/clc.lower-test 110402 20:50:31 [FEHLER ] Schwerwiegender Fehler: Kann nicht geändert werden, um als Benutzer 'mysql' ausgeführt zu werden. Bitte überprüfen Sie, ob der Benutzer existiert! 110402 20:50:31 [FEHLER] Abbrechen 110402 20:50:31 [Hinweis] / usr / sbin / mysqld: Herunterfahren abgeschlossen 110402 20:50:31 mysqld_safe mysqld aus der PID-Datei /var/lib/mysql/clc.pid beendet
Arihant

Vielleicht 1) MySQL-Benutzer existiert nicht, oder 2) / var / lib / MySQL ist nicht im Besitz von MySQL-Benutzer? Wenn 2), denken Sie daran, -R zu chown.
Bittrance

Dies ist der Dateieintrag / etc / passwd: 'mysql: x: 118: 128: MySQL Server ,,,: / var / lib / mysql: / bin / false'. Ich habe bereits -R mysql / var / lib / mysql gemacht ..
Arihant

Dies ist die Ausgabe von: apt-get purge mysql-server `* Stoppen des MySQL-Datenbankservers mysqld * Starten des MySQL-Datenbankservers mysqld [fail] invoke-rc.d: initscript mysql, Aktion" start "fehlgeschlagen. dpkg: Fehler beim Bearbeiten von mysql-server-5.1 (--configure): Unterprozess installiertes post-installation script gab den Fehlerwert 1 E: Sub-process / usr / bin / dpkg einen Fehlercode zurückgegeben (1) ` Ich kann nicht verstehen , warum ist Es startet den MySQL-Server-Dienst, wenn ich es entferne.
Arihant

1

Öffnen Sie eine andere Konsole und geben Sie ein ps aux | grep mys

Und töte alles, was so aussieht:

egrep -qi ... /etc/mysql/

Damit sollte die Installation abgeschlossen sein.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.