Eu tentei de tudo para instalar o MariaDB nesta instalação limpa do Ubuntu, mas continuo recebendo este erro,
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 (= 5.5.33a+maria-1~saucy)
but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
Eu segui este guia para tentar instalá-lo, http://www.unixmen.com/install-lemp-server-nginx-mysql-mariadb-php-ubuntu-13-10-server/
E também segui o guia "oficial" na página de downloads do MariaDB para a 13.10 https://downloads.mariadb.org/mariadb/repositories/
Mas nada parece estar funcionando.
Editar 1
Eu tentei os dois. Como resolvo dependências não atendidas após adicionar um PPA? e como instalar o MariaDB? mas ainda dá o erro que eu postei acima.
É uma nova instalação do Ubuntu com quase nada instalado.
Editar 2
Todas as caixas de seleção são marcadas em Atualizações. Eu corri:
sudo apt-get update && sudo apt-get -f install mariadb-server-5.5"=5.5.33a+maria-1~saucy"
E isso me deu este erro:
The following packages have unmet dependencies:
mariadb-server-5.5 : Depends: mariadb-client-5.5 (>= 5.5.33a+maria-1~saucy)
but it is not going to be installed
Depends: mariadb-server-core-5.5 (>= 5.5.33a+maria-1~saucy)
but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
apt
software-installation
mariadb
Andreas
fonte
fonte
sudo apt-get update && sudo apt-get -f install mariadb-server-5.5"=5.5.33a+maria-1~saucy"
Certifique-se de ter marcado todas as caixas de seleção na guia Atualizações em Fontes de software . Para verificar, execute:sudo software-properties-gtk
abrir Fontes de Software . Se você receber algum erro / mensagem no comando que mencionei acima, poste-o na sua pergunta.sudo apt-get -f install mariadb-server-5.5"=5.5.33a+maria-1~saucy mariadb-client-5.5"=5.5.33a+maria-1~saucy" mariadb-server-core-5.5"=5.5.33a+maria-1~saucy"
Pegue o padrão que estou fazendo, portanto, se você tiver mais alguns pacotes para instalar, inclua-o na mesma linha que segue o mesmo padrão. Eu sei que seria difícil, mas espero que ajude você. Resposta.libmariadbclient18 : Depends: libmysqlclient18 (= 5.5.33a+maria-1~saucy) but 5.5.34-0ubuntu0.13.10.1 is to be installed
Respostas:
Consulte Incompatibilidade de versão entre os repositórios Mariadb e Ubuntu Debian
Esta é a situação até o momento da redação deste documento, pois os números de versão são mostrados como:
A página MariaDB oferece duas soluções.
Primeira solução: especificando a versão do pacote
qual é
NOTA: Atualize para 5.5.34 para refletir a versão atual a partir de 2014.01.28 [RealPariah] Após a instalação, é necessário reter os pacotes até que os números da versão voltem a ser sincronizados.
Como sei quando os números da versão coincidem novamente?
Você pode acompanhar o número da versão do MariaDB, inscrevendo-se para receber um alerta por email de novos lançamentos em MariaDB.org . Segundo o site, é um
low-traffic announce-only list
.Além disso, quando as versões dos pacotes estiverem novamente sincronizadas, você deve parar de ver uma mensagem no apt de que apenas os dois pacotes retidos serão mantidos, mas que todos os pacotes mariadb serão mantidos:
Isso indica que os números dos pacotes estão novamente sincronizados, que também podem ser verificados em ferramentas sinápticas ou similares.
Segunda solução: Fixando o Repositório MariaDB
Substitua
<mirror-domain>
pelo nome de domínio do espelho MariaDB usado. Por exemploftp.osuosl.org
,. Com o arquivo pin instalado, os pacotes do seu repositório MariaDB terão prioridade sobre os pacotes dos repositórios do sistema.Você pode encontrar o nome do espelho que está usando em Configurações do sistema >> Software e atualizações ou se estiver usando outro tipo de Ubuntu, Synaptic >> Configurações >> Repositórios ou
cat /etc/apt/sources.list
.A
Pin-Priority
neste caso precisa ser maior ou igual a 1000, o quecauses a version to be installed even if this constitutes a downgrade of the package
(Veja
man 5 apt_preferences
para mais informações sobre opções em outros casos.)Nomeando o arquivo de preferências de fixação
Note that the file in the /etc/apt/preferences.d directory are parsed in alphanumeric ascending order and need to obey the following naming convention:
The files have either no or "pref" as filename extension and only contain alphanumeric, hyphen (-), undescore (_), and period (.) characters. Otherwise APT will print a notice that it has ignored a file...
(Fonte
man 5 apt_preferences
:)Portanto, o nome em si não importa, mas um bom nome seria algo parecido
50_mariadb
. Isso identifica o pacote envolvido e permite que outros arquivos de preferências de fixação sejam facilmente colocados antes e depois desse arquivo na ordem de processamento.fonte
Eu tive um problema semelhante no Ubuntu 14.10 atualizando do MySQL para Maria DB. Ou seja, eu ficaria preso com
Depois de seguir essas sugestões sem sucesso, o seguinte me ajudou muito: Como substituir o MySQL pelo MariaDB no Ubuntu Server do JournalXtra.
Editando / var / lib / dpkg / status e removendo as duas instâncias do libmysqlclient18 assim:
O MySQL é um servidor de banco de dados SQL multiusuário e multiusuário rápido, estável e verdadeiro. SQL (Structured Query Language) é a linguagem de consulta de banco de dados mais popular do mundo. Os principais objetivos do MySQL são velocidade, robustez e facilidade de uso. . Este pacote inclui a biblioteca do cliente. Página inicial: http://dev.mysql.com/ Original-Maintainer: Debian MySQL Maintainers
Permitiu-me instalar o MariaDB sem problemas depois.
Nota : Eu cheguei aqui após várias tentativas de remover o libmariadbclient18 e o libmysqlclient18 antes desta solução funcionar. Não consegui solucionar os problemas do apt-get até que esses dois foram removidos, pois foram relatados como pacotes quebrados antes que eu pudesse tentar qualquer outro reparo.
fonte