instalar digitalocean como ubuntu apt-get mariadb

ubuntu - digitalocean - Instalación de MariaDB-Dependencias no satisfechas, mariadb-server-5.5



sudo apt install mariadb-server (8)

Estoy intentando instalar MariaDB en Ubuntu 12.04 LTS.

He seguido las instrucciones proporcionadas en https://askubuntu.com/questions/64772/how-to-install-mariadb y en MariaDB.org que aparecen cuando eliges la descarga.

El último paso es sudo apt-get install mariadb-server que devuelve:

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.

El problema de la dependencia es un problema de reconocimiento ( https://mariadb.atlassian.net/browse/MDEV-3882 ) pero creo que el paquete roto me impide trabajar en esto.

Si intento instalar libmariadbclient18 obtengo lo siguiente:

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.

Intenté corregir el paquete roto con sudo apt-get install -f , pero todavía no puedo instalar mariadb-server o libmariadbclient18.


Tratar

sudo dpkg --remove --force-remove-reinstreq BROKEN_PACKAGE


Pude instalar mariadb al eliminar todos los paquetes de MySQL que se estaban ejecutando:

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

No estoy seguro si fue necesario eliminar mysql primero.


Hice algo similar a @Lloeki

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

Luego busqué al candidato para instalarlo y reinstalarlo:

$ 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.

Recibí esa advertencia de complemento desactivado pero al reiniciar mysql con el sudo service mysql restart e instalar mi sql, innodb parecía estar bien y show create table mytable mostraba ENGINE=InnoDB DEFAULT CHARSET=utf8 como se esperaba.


@yuvilio tiene razón con:

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

Esto funciona en 12.04, 12.10 y 13.04 (también LinuxMint 14).

Aparentemente MariaDB es "sensible" a cualquier lugar donde el kernel haya sido actualizado después de algo como 3.5.0-25 que parece afectar la instalación de MariaDB usando un simple vainilla "sudo apt-get install mariadb-server"

@yuvilio menciona que los complementos ''InnoDB'' y ''FEEDBACK'' están desactivados, pero que InnoDB funciona después de esta instalación.

Esto tiene mucho sentido porque MariaDB usa XTRA-DB como reemplazo en reemplazo de InnoDB. Es de suponer que MariaDB también tiene un nuevo módulo de comentarios (quieren que los comentarios de MariaDB vayan a mariadb.org y NO a Oracle / mySQL)


La respuesta de @Lloeki ya no funciona, porque las versiones mencionadas no están disponibles para mí, lo que da como resultado este error:

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

Para solucionar esto, debes encontrar una versión correcta:

Puede obtener una lista de versiones disponibles con las versiones de aptitude versions libmysqlclient18 . Para mi sistema esto se veía así:

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

(hay varias líneas más, pero solo se muestran las líneas relevantes).

La línea con i es la versión actualmente instalada, y no había línea para la sugerencia 5.5.30-mariadb1~precise . Sin embargo, hubo otro candidato que parece prometedor. Tenga en cuenta que esto, al igual que yo, no tiene que ser el mismo para usted (cambios a lo largo del tiempo).

En este ejemplo puedes continuar así:

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

y después de esto, la instalación seleccionará tanto el cliente como mariadb-common , y puede continuar con:

sudo apt-get install mariadb-server

sin el error de OP.


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

El primero revierte las dos libs de mysql que se superpusieron al lado de ubuntu a las antiguas mariadb. El segundo puede luego proceder normalmente.

Los paquetes se eliminaron porque se ejecutó algo como apt-get dist-upgrade . La GUI en realidad te advierte que algo anda mal.

Para evitar que vuelva a surgir este problema, indique apt para favorecer el repositorio de MariaDB mediante la creación de un archivo en /etc/apt/preferences.d :

$ cat /etc/apt/preferences.d/MariaDB.pref Package: * Pin: origin <mirror-domain> Pin-Priority: 1000

Además, asegúrese de instalar libmariadbclient-dev si necesita compilar algo (como gemas Ruby).


Permítanme compartir con cómo resolví en mi caso ( Ubuntu 14.04 ).

Tuve un error :

$ 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.

Solución:

Paso 1: sudo apt-get install libmysqlclient18

Paso 2: sudo apt-get install mariadb-server

Notas:

  • Estaba instalando de acuerdo con estas instrucciones
  • No había instalado previamente MySQL

No sé si esto ayuda a alguien, pero tuve problemas para instalar mariadb 10 y obtuve un error que me llevó a esta página, pero nada de lo que intenté ayudó.

Finalmente me di cuenta de que my / tmp dir era propiedad de root y que otros usuarios no podían escribir en él. Solucioné ese problema y luego lo hice:

apt-get remove mariadb-server

para intentar instalarlo de nuevo, pero la eliminación falló, así que eliminé /var/lib/mysql y luego intenté:

apt-get remove mariadb-server

de nuevo y en realidad instaló el servidor mariadb y lo puso en funcionamiento ...

Ahora funciona.