如何重新安装破损的mysql包

试图修复一个破损的MySQL安装,这发生在从Debian 6.0升级到7.0之后。 我在/etc/apt/sources.list中有dotdeb.org软件包。

root@ginger:/var/log/mysql# apt-get install mysql-client 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: mysql-server-5.5 : Depends: mysql-client-5.5 (>= 5.5.31+dfsg-0+wheezy1) but 5.5.30-1~dotdeb.0 is to be installed E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution). 

运行apt-get -f install会导致:

 root@ginger:/var/log/mysql# apt-get install -f Reading package lists... Done Building dependency tree Reading state information... Done Correcting dependencies... Done The following packages were automatically installed and are no longer required: libfont-freetype-perl libfontenc1 libgmp3c2 libgsf-1-114 libgsf-1-common libpython2.6 libxcb-render-util0 libxfont1 mysql-client-core-5.5 xfonts-encodings xfonts-utils Use 'apt-get autoremove' to remove them. The following extra packages will be installed: mysql-client-5.5 Suggested packages: libterm-readkey-perl The following packages will be upgraded: mysql-client-5.5 1 upgraded, 0 newly installed, 0 to remove and 141 not upgraded. 178 not fully installed or removed. Need to get 1,923 kB of archives. After this operation, 6,752 kB of additional disk space will be used. Do you want to continue [Y/n]? y Get:1 http://ftp.us.debian.org/debian/ wheezy/main mysql-client-5.5 amd64 5.5.31+dfsg-0+wheezy1 [1,923 kB] Fetched 1,923 kB in 0s (2,323 kB/s) Reading changelogs... Done (Reading database ... 36477 files and directories currently installed.) Preparing to replace mysql-client-5.5 5.5.30-1~dotdeb.0 (using .../mysql-client-5.5_5.5.31+dfsg-0+wheezy1_amd64.deb) ... Unpacking replacement mysql-client-5.5 ... dpkg: error processing /var/cache/apt/archives/mysql-client-5.5_5.5.31+dfsg-0+wheezy1_amd64.deb (--unpack): trying to overwrite '/usr/bin/mysqlcheck', which is also in package mysql-client-core-5.5 5.5.30-1~dotdeb.0 dpkg-deb: error: subprocess paste was killed by signal (Broken pipe) Errors were encountered while processing: /var/cache/apt/archives/mysql-client-5.5_5.5.31+dfsg-0+wheezy1_amd64.deb E: Sub-process /usr/bin/dpkg returned an error code (1) root@ginger:/var/log/mysql# 

任何想法如何删除和干净安装的MySQL?

我有这个工作:

 apt-get remove --purge mysql-client-5.5 mysql-common mysql-server mysql-server-5.5 mysql-server-core-5.5 apt-get -f install -o Dpkg::Options::="--force-overwrite" mysql-server 

这重新创build我删除/ ets / mysql和/ var / lib / mysql目录与默认值。 我已经用OP的dpkg -l | grep -i mysqlfind了这个软件包列表 dpkg -l | grep -i mysql

首先通过以下命令获取超级用户权限。 sudo -i会给你root权限。

以下为我工作:

 apt-get -f install -o Dpkg::Options::="--force-overwrite" 

其次是: apt-get purge mysql\* rm -rf /var/lib/mysql rm -rf /etc/mysql dpkg -l | grep -i mysql apt-get clean apt-get aut updatedb apt-get install mysql-client-core-5.5 mysql-client-5.5 mysql-common mysql-server-5.5 apt-get purge mysql\* rm -rf /var/lib/mysql rm -rf /etc/mysql dpkg -l | grep -i mysql apt-get clean apt-get aut updatedb apt-get install mysql-client-core-5.5 mysql-client-5.5 mysql-common mysql-server-5.5

对于mysql5.6使用波纹pipe

apt-get install mysql-client-core-5.6 mysql-client-5.6 mysql-server-5.6

确保备份所有的数据,因为这会删除所有的东西。

我在这里find这个解决scheme

它看起来像你缺less的dpkg。 你有使用apt-get安装其他软件包的问题吗? 尝试wget一个MySQL的二进制文件然后dpkg来安装它。 如果你得到关于该命令或包的错误dpkg不存在,那么你知道你的问题是dpkg,你需要在你的系统上得到它,然后尝试安装它。