Tente ir um nível abaixo do apt, depois de fazer backup de seus bancos de dados:
sudo dpkg -r mysql-server
sudo apt-get check # verify that apt's metadata is okay
sudo apt-get install mysql-server
acrescentou :
Uma vez que dpkg -r
é sufocante, tente dpkg --purge
e falhe, que obtenha o conteúdo do pacote com dpkg -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).
for i in mysql-server-core-5.1 mysql-server-5.1 ... ; do
sudo dpkg -r --force-remove-reinstreq $i
done
Em seguida, obtenha os arquivos .deb necessários para uma instalação completa:
sudo apt-get install --download-only mysql-server
e tente instalá-los um por um:
cd /var/cache/apt/archives
sudo dpkg -i mysql-server-core-5.1_5.1.41-3ubuntu12.3_i386.deb
se você tiver problemas, tente:
sudo dpkg -D77777 -i mysql-server-core-5.1... > 2>&1 /tmp/dpkg.log.$$
E tente encontrar as linhas relevantes fora do zilhão no arquivo de log e poste-as aqui. Boa sorte e velocidade divina.