Próbuję uruchomić MySQL z instalacji Homebrew, ale ciągle zawodzi podczas próby mysql.server start
.
Mój /usr/local/var/mysql/<name>.local.err
tak czyta i wysyła ten komunikat o błędzie co kilka sekund.
2018-06-20T20:38:54.6NZ mysqld_safe Logging to '/usr/local/var/mysql/<computer name>.local.err'.
2018-06-20T20:38:54.6NZ mysqld_safe Starting mysqld daemon with databases from /usr/local/var/mysql
2018-06-20T20:38:54.379228Z 0 [System] [MY-010116] [Server] /usr/local/opt/mysql/bin/mysqld (mysqld 8.0.11) starting as process 6271
2018-06-20T20:38:54.383128Z 0 [Warning] [MY-010159] [Server] Setting lower_case_table_names=2 because file system for /usr/local/var/mysql/ is case insensitive
2018-06-20T20:38:54.449869Z 1 [ERROR] [MY-012526] [InnoDB] InnoDB: Upgrade after a crash is not supported. This redo log was created with MySQL 5.7.20. Please follow the instructions at http://dev.mysql.com/doc/refman/8.0/en/upgrading.html
2018-06-20T20:38:54.449947Z 1 [ERROR] [MY-012930] [InnoDB] InnoDB: Plugin initialization aborted with error Generic error.
2018-06-20T20:38:54.919197Z 1 [ERROR] [MY-011013] [Server] Failed to initialize DD Storage Engine.
2018-06-20T20:38:54.919769Z 0 [ERROR] [MY-010020] [Server] Data Dictionary initialization failed.
2018-06-20T20:38:54.919814Z 0 [ERROR] [MY-010119] [Server] Aborting
2018-06-20T20:38:54.920978Z 0 [System] [MY-010910] [Server] /usr/local/opt/mysql/bin/mysqld: Shutdown complete (mysqld 8.0.11) Homebrew.
2018-06-20T20:38:54.6NZ mysqld_safe mysqld from pid file /usr/local/var/mysql/bae.local.pid ended
/usr/local/var/mysql
a nie po prostu usunięcie jej na początku?old.mysql
nie jest nigdzie używany, z wyjątkiem etapu czyszczenia. Pytam, ponieważ pomocna byłaby ponowna instalacja MySQL przy zachowaniu baz danych.Error: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
podczas działania/usr/local/bin/mysql_secure_installation
, być może będziesz musiał po prostu uruchomić serwer MySql, tak jak ja. Możesz to zrobić, uruchamiając polecenie „mysql.server start”.tldr; Nowa wersja mysql została zainstalowana przez Homebrew. Przywróć poprzednio zainstalowaną wersję.
Cała historia polega na tym, że prawdopodobnie zainstalowałeś nowszą wersję mysql
brew upgrade
. Przejrzyj dane wyjściowebrew info mysql
. Możesz zobaczyć więcej niż jedną wersję.W moim przypadku widziałem oba następujące elementy:
Sprawdziłem
mysql --version
i działała nowsza wersja 8.0.11.Homebrew zawiera
switch
polecenie, które pozwala robić to tylko między usługami.Wykonaj to, zastępując wersję własną:
Uruchom ponownie mysql:
Wszystko powinno wrócić do pracy.
źródło
brew switch
które nie.Wygląda na to, że problemem była poprzednia instalacja
/usr/local/var/mysql
.Po odinstalowaniu przez homebrew, usunięciu
/usr/local/var/mysql
, uruchomieniubrew doctor
i ponownej instalacji przez homebrew problem zniknął.źródło
/usr/local/var/mysql
usunięcie całej zawartości bazy danych?