首页 文章

安装MariaDB:未满足的依赖项,mariadb-server-10.0

提问于
浏览
4
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 upgrade",出现以下内容(见下文) . 我想将MariaDB更新到它最新的10.0.3,并在https://askubuntu.com/a/18694上阅读's it'更容易使用"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

在错误之前记录(尽管如上所述在aptitude中做错了):

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.

1 回答

  • 10

    我通过以下方式解决了这个问题:

    在名为“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 Channels 的Jbboin,他指出了我正确的方向!

相关问题