MySQL-Server / Client kann nicht auf Ubuntu 16 installiert werden

10

Ich habe ein Problem mit der MySQL-Installation, das ich nicht alleine lösen kann. Zuerst habe ich versucht, alte Dateien mit diesem Befehl zu entfernen und zu löschen

sudo apt-get remove --purge mysql

Versuchte auch

sudo apt-get remove --purge mysql*

Und

sudo apt-get remove --purge mariadb*

Alle 3 Befehle geben die gleiche Ausgabe zurück ...

You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
dbconfig-mysql : Depends: mysql-client but it is not going to be installed or
                       mariadb-client but it is not going to be installed or
                       virtual-mysql-client
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).

Also laufe ich, was mir vorgeschlagen wird apt-get -f installund ich habe

$ sudo apt-get -f install
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Correcting dependencies... Done
The following additional packages will be installed:
  mysql-server-5.7
Suggested packages:
  mailx tinyca
The following NEW packages will be installed:
  mysql-server-5.7
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
1 not fully installed or removed.
Need to get 0 B/2,597 kB of archives.
After this operation, 48.3 MB of additional disk space will be used.
Do you want to continue? [Y/n] y
Preconfiguring packages ...
(Reading database ... 300885 files and directories currently installed.)
Preparing to unpack .../mysql-server-5.7_5.7.16-0ubuntu0.16.04.1_amd64.deb ...
Aborting downgrade from (at least) 10.0 to 5.7.
If are sure you want to downgrade to 5.7, remove the file
/var/lib/mysql/debian-*.flag and try installing again.
dpkg: error processing archive /var/cache/apt/archives/mysql-server-5.7_5.7.16-0ubuntu0.16.04.1_amd64.deb (--unpack):
 subprocess new pre-installation script returned error exit status 1
Errors were encountered while processing:
 /var/cache/apt/archives/mysql-server-5.7_5.7.16-0ubuntu0.16.04.1_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

Gleiche Ausgabe bekomme ich, wenn ich laufe apt upgrade -f. Dies ist die Ausgabe vonsystemctl status mysql.service -l

$ systemctl status mysql.service -l
    ● mysql.service
       Loaded: not-found (Reason: No such file or directory)
       Active: failed (Result: exit-code) since Wed 2016-11-23 07:32:55 EET; 58min ago

    Nov 23 07:32:24 stan systemd[1]: Starting LSB: Start and stop the mysql database server daemon...
    Nov 23 07:32:24 stan mysql[7818]:  * Starting MariaDB database server mysqld
    Nov 23 07:32:55 stan mysql[7818]:    ...fail!
    Nov 23 07:32:55 stan systemd[1]: mysql.service: Control process exited, code=exited status=1
    Nov 23 07:32:55 stan systemd[1]: Failed to start LSB: Start and stop the mysql database server daemon.
    Nov 23 07:32:55 stan systemd[1]: mysql.service: Unit entered failed state.
    Nov 23 07:32:55 stan systemd[1]: mysql.service: Failed with result 'exit-code'.

Eine andere Sache, die ich versucht habe, war zu entfernen mysql-serverund dann wieder zu installieren, immer noch der gleiche Fehler.

Kann mir jemand bei diesem Problem helfen? Ich habe keine Ideen mehr, wie ich es beheben kann.

Ausgabe von aktualisieren lsb_release -a

$ lsb_release -a
  No LSB modules are available.
  Distributor ID:   Ubuntu
  Description:  Ubuntu 16.04.1 LTS
  Release:  16.04
  Codename: xenial 

Update2: Ausgabe von sudo apt install mysql-server mysql-client

$ sudo apt install mysql-server mysql-client
  Reading package lists... Done
  Building dependency tree       
  Reading state information... Done
  mysql-client is already the newest version (5.7.16-0ubuntu0.16.04.1).
  mysql-server is already the newest version (5.7.16-0ubuntu0.16.04.1).
  You might want to run 'apt-get -f install' to correct these:
  The following packages have unmet dependencies:
  mysql-server : Depends: mysql-server-5.7 but it is not going to be installed
  E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).
SI
quelle

Antworten:

24

Wir führen die folgenden Befehle aus, um das obige Problem zu lösen:

  1. Rufen Sie die Liste der auf dem System installierten MySQL-Pakete ab, indem Sie den Befehl ausführen sudo dpkg -l | grep mysql
  2. Entfernen Sie die oben gezeigten Pakete, indem Sie den Befehl ausführen sudo apt-get --purge autoremove <packages from the step 1>
  3. Löschen /var/lib/mysql
  4. Versuchen Sie erneut, MySQL zu installieren. Es sollte Ihr Problem lösen.
Bidyut
quelle
Thnak ist für die Antwort. Ich habe es versucht, aber im zweiten Schritt, in dem sie gelöscht und automatisch entfernt wurden, habe ich den gleichen Fehler erhalten:You might want to run 'apt-get -f install' to correct these: The following packages have unmet dependencies: mysql-server : Depends: mysql-server-5.7 but it is not going to be installed E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).
SI
Kann bitte die Ausgabe des Befehls bereitstellenlsb_release -a
Bidyut
Ich habe meine Frage mit der Ausgabe aktualisiert.
SI
ausführen, sudo apt-get updatedann ausführensudo apt install mysql-server mysql-client
Bidyut
Aktualisiert meine Frage mit Ausgabe vonsudo apt install mysql-server mysql-client
SI
1

Ich habe keine Ahnung warum, ich habe mich eine Stunde lang mit diesen Befehlen versucht, bis ich sie gerade gemacht habe

export TERM=xterm

und dann funktionierte es einfach mit apt install.

EDIT: Eigentlich weiß ich jetzt warum. Es kann sein, dass während der Installation versucht wird, die visuelle Oberfläche aufzurufen, in der Sie gefragt werden, ob Sie die Version des Paketverwalters und ähnliches installieren möchten, und dass der Standard-TERM auf einigen Ubuntu-Servern dies nicht kann, sodass die Installation einen Fehler auslöst. Xterm use löst dieses Problem.

LowFieldTheory
quelle