mariadb を更新も削除もできない

mariadb を更新も削除もできない

ミスをしました。mariadb を 10.0 から 10.2 にアップデートする必要がありました。そのため、次の操作を実行しました。

$ sudo apt-get install mariadb-server
Reading package lists... Done Building dependency tree        
Reading state information... Done
You might want to run 'apt-get -f install'
  to correct these: 
The following packages have unmet dependencies: 
   mariadb-client : Depends: mariadb-client-10.0 (=10.0.33+maria-1~trusty) but 10.0.31-0ubuntu0.16.04.2 is to be installed
   mariadb-server : Depends: mariadb-server-10.2 (>=    10.2.7+maria~xenial) but it is not going to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).

そして、エラーが発生したため削除しようとしました:

Reading package lists...Done 
Building dependency tree        
Reading state information... Done 
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
   mariadb-client : Depends: mariadb-client-10.0 (=10.0.33+maria-1~trusty) but 10.0.31-0ubuntu0.16.04.2 is to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).

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:   
  mariadb-client-10.0 mariadb-client-core-10.0 mariadb-server-10.0 mariadb-server-core-10.0
Suggested packages:   mailx mariadb-test tinyca
Recommended packages:  libhtml-template-perl 
The following packages will be upgraded:
  mariadb-client-10.0 mariadb-client-core-10.0 mariadb-server-10.0 mariadb-server-core-10.0 
4 upgraded, 0 newly installed, 0 to remove and 26 not upgraded. 
4 not fully installed or removed. 
Need to get 0 B/11,7 MB of archives. 
After this operation, 9709 kB disk space will be freed.
Do you want to continue? [Y/n] y
Preconfiguring packages ... (Reading database ... 304724 files and directories currently installed.)
Preparing to unpack .../mariadb-server-10.0_10.0.33+maria-1~trusty_amd64.deb ...
Unpacking mariadb-server-10.0 (10.0.33+maria-1~trusty) over (10.0.31-0ubuntu0.16.04.2) ...
dpkg: error processing archive /var/cache/apt/archives/mariadb-server-10.0_10.0.33+maria-1~trusty_amd64.deb 
  (--unpack):  trying to overwrite '/usr/share/man/man1/mysql_upgrade.1.gz', which is also in package mariadb-server-core-10.0 10.0.31-0ubuntu0.16.04.2
dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
dpkg: regarding .../mariadb-server-core-10.0_10.0.33+maria-1~trusty_amd64.deb containing mariadb-server-core-10.0:
 mariadb-server-10.0 conflicts with mysql-server-core-5.5   mariadb-server-core-10.0
 provides mysql-server-core-5.5 and is to be installed.

dpkg: error processing archive /var/cache/apt/archives/mariadb-server-core-10.0_10.0.33+maria-1~trusty_amd64.deb
  (--unpack):  
conflicting packages - not installing mariadb-server-core-10.0 
dpkg: regarding .../mariadb-client-core-10.0_10.0.33+maria-1~trusty_amd64.deb containing mariadb-client-core-10.0:  
mariadb-client-10.0 conflicts with mysql-client-core-5.5   
mariadb-client-core-10.0 provides mysql-client-core-5.5 and is to be installed.

dpkg: error processing archive /var/cache/apt/archives/mariadb-client-core-10.0_10.0.33+maria-1~trusty_amd64.deb (--unpack):  
conflicting packages - not installing mariadb-client-core-10.0 dpkg: regarding .../mariadb-client-10.0_10.0.33+maria-1~trusty_amd64.deb containing mariadb-client-10.0:  
mariadb-client-core-10.0 conflicts with mysql-client-5.5   
mariadb-client-10.0 provides mysql-client-5.5 and is to be installed.

dpkg: error processing archive /var/cache/apt/archives/mariadb-client-10.0_10.0.33+maria-1~trusty_amd64.deb (--unpack):  
conflicting packages - not installing mariadb-client-10.0 
Processing triggers for man-db (2.7.5-1) ... 
Errors were encountered while processing:  /var/cache/apt/archives/mariadb-server-10.0_10.0.33+maria-1~trusty_amd64.deb 
/var/cache/apt/archives/mariadb-server-core-10.0_10.0.33+maria-1~trusty_amd64.deb
/var/cache/apt/archives/mariadb-client-core-10.0_10.0.33+maria-1~trusty_amd64.deb
/var/cache/apt/archives/mariadb-client-10.0_10.0.33+maria-1~trusty_amd64.deb 
E: Sub-process /usr/bin/dpkg returned an error code (1)

行き詰まって、インストールも削除もアップデートもできません。

どうすればいいですか?


すると次のようになります。

You might want to run 'apt-get -f install' to correct these: 
The following packages have unmet dependencies:  libmysqlclient20 : 
Depends: mysql-common (>= 5.5) but it is not going to be installed  mariadb-client : 
Depends: mariadb-client-10.0 (= 10.0.33+maria-1~trusty) but 10.0.31-0ubuntu0.16.04.2 is to be installed  mariadb-common : 
Depends: mysql-common (>= 10.0.33+maria-1~trusty) but it is not going to be installed  mariadb-server : 
Depends: mariadb-server-10.0 (= 10.0.33+maria-1~trusty) but 10.0.31-0ubuntu0.16.04.2 is to be installed E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).

答え1

インストールしたいパッケージには、すでにインストールされているパッケージの同様に新しいバージョンに依存する新しいバージョンがあるようです。これらのパッケージをすべてアップグレードするように指示しない限り、apt はこれを修正する方法を知りません。

sudo apt-get update
sudo apt-get dist-upgrade -f

答え2


試しましたか

sudo service mysql stop

実行する前に:

sudo apt-get --purge remove "mysql*"

ノートパソコンで試してみましたが、うまくいきました。

インストール後に追加されたカスタム設定はそのまま残ることに注意してください。

関連情報