Lorsque j'essaie de faire ce qui suit:
sudo apt-get update
sudo apt-get upgrade
sur mon installation Ubuntu Server 10.04, il se bloque à la ligne suivante:
Preparing to replace mysql-server-5.1 5.1.41-3ubuntu12.1 (using .../mysql-server-5.1_5.1.41-3ubuntu12.3_i386.deb)
Je ne peux même pas en sortir CTRL-C! Je finis par devoir interrompre ma session et me connecter à partir d'un autre terminal et le processus de mise à niveau est toujours en cours. Je l'ai redémarré plusieurs fois et quand je reviens en arrière et réessaye, il me dit:
E: dpkg was interrupted, you must manually run 'sudo --configure -a' to correct the problem.
Une fois que je fais cela, je suis de retour à la case départ et il se fige lorsque j'essaie de mettre à niveau mySQL.
Réponses:
Essayez d'aller à un niveau inférieur à apt, après avoir sauvegardé vos bases de données:
ajouté :
Étant donné qu'il
dpkg -r
est étouffant, essayezdpkg --purge
et échouez à récupérer le contenu du paquet avecdpkg -L mysql-server-5.1
zap, puis à foutre le pied/var/lib/dpkg
.Je n'ai jamais vu les choses devenir aussi poilues, désolé.
si au début vous ne réussissez pas
Je pense en quelque sorte à haute voix ici, pardonnez-moi. Le méta-package mysql-server contient ou nécessite ces packages:
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
Les métadonnées pour la gestion des packages sont délicieusement découplées, il existe des référentiels centraux mais les packages sont autonomes.
/var/cache/apt/archives
est l'endroit où vivent les*.deb
fichiers qui ont été installés.Tout d'abord, forcez dpkg à oublier ces packages (au risque de ne pas supprimer certains fichiers que nous allons remplacer de toute façon).
Obtenez ensuite les fichiers .deb nécessaires pour une installation complète:
puis essayez de les installer un par un:
si vous avez des problèmes, essayez:
Et essayez de trouver les lignes pertinentes du zillion dans le fichier journal et postez-les ici. Bonne chance et bonne chance.
la source
Apparemment, la mise à jour attend que le serveur démarre et pour une raison quelconque, ce n'est pas le cas. Pour résoudre le problème, il existe plusieurs possibilités.
Le plus facile:
Ouvrez un nouveau terminal et exécutez:
Plus compliqué mais parfois nécessaire: (c'est pratique lorsque vous n'avez pas accès à un autre terminal):
Appuyez sur "^ z" ( Ctrl+Z ) qui "ARRÊTERA" votre travail. Exécutez ensuite:
Une fois le serveur démarré, tapez ce qui suit et appuyez sur Entrée:
Cela remettra votre travail "ARRÊTÉ" au premier plan et continuera là où il s'était arrêté.
la source
J'avais ce problème car c'était une copie d'une machine virtuelle, j'avais donc changé l'adresse IP du serveur mais je n'ai pas changé l'adresse de liaison dans le fichier my.cnf. Une fois que j'ai modifié l'adresse de liaison pour correspondre, la mise à jour ne s'est pas arrêtée et s'est terminée avec succès.
la source
J'ai fait face au même problème et j'ai passé plus d'une journée à le déboguer.
Lorsque j'ai supprimé le répertoire de la base de données
/var/lib/mysql/
, l'installation s'est bien déroulée.la source
J'avais ce problème précis, mais aucune des solutions existantes ne semblait appropriée. Forcer une désinstallation est censé être inutile dans n'importe quel * nix et n'est certainement pas KISS. Dans mon cas, j'ai trouvé que la cause était simple. MySQL refusait de démarrer car il fonctionnait toujours! Quand apt a essayé d'arrêter MySQL, il était actif et ne s'est jamais réellement arrêté.
Comme toujours, assurez-vous d'avoir des sauvegardes!
Arrêtez le service:
Assurez-vous que le service ne fonctionne plus:
S'il est toujours en cours d'exécution, donnez-lui du temps:
Mais finalement, s'il fonctionne toujours , vous devez le tuer de manière agressive:
Une fois que vous avez confirmé qu'il ne fonctionne plus, vous pouvez poursuivre la mise à jour.
Une fois la mise à jour terminée, en particulier si vous avez dû tuer -9, assurez-vous d'exécuter mysqlcheck pour vous assurer que tout ce qui a pu empêcher le service de s'arrêter n'est pas une table corrompue ou cassée. Assurez-vous également que vous disposez de sauvegardes régulières (et assurez-vous que ces sauvegardes fonctionnent réellement!).
la source
Dans mon cas, il y avait un problème avec un /etc/mysql/my.cnf existant. La vérification du journal des erreurs dans /var/log/mysql/error.log a révélé:
Évidemment, il pourrait y avoir un problème différent avec my.cnf, mais dans mon cas, c'est que nous essayions de nous lier à une ancienne adresse IP. Changer pour:
corrigé cela et il ne démarre aucun problème.
la source