Quando tento fazer o seguinte:
sudo apt-get update
sudo apt-get upgrade
na minha instalação do Ubuntu Server 10.04, ele fica na seguinte linha:
Preparing to replace mysql-server-5.1 5.1.41-3ubuntu12.1 (using .../mysql-server-5.1_5.1.41-3ubuntu12.3_i386.deb)
Eu não consigo nem CTRL-C com isso! Acabo tendo que interromper minha sessão e efetuar login em um terminal diferente, e o processo de atualização ainda está em execução. Eu o reinicializei várias vezes e, quando volto e tento novamente, ele diz:
E: dpkg was interrupted, you must manually run 'sudo --configure -a' to correct the problem.
Quando faço isso, volto à estaca zero e congela quando tento atualizar o mySQL.
ubuntu
ubuntu-10.04
aptitude
Roubar
fonte
fonte
Respostas:
Tente ir um nível abaixo do apt, depois de fazer backup de seus bancos de dados:
acrescentou :
Uma vez que
dpkg -r
é sufocante, tentedpkg --purge
e falhe, que obtenha o conteúdo do pacote comdpkg -L mysql-server-5.1
zap-los e depois mexa-se/var/lib/dpkg
.Eu nunca vi as coisas ficarem tão peludas, desculpe.
se no começo você não conseguir
Estou meio que pensando em voz alta aqui, me perdoe. O meta-pacote mysql-server contém ou requer estes pacotes:
libdbd-mysql-perl
libdbi-perl
libhtml-template-perl
libnet-daemon-perl
libplrpc-perl
mysql-client-5.1
mysql-client-core-5.1
mysql-server
mysql-server-5.1
mysql-server-core-5.1
Os metadados para gerenciamento de pacotes são deliciosamente dissociados, existem repositórios centrais, mas os pacotes são independentes.
/var/cache/apt/archives
é onde os*.deb
arquivos que foram instalados ao vivo.Primeiro, force o dpkg a esquecer esses pacotes (com risco de falha na remoção de alguns arquivos que vamos substituir de qualquer maneira).
Em seguida, obtenha os arquivos .deb necessários para uma instalação completa:
e tente instalá-los um por um:
se você tiver problemas, tente:
E tente encontrar as linhas relevantes fora do zilhão no arquivo de log e poste-as aqui. Boa sorte e velocidade divina.
fonte
Aparentemente, a atualização está aguardando o servidor iniciar e, por algum motivo, não. Para corrigir o problema, existem várias possibilidades.
O mais fácil:
Abra um novo terminal e execute:
Mais complicado, mas às vezes necessário: (isso é útil quando você não tem acesso a outro terminal):
Pressione "^ z" ( Ctrl+ Z) para "PARAR" o seu trabalho. Então corra:
Depois que o servidor for iniciado, digite o seguinte e pressione Enter:
Isso colocará seu trabalho "PARADO" em primeiro plano e continuará de onde parou.
fonte
Eu estava com esse problema porque era uma cópia de uma VM, portanto havia alterado o endereço IP do servidor, mas não o endereço de ligação no arquivo my.cnf. Depois de alterar o endereço de ligação para corresponder, a atualização não foi interrompida e foi concluída com êxito.
fonte
Enfrentei o mesmo problema e passei mais de um dia depurando-o.
Quando removi o diretório do banco de dados
/var/lib/mysql/
, a instalação ocorreu sem problemas.fonte
Eu estava tendo esse problema exato, mas nenhuma das soluções existentes parecia apropriada. Forçar uma desinstalação é desnecessário em qualquer * nix e definitivamente não é o KISS. No meu caso, descobri que a causa era simples. O MySQL estava se recusando a iniciar porque ainda estava em execução! Quando o apt tentou parar o MySQL, ele estava ativo e nunca parou.
Como sempre, verifique se você tem backups!
Interrompa o serviço:
Verifique se o serviço não está mais em execução:
Se ainda estiver em execução, aguarde algum tempo:
Mas, eventualmente, se ainda estiver em execução, você deve matá-lo agressivamente:
Depois de confirmar que não está mais em execução, você pode continuar com a atualização.
Após a atualização ser concluída, especialmente se você tiver que matar -9, execute o mysqlcheck para garantir que o que possa ter causado o serviço não seja interrompido não seja uma tabela corrompida ou quebrada. Verifique também se você possui backups regulares (e verifique se esses backups realmente funcionam!).
fonte
No meu caso, houve um problema com um /etc/mysql/my.cnf existente. A verificação do log de erros em /var/log/mysql/error.log revelou:
Obviamente, pode haver um problema diferente com o my.cnf, mas no meu caso, estávamos tentando ligar a um endereço IP antigo. Mudando para:
corrigido isso e iniciar sem problemas.
fonte