Instalacja MariaDB-Unmet dependencies, mariadb-server-5.5

[4]}próbuję zainstalować MariaDB na Ubuntu 12.04 LTS.

Postępowałem zgodnie z instrukcjami podanymi na https://askubuntu.com/questions/64772/how-to-install-mariadb i od MariaDB.org pojawi się po wybraniu opcji pobierania.

Ostatnim krokiem jest sudo apt-get install mariadb-server, który zwraca:

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-5.5 but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

Problem zależności jest problemem potwierdzającym ( https://mariadb.atlassian.net/browse/MDEV-3882 ) ale uważam, że zepsuty pakiet uniemożliwia mi pracę to.

Jeśli próbuję zainstalować libmariadbclient18 dostaję:

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:
 libmariadbclient18 : Depends: libmysqlclient18 (= 5.5.30-mariadb1~precise) but 5.5.31-0ubuntu0.12.04.1 is to be installed
E: Unable to correct problems, you have held broken packages.

Próbowałem naprawić uszkodzony pakiet używając sudo apt-get install -f, ale nadal nie mogę zainstalować mariadb-server ani libmariadbclient18.

Author: Community, 2013-04-25

8 answers

sudo apt-get install libmysqlclient18=5.5.30-mariadb1~precise mysql-common=5.5.30-mariadb1~precise
sudo apt-get install mariadb-server

Pierwszy z nich przywraca dwie biblioteki mysql, które zostały przeniesione po stronie ubuntu do starszych bibliotek mariadb. Drugi może następnie postępować normalnie.

Pakiety zostały usunięte, ponieważ coś w rodzaju apt-get dist-upgrade zostało uruchomione. GUI ostrzega cię, że coś jest nie tak.

Aby zapobiec ponownemu wystąpieniu tego problemu, powiedz apt, aby faworyzował repo MariaDB poprzez przypięcie , tworząc plik w /etc/apt/preferences.d:
$ cat /etc/apt/preferences.d/MariaDB.pref
Package: *
Pin: origin <mirror-domain>
Pin-Priority: 1000

Również, należy zainstalować libmariadbclient-dev Jeśli chcesz skompilować wszystko (jak rubinowe klejnoty).

 34
Author: Lloeki,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-11-15 08:14:03

Zrobiłem coś podobnego do @ Lloeki

$ sudo apt-get purge libmariadbclient18 mariadb-server mariadb-client-5.5 libmysqlclient18 mysql-common```

Następnie wyszukał kandydata do zainstalowania i ponownej instalacji:

$ apt-cache policy libmysqlclient18 | grep -i quantal 
Installed: 5.5.30-mariadb1~quantal
*** 5.5.30-mariadb1~quantal 0
    500 http://ftp.osuosl.org/pub/mariadb/repo/5.5/ubuntu/ quantal/main amd64 Packages
$ apt-cache policy mysql-common | grep -i quantal 
Installed: 5.5.30-mariadb1~quantal
*** 5.5.30-mariadb1~quantal 0
    500 http://ftp.osuosl.org/pub/mariadb/repo/5.5/ubuntu/ quantal/main amd64 Packages
$ 
$ sudo apt-get install libmysqlclient18=5.5.30-mariadb1~quantal mysql-common=5.5.30-mariadb1~quantal mariadb-server mariadb-client

...
 * Stopping MariaDB database server mysqld                                                              [ OK ] 
130428 13:19:40 [Note] Plugin 'InnoDB' is disabled.
130428 13:19:40 [Note] Plugin 'FEEDBACK' is disabled.

Dostałem Ostrzeżenie, że wtyczka została wyłączona, ale po ponownym uruchomieniu mysql z sudo service mysql restart i zainstalowaniu mojego sql, innodb wydawał się w porządku i show create table mytable pokazywał ENGINE=InnoDB DEFAULT CHARSET=utf8 zgodnie z oczekiwaniami.

 9
Author: yuvilio,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-04-28 18:07:19

@yuvilio ma rację z:

$ sudo apt-get install libmysqlclient18=5.5.30-mariadb1~quantal mysql-common=5.5.30-mariadb1~quantal mariadb-server mariadb-client

To działa w 12.04 , 12.10 i 13.04 (również LinuxMint 14).

Najwyraźniej MariaDB jest "wrażliwy" na każde miejsce, w którym jądro zostało zaktualizowane po czymś takim jak 3.5.0-25, co wydaje się wpływać na instalację MariaDB przy użyciu zwykłego waniliowego "sudo apt-get install mariadb-server"

@yuvilio wspomina, że wtyczki 'InnoDB' i 'FEEDBACK' są wyłączone, ale InnoDB działa po tej instalacji.

To sprawia, że idealny sens, ponieważ MariaDB używa XTRA-DB jako zamiennika InnoDB. Prawdopodobnie MariaDB ma również nowy moduł feedback (chcą, aby MariaDB feedback poszedł do mariadb.org i nie do Oracle / mySQL)

 4
Author: Felix Bachofner,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-05-02 17:23:31

Odpowiedź @Lloeki już mi nie działa, ponieważ wymienione wersje nie są dostępne dla mnie, co powoduje ten błąd:

E: Version '5.5.30-mariadb1~precise' for 'libmysqlclient18' was not found

Aby to obejść, musisz znaleźć poprawną wersję:

Możesz uzyskać listę dostępnych wersji za pomocą aptitude versions libmysqlclient18. Dla mojego systemu wyglądało to tak:

Package libmysqlclient18:
[...]
p   5.5.31+maria-1~precise                                         <NULL>                                      1000
i   1:5.5.32-rel31.0-549.precise                                   <NULL>                                      500
[...]    

(jest jeszcze kilka linii, ale pokazane są tylko odpowiednie linie).

Linia z i jest aktualnie zainstalowaną wersją i nie było linii dla sugerowany 5.5.30-mariadb1~precise. Był jednak inny kandydat, który wygląda obiecująco. Pamiętaj, że to, tak jak ja, nie musi być takie samo dla Ciebie (zmiany w czasie).

W tym przykładzie możesz kontynuować tak:

sudo apt-get install libmysqlclient18=5.5.31+maria-1~precise

I po tym instalacji wybierze zarówno Klienta i mariadb-common, i możesz kontynuować:

 sudo apt-get install mariadb-server

Bez błędu OP.

 4
Author: Nanne,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-07-10 14:25:43

Try

sudo dpkg --remove --force-remove-reinstreq BROKEN_PACKAGE
 3
Author: dezza,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-04-25 13:04:49

Pozwól mi podzielić się z jak rozwiązałem w moim przypadku ( Ubuntu 14.04 ).

Miałem błąd:

$ sudo apt-get install mariadb-server-5.5
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-5.5 : Depends: mariadb-client-5.5 (>= 5.5.41+maria-1~trusty) but it is not going to be installed
                      Depends: mariadb-server-core-5.5 (>= 5.5.41+maria-1~trusty) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

Rozwiązanie:

Krok 1: sudo apt-get install libmysqlclient18

Krok 2: sudo apt-get install mariadb-server

Uwagi:

  • instalowałem zgodnie z tymi instrukcjami
  • nie miałem wcześniej zainstalowanego MySQL
 2
Author: Askar,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-01-22 07:16:58

Nie wiem, czy to komuś pomaga, ale miałem problem z instalacją mariadb 10 i dostałem błąd, który doprowadził mnie do tej strony, ale nic, co próbowałem pomógł.

W końcu zdałem sobie sprawę, że mój katalog / tmp był własnością roota i inni użytkownicy nie mogli do niego pisać. Naprawiłem ten problem i zrobiłem:

apt-get remove mariadb-server

Aby spróbować zainstalować go ponownie, ale usunięcie nie powiodło się, więc usunąłem /var/lib/mysql a potem spróbował:

apt-get remove mariadb-server

Znowu i faktycznie ZAINSTALOWAL mariadb-server i Dostal go i bieganie...

Teraz działa.
 2
Author: Chris Seline,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-07-12 05:25:06

Udało mi się zainstalować mariadb usuwając wszystkie pakiety mysql i uruchamiając:


    sudo apt-get install mariadb-server-5.5 mariadb-client-5.5 \
    mariadb-server-core-5.5 mariadb-common mariadb-server \
    libmariadbclient18 libdbd-mysql-perl mariadb-client-core-5.5 \
    libmysqlclient18=5.5.30-mariadb1~quantal \
    mysql-common=5.5.30-mariadb1~quantal

Nie jestem pewien, czy usunięcie mysql było konieczne.

 0
Author: dropslowly,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-04-26 04:20:21