ubuntu:~$ sudo apt-get install mariadb-server
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
mariadb-server : Depends: mariadb-server-10.0 (= 10.0.3+maria-1~precise) but it
is not going to be installed
E: Unable to correct problems, you have held broken packages.
我想进行“ sudo apt-get升级”,出现以下内容(见下文)。我想将MariaDB更新到最新的10.0.3,并在https://askubuntu.com/a/18694上阅读,因为使用“ sudo aptitude”更容易。虽然,我按了错误的键,但它完成了升级并破坏了MariaDB。
我在使用Ubuntu 12.04 LTS x64时,在错误之前的最后三个月中,MariaDB 10.0正常运行
我尝试再次安装MariaDB 10,如此处所述:https://downloads.mariadb.org/mariadb/repositories/
我还尝试了“ sudo apt-get purge mysql * mariadb *”并删除了它,但保留了配置文件(如安装程序屏幕所要求的。
我的apt sources.list包含在底部:
# MariaDB 10.0 repository list - created 2013-07-29 19:06 UTC
# http://mariadb.org/mariadb/repositories/
deb http://ftp.osuosl.org/pub/mariadb/repo/10.0/ubuntu precise main
deb-src http://ftp.osuosl.org/pub/mariadb/repo/10.0/ubuntu precise main
尽管MariaDB 5.5出现了类似的问题:Installing MariaDB - Unmet dependencies, mariadb-server-5.5
在错误之前进行记录(尽管如上所述,该错误具有一定的天赋):
The following packages have been kept back:
libmariadbclient18 libmysqlclient18 linux-headers-virtual
linux-image-virtual linux-virtual mariadb-client-10.0
mariadb-client-core-10.0 mariadb-server mariadb-server-10.0
mariadb-server-core-10.0
The following packages will be upgraded:
apt apt-transport-https apt-utils bind9-host binutils curl dnsutils
hiphop-php libapt-inst1.4 libapt-pkg4.12 libbind9-80 libcurl3
libcurl3-gnutls libdns81 libdrm-intel1 libdrm-nouveau1a libdrm-radeon1
libdrm2 libisc83 libisccc80 libisccfg82 libldap-2.4-2 liblwres80
libpython2.7 libssl-dev libssl-doc libssl1.0.0 libxml2 libxml2-dev
linux-firmware linux-libc-dev openssl python python-minimal python2.7
python2.7-minimal
36 upgraded, 0 newly installed, 0 to remove and 10 not upgraded.
Need to get 54.8 MB of archives.
我通过以下方式解决了这个问题:
在名为“ mariadb”的“ /etc/apt/preferences.d/”中创建新文件:
Package: *
Pin: origin ftp.osuosl.org
Pin-Priority: 1000
详细信息:https://kb.askmonty.org/en/installing-mariadb-deb-files/#pinning-the-mariadb-repository
这确实固定了MariaDB存储库,并赋予它一个非常高的优先级,使其高于999的优先级,这意味着它甚至会降级软件包来安装MariaDB。
原因:
Oracle正在发布MySQL的安全更新,而Ubuntu正在分发版本号高于MariaDB的最新MySQL软件包。 MariaDB(是MySQL的一个分支)以与MySQL相同的名称提供了多个二进制文件。因此,固定MariaDB存储库解决了该问题。
感谢官方IRC频道的Jbboin向我指出了正确的方向!
检查您的/etc/apt/sources.list
,以前的安装可能有一些剩余,从而导致可靠错误。只需删除它。