Nie można zainstalować mysql-server-5.5 / następujące pakiety mają niespełnione zależności

26

Jestem tu nowicjuszem, więc proszę o wyrozumiałość.

Używam Ubuntu 14.04.

Próbowałem wprowadzić mysql za pomocą następującego polecenia:

mysql -u root -p

i dostałem następujący komunikat:

The program mysql can be found on the following packages:
* mysql-client-core-5.5 
* mariadb-client-core-5.5 
* mysql-client-core-5.6 
* percona-xtrabd-cluster-client-5.5 

Następnie wpisałem:

sudo apt-get install mysql-client-core-5.6

Po zainstalowaniu tego spróbowałem ponownie połączyć się z mysql, używając:

mysql -u root -p

Następnie dostałem komunikat o błędzie:

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

Po przeszukaniu online dowiedziałem się, że muszę zainstalować serwer mysql, więc napisałem w poniższym poleceniu

sudo apt-get install mysql-server

Potem dostałem wiadomość:

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:
 mysql-server : Depends: mysql-server-5.5 but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

W ciągu ostatniej godziny szukałem rozwiązania online, ale inni ludzie, którzy mieli podobny błąd, ale otrzymali go od aktualizacji mysql, a zatem tamte rozwiązanie było dla mnie nieskuteczne.

Amuna
źródło
Spróbuj sudo apt-get install --fix-missing --force
aroll605
Próbowałem tego i działa. Nie jestem pewien, czy to może ci pomóc.
Ai Kudou

Odpowiedzi:

42

Otwórz terminal i wpisz:

sudo apt-get purge mysql-client-core-5.6
sudo apt-get autoremove
sudo apt-get autoclean
sudo apt install mysql-client-core-5.5
sudo apt install mysql-server  

Zarówno klient podstawowy bazy danych MySQL, jak i pakiety MySQL Server będą miały tę samą wersję 5.5. MySQL Client 5.5 i MySQL Server 5.5 są aktualnymi „najlepszymi” wersjami tych pakietów w Ubuntu 14.04, zgodnie z ustaleniami opiekunów pakietów. Jeśli wolisz zainstalować MySQL Client 5.6 i MySQL Server 5.6, możesz także znaleźć pakiety mysql-client-core-5.6 i mysql-server-5.6 w Centrum oprogramowania Ubuntu. Ważne jest, aby numery wersji klienta i serwera były zgodne w obu przypadkach.

W Ubuntu 16.04 i 18.04 nazwy tych dwóch pakietów to mysql-client-core-5.7 i mysql-server-5.7.

Karel
źródło
nie, te same rzeczy mysql-server : Depends: mysql-server-5.5 but it is not going to be installed. E: Unable to correct problems, you have held broken packages.
Zestaw narzędzi
@Toolkit Napraw ten błąd w następujący sposób: E: Nie można naprawić problemów, trzymałeś uszkodzone pakiety W Ubuntu 16.04 to mysql-client-core-5.7 i mysql-server-5.7.
karel
8

Następujące polecenie rozwiązało mój problem.

sudo aptitude install mysql-server

Jeśli aptitude nie jest zainstalowany na twoim komputerze, najpierw zainstaluj aptitude za pomocą następującego polecenia.

sudo apt-get install aptitude
Ajay Lohia
źródło
Imho, to nie rozwiąże problemu. Zobacz wyjaśnienie @karel.
Jonas Gröger
1
Rozwiązało to dla mnie problem, a @ Karel nie.
acsadam0404
1

Rozwiązałem ten problem za pomocą Menedżera pakietów Synaptic.

Zrozumiałem, że w moim przypadku używam różnych wersji MySQL wspólnej, po stronie serwera i klienta.

W szczególności, dla wspólnego mariabdużywałem repozytorium, aby uzyskać plik. Zmieniłem to, używając Pakiet> Wymuś wersję w Synaptic i wybierając tę ​​samą wersję (5.7.12) dla wszystkich pakietów.

Mam nadzieję, że to pomoże.

Felipe Antunes
źródło