Intente ir un nivel por debajo de apt, después de hacer una copia de seguridad de sus bases de datos:
sudo dpkg -r mysql-server
sudo apt-get check # verify that apt's metadata is okay
sudo apt-get install mysql-server
añadido :
Dado que se dpkg -r
está ahogando, intente dpkg --purge
y no logre obtener el contenido del paquete con el efecto dpkg -L mysql-server-5.1
y luego muckear /var/lib/dpkg
.
Nunca he visto que las cosas se pongan tan peludas, lo siento.
si al principio no tienes éxito
Estoy pensando en voz alta aquí, perdóname. El metapaquete mysql-server contiene o requiere estos paquetes:
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
Los metadatos para la gestión de paquetes están deliciosamente desacoplados, hay repositorios centrales pero los paquetes son independientes. /var/cache/apt/archives
es donde viven los *.deb
archivos que se han instalado.
Primero, obligue a dpkg a olvidarse de estos paquetes (a riesgo de no eliminar algunos archivos que de todos modos vamos a reemplazar).
for i in mysql-server-core-5.1 mysql-server-5.1 ... ; do
sudo dpkg -r --force-remove-reinstreq $i
done
Luego obtenga los archivos .deb necesarios para una instalación completa:
sudo apt-get install --download-only mysql-server
y luego intente instalarlos uno por uno:
cd /var/cache/apt/archives
sudo dpkg -i mysql-server-core-5.1_5.1.41-3ubuntu12.3_i386.deb
Si tiene problemas allí, intente:
sudo dpkg -D77777 -i mysql-server-core-5.1... > 2>&1 /tmp/dpkg.log.$$
E intente encontrar las líneas relevantes del trillón en el archivo de registro y publíquelas aquí. Buena suerte y buena suerte.