Nie można zainstalować serwera mysql w Ubuntu


17

Nie mogę zainstalować serwera mysql na moim serwerze Ubuntu 9.10. Podczas korzystania z programu apt-get install mysql-server dane wyjściowe są następujące:

# apt-get install mysql-server

Reading package lists... Done
Building dependency tree
Reading state information... Done

mysql-server is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 120 not upgraded.
2 not fully installed or removed.

After this operation, 0B of additional disk space will be used.
Setting up mysql-server-5.1 (5.1.37-1ubuntu5.4) ...
* Stopping MySQL database server 
    Mysqld    [ OK ]
* Starting MySQL database server 
mysqld [fail]

invoke-rc.d: initscript mysql, action "start" failed.

dpkg: error processing mysql-server-5.1 (--configure):

subprocess installed post-installation script returned error exit status 1

dpkg: dependency problems prevent configuration of mysql-server:

mysql-server depends on mysql-server-5.1; however:
Package mysql-server-5.1 is not configured yet.

dpkg: error processing mysql-server (--configure):
dependency problems - leaving unconfigured

No apport report written because the error message indicates its a followup error from a previous failure.
Errors were encountered while processing:
mysql-server-5.1
mysql-server  
E: Sub-process /usr/bin/dpkg returned an error code (1)

Nigdzie nie mogę znaleźć zadowalającego rozwiązania tego problemu. Wiele witryn mówi o ponownej instalacji, ale nie działa.

Każda pomoc będzie mile widziana.

Dziękuję Ci..


Próbowałeś użyć aptitude? aptitude install mysql-server-5.1
— Chris_O

tak… też spróbowałem tego samego błędu.
— Arihant,

Miał bardzo podobne objawy podczas instalowania serwera mysql, gdy port 3306 został zajęty przez tunel SSH. Zauważyłem chwilę, nie spodziewałem się, że coś takiego
— zepsuje

Odpowiedzi:


26

To działało dla mnie:

apt-get purge mysql-server
apt-get purge mysql-common
rm -rf /var/log/mysql
rm -rf /var/log/mysql.*
rm -rf /var/lib/mysql
rm -rf /etc/mysql
# and then:
apt-get install mysql-server --fix-missing --fix-broken

Chociaż usunie również wszystkie zależności od mysql.

Usunie również istniejące bazy danych, najpierw wykonaj kopię zapasową!

Źródło .


+1 Dla mnie też zadziałało!
— Chris McCauley,

Pracował na Ubuntu 12.04 LTS i MySQL 5.5.34.
— Chrupiący

Dla mnie też +1. Próbowałem apt-get purge mysql-server, ale nie apt-get purge mysql-common i nie działałem. Dzięki.
— Davide Vernizzi

2
UWAGA: spowoduje to usunięcie wszystkich baz danych, najpierw wykonaj kopię zapasową!
— Panthro

1
Działa, dziękuję. Kiedy to nie działa, nie wiem, dlaczego to nie działa. Kiedy to działa, nie wiem też, dlaczego to działa.
— Qian Chen,

5

Kilka sugestii:

  • Zawsze oczywiste, upewnij się, że działasz jako root.
  • Spróbuj zrobić apt-get remove mysql .
  • Następnie spróbuj wykonać apt-get purge (możesz potrzebować apt-get purge mysql , czasem aptitude może być wybredny).
  • Zawsze sprawdzaj dzienniki. Najprawdopodobniej znajdą odpowiedź na prawie wszystko.
  • Spróbuj także wykonać apt-get clear cache i apt-get clean . Następnie spróbuj zainstalować ponownie.

Lub wypróbuj to rozwiązanie, które znalazłem w Google:

Pakiet mysql-server-5.1 próbuje uruchomić MySQL po zainstalowaniu pakietu, co kończy się niepowodzeniem. Pierwszą rzeczą, którą musisz zrobić, to ukończyć proces instalacji. Można to zrobić na kilka sposobów:

napraw konfigurację MySQL, sprawdź, czy działa /etc/init.d/mysql-server, i uruchom dpkg --configure -a, aby zakończyć proces instalacji; lub edytuj /var/lib/dpkg/info/mysql-server-5.1.postinst i usuń część, w której uruchamia serwer (prawdopodobnie wywołując /etc/init.d/mysql-server start lub tak dalej), a następnie uruchom dpkg - skonfiguruj -a, aby zakończyć proces instalacji, a następnie napraw konfigurację.


1
Zgadzam się z poradą, aby wyczyścić instalację i spróbować ponownie
— jamespo

to nie działa !!
— Arihant,

2

Uruchomienie MySQL nie powiodło się. Powodem tego powinno być zalogowanie w /var/log/mysql.log (czy nadal jest to /var/lib/mysql/.err?). Czy możesz wkleić stamtąd dane wyjściowe, a może uda nam się dowiedzieć, co poszło nie tak.


/var/log/mysql.err i /var/log/mysql.log oba pliki są puste.
— Arihant,

Poniżej znajduje się wynik pliku /usr/local/mysql/clc.err file.clc to nazwa hosta 20:50:31 mysqld_safe Uruchamianie demona mysqld z bazami danych z / var / lib / mysql 110402 20:50:31 [Ostrzeżenie] Nie można utwórz plik testowy /var/lib/mysql/clc.lower-test 110402 20:50:31 [Ostrzeżenie] Nie można utworzyć pliku testowego /var/lib/mysql/clc.lower-test 110402 20:50:31 [BŁĄD ] Błąd krytyczny: Nie można zmienić, aby działał jako użytkownik „mysql”; Sprawdź, czy użytkownik istnieje! 110402 20:50:31 [BŁĄD] Przerwanie 110402 20:50:31 [Uwaga] / usr / sbin / mysqld: Zakończono zamykanie 110402 20:50:31 mysqld_safe mysqld z pliku pid /var/lib/mysql/clc.pid zakończone
— Arihant,

Może 1) użytkownik mysql nie istnieje lub 2) / var / lib / mysql nie jest własnością użytkownika mysql? Jeśli 2), pamiętaj, aby chown -R.
— Bittrance

jest to wpis pliku / etc / passwd: „mysql: x: 118: 128: MySQL Server ,,,: / var / lib / mysql: / bin / false”. Zrobiłem już chown -R mysql / var / lib / mysql ..
— Arihant

Oto dane wyjściowe: apt-get purge mysql-server `* Zatrzymywanie serwera MySQL bazy danych mysqld * Uruchomienie serwera MySQL bazy danych mysqld [błąd] invoke-rc.d: initscript mysql, działanie„ start ”nie powiodło się. dpkg: błąd przetwarzania mysql-server-5.1 (--configure): zainstalowany podproces skryptu poinstalacyjnego zwrócił błąd kod wyjścia 1 E: Podproces / usr / bin / dpkg zwrócił kod błędu (1) ` Nie mogę zrozumieć, dlaczego uruchamianie usługi serwera mysql, gdy ją usuwam.
— Arihant,

1

Otwórz inną konsolę, wpisz ps aux | grep mys

I zabij wszystko, co wygląda tak:

egrep -qi ... /etc/mysql/

Powinno to pozwolić na zakończenie instalacji.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.