更新至 20.04 后无法运行 mysql

更新至 20.04 后无法运行 mysql

我刚刚从 19.10 升级到 20.04。一切顺利,但我遇到了 mysql 问题。以下是当前安装的软件包:

$ dpkg -l | grep mysql
ii  libmysqlclient21:amd64                            8.0.20-0ubuntu0.20.04.1                     amd64        MySQL database client library
ii  mysql-apt-config                                  0.8.15-1                                    all          Auto configuration for MySQL APT Repo.
ii  mysql-common                                      8.0.19-1ubuntu19.10                         amd64        Common files shared between packages
ii  php-mysql                                         2:7.4+75                                    all          MySQL module for PHP [default]
ii  php7.4-mysql                                      7.4.3-4ubuntu1.1                            amd64        MySQL module for PHP

我需要安装mysql-server才能使用该mysql命令。但是:

mysql-server 依赖 mysql-server-8.0 但不会安装

尝试安装mysql-server-8.0

mysql-server 依赖 mysql-client-8.0 但不会安装

尝试安装mysql-client-8.0

mysql-client-8.0 :依赖 mysql-common (>= 5.5)

但是我使用的mysql-common是 8.0.19 版本,所以依赖性应该满足!我也尝试过删除它mysql-common以便再次安装它,但它会删除我系统的一半:

colord gnome-control-center hplip libhpmud0 libmysqlclient21 libsane libsane-hpaio libsnmp35 mysql-common 打印机驱动程序-hpcups sane-utils ubuntu-desktop ubuntu-desktop-minimal

我也尝试过:

sudo apt-get autoclean
sudo apt-get update
sudo apt-get install --reinstall mysql-server

我该如何解决这种情况?

更新

$ sudo apt install mysql-server-8.0
Lettura elenco dei pacchetti... Fatto
Generazione albero delle dipendenze       
Lettura informazioni sullo stato... Fatto
Alcuni pacchetti non possono essere installati. Questo può voler dire
che è stata richiesta una situazione impossibile oppure, se si sta
usando una distribuzione in sviluppo, che alcuni pacchetti richiesti
non sono ancora stati creati o sono stati rimossi da Incoming.
Le seguenti informazioni possono aiutare a risolvere la situazione:

I seguenti pacchetti hanno dipendenze non soddisfatte:
 mysql-server-8.0 : Pre-dipende: mysql-common (>= 5.5)
                    Dipende: mysql-client-8.0 (>= 8.0.20-0ubuntu0.20.04.1) ma non sta per essere installato
                    Dipende: mysql-common (>= 5.8+1.0.4~)
E: Impossibile correggere i problemi, ci sono pacchetti danneggiati bloccati.

答案1

检查我收到的有问题的包裹的政策:

$ apt policy mysql-common
mysql-common:
  Installato: 8.0.19-1ubuntu19.10
  Candidato:  8.0.19-1ubuntu19.10
  Tabella versione:
 *** 8.0.19-1ubuntu19.10 100
        100 /var/lib/dpkg/status
     5.8+1.0.5ubuntu2 500
        500 http://it.archive.ubuntu.com/ubuntu focal/main amd64 Packages
        500 http://it.archive.ubuntu.com/ubuntu focal/main i386 Packages

因此我猜测升级到 20.04 时出了点问题。我删除了这个包(以及所有其他相关包),如下所示:

sudo apt remove mysql-common

然后上面相同的命令返回:

$ apt policy mysql-common
mysql-common:
  Installato: (nessuno)
  Candidato:  5.8+1.0.5ubuntu2
  Tabella versione:
     8.0.19-1ubuntu19.10 -1
        100 /var/lib/dpkg/status
     5.8+1.0.5ubuntu2 500
        500 http://it.archive.ubuntu.com/ubuntu focal/main amd64 Packages
        500 http://it.archive.ubuntu.com/ubuntu focal/main i386 Packages

再次安装已删除的软件包(现在来自源focal,而不是 19.04):

sudo apt install mysql-server ubuntu-desktop-minimal

解决了这个问题。

相关内容