Próbuję skonfigurować MySQL na Mac OS 10.6 za pomocą Homebrew przez brew install mysql 5.1.52
.
Wszystko idzie dobrze i odnoszę również sukces mysql_install_db
.
Jednak gdy próbuję połączyć się z serwerem za pomocą:
/usr/local/Cellar/mysql/5.1.52/bin/mysqladmin -u root password 'mypass'
Dostaję:
/usr/local/Cellar/mysql/5.1.52/bin/mysqladmin: połącz z serwerem na 'localhost' błąd zakończony niepowodzeniem: „Odmowa dostępu dla użytkownika„ root ”@„ localhost ”(przy użyciu hasła: NIE)”
Próbowałem również uzyskać dostęp mysqladmin or mysql using -u root -proot
,
ale to nie działa z hasłem lub bez.
Jest to zupełnie nowa instalacja na zupełnie nowej maszynie i o ile wiem, nowa instalacja musi być dostępna bez hasła roota. Próbowałem też:
/usr/local/Cellar/mysql/5.1.52/bin/mysql_secure_installation
ale ja też rozumiem
BŁĄD 1045 (28000): Odmowa dostępu dla użytkownika „root” @ „localhost” (przy użyciu hasła: NIE)
mysql
macos
homebrew
mysql-error-1045
nikola
źródło
źródło
mysql -u root
i zadziałało tutaj: |Odpowiedzi:
Myślę, że można skończyć w tej pozycji z już zainstalowanymi starszymi wersjami mysql. Miałem ten sam problem i żadne z powyższych rozwiązań nie zadziałało. Naprawiłem to w ten sposób:
Użyłem poleceń
remove
icleanup
poleceń brew , zwolniłemlaunchctl
skrypt, następnie usunąłem katalog mysql/usr/local/var
,/etc/my.cnf
usunąłem mój istniejący (pozostaw to do ciebie, jeśli ma zastosowanie) i uruchom plistZaktualizowano ciąg dla plist. Uwaga: katalog alternatywnych skryptów bezpieczeństwa będzie oparty na instalowanej wersji MySQL.
Krok po kroku:
Potem zacząłem od zera:
brew install mysql
uruchomiono polecenia napar sugerowane: (patrz uwaga: poniżej)
Uruchom mysql za pomocą
mysql.server start
polecenia, aby móc się na nim zalogowaćZastosowano alternatywny skrypt bezpieczeństwa:
Postępowałem zgodnie z
launchctl
sekcją danych wyjściowych skryptu pakietu parzenia, takich jak:Uwaga:
--force
nieco nabrew cleanup
woli również oczyszczania przestarzałych beczek, że to nowy-owski cecha homebrew.Uwaga druga: komentator mówi, że krok 2 nie jest wymagany. Nie chcę tego testować, więc YMMV!
źródło
launchctl: Couldn't stat("com.mysql.mysqld.plist"): No such file or directory
Oto szczegółowe instrukcje łączące pozbycie się całego MySQL z komputera Mac, a następnie zainstalowanie go The Brew Way, jak napisał Sedorner powyżej:
Usuń MySQL całkowicie według The Tech Lab
ps -ax | grep mysql
kill
wszelkie procesy MySQLsudo rm /usr/local/mysql
sudo rm -rf /usr/local/var/mysql
sudo rm -rf /usr/local/mysql*
sudo rm ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
sudo rm -rf /Library/StartupItems/MySQLCOM
sudo rm -rf /Library/PreferencePanes/My*
launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
/etc/hostconfig
i usunąć linięMYSQLCOM=-YES-
rm -rf ~/Library/PreferencePanes/My*
sudo rm -rf /Library/Receipts/mysql*
sudo rm -rf /Library/Receipts/MySQL*
sudo rm -rf /private/var/db/receipts/*mysql*
sudo rm -rf /tmp/mysql*
mysql
, to nie powinno działaćBrew zainstalować MySQL na użytkownika Sedorner z tej odpowiedzi StackOverflow
brew doctor
i napraw wszelkie błędybrew remove mysql
brew cleanup
brew update
brew install mysql
unset TMPDIR
mysql.server start
launchctl
automatycznie uruchamiał się przy starciemysql
powinien teraz działać i działać cały czas zgodnie z oczekiwaniamiŻyczenia powodzenia.
źródło
sudo rm ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
, a następnie kilka kroków później próbujesz utworzyćlaunchctl unload
ten plik ... ale nie będzie go tam, ponieważ go usunąłeś. Poza tymbrew install mysql
przebiegłmysql_install_db
dla mnie krok, nie trzeba tego robić dwa razy.root
wwhoami
ramach twoich poleceń?root
). To działało świetnie./etc/hostconfig
nie istnieje w Yosemite i późniejszych ( superuser.com/questions/850974/… )Miałem ten sam problem. Wygląda na to, że coś jest nie tak z instrukcjami konfiguracji lub tworzonymi tabelami początkowymi. W ten sposób mysqld działa na moim komputerze.
Jeśli serwer mysqld jest już uruchomiony na komputerze Mac, zatrzymaj go najpierw za pomocą:
launchctl unload -w ~/Library/LaunchAgents/com.mysql.mysqld.plist
Uruchom serwer mysqld za pomocą następującego polecenia, które pozwala każdemu zalogować się z pełnymi uprawnieniami.
mysqld_safe --skip-grant-tables
Następnie uruchom,
mysql -u root
co powinno pozwolić na pomyślne zalogowanie się bez hasła. Następujące polecenie powinno zresetować wszystkie hasła roota.UPDATE mysql.user SET Password=PASSWORD('NewPassword') WHERE User='root'; FLUSH PRIVILEGES;
Teraz, jeśli zabijesz działającą kopię mysqld_safe i uruchomisz ją ponownie bez opcji pomijania tabel, powinieneś być w stanie zalogować się przy
mysql -u root -p
użyciu nowego hasła, które właśnie ustawiłeś.źródło
Jeśli brew zainstalował MySQL 5.7, proces jest nieco inny niż w poprzednich wersjach. Aby zresetować hasło roota, wykonaj następujące czynności:
Hasło tymczasowe zostanie wydrukowane na konsoli i może być użyte tylko do aktualizacji hasła roota:
źródło
ERROR! The server quit without updating PID file (/usr/local/var/mysql/XXXXX.local.pid).
a kiedy robię mysql -u root, hasło nie jest akceptowane.mysql
działa poprawnie. Szkoda, że musiałem poświęcić ogromną ilość czasu, aby uruchomić go na zupełnie nowym Macbooku. : |mysql -u root -p <temp-password>
2.ALTER USER 'root'@'localhost' IDENTIFIED BY 'New-Password';
Okej, miałem ten sam problem i go rozwiązałem. Z jakiegoś powodu skrypt mysql_secure_installation nie działa od razu po zainstalowaniu mysql przy użyciu Homebrew, więc zrobiłem to ręcznie. Na CLI wpisz :
To powinno doprowadzić cię do MySQL. Teraz wykonaj następujące czynności (wzięte z instalacji mysql_secure_installation):
Teraz wyjdź i wróć do mysql z:
mysql -u root -p
źródło
Miałem teraz ten sam problem. Jeśli
brew info mysql
i wykonasz kroki, wygląda na to, że hasło root powinno być,new-password
jeśli dobrze pamiętam. Widziałem to samo, co ty. Ten artykuł najbardziej mi pomógł.Okazało się, że nie utworzyłem dla mnie żadnych kont. Kiedy zalogowałem się po uruchomieniu
mysqld_safe
i nie zrobiłemselect * from user;
żadnych wierszy. Otworzyłem MySQLWorkbench zmysqld_safe
uruchomionym i dodałemroot
konto ze wszystkimi oczekiwanymi przeze mnie szeregami. To działa teraz dla mnie dobrze.źródło
Jeśli mysql jest już zainstalowany
Całkowicie zatrzymaj mysql.
mysql.server stop
<- może wymagać edycji w zależności od wersjips -ef | grep mysql
<- wyświetla listę procesów z mysql w nazwiekill [PID]
<- zabij procesy za pomocą PIDUsuń pliki. Powyższe instrukcje są dobre. Dodam:
sudo find /. -name "*mysql*"
rm -rf
te pliki. Zauważ, że wiele programów ma sterowniki do mysql, których nie chcesz usuwać. Na przykład nie usuwaj rzeczy z katalogu instalacji PHP. Usuwaj rzeczy z własnego katalogu mysql.zainstalować
Mam nadzieję, że masz homebrew. Jeśli nie, pobierz go.
Lubię uruchamiać napar jako root, ale nie sądzę, że musisz. Edycja 2018: nie można już uruchamiać naparu jako root
sudo brew update
sudo brew install cmake
<- zależność dla mysql, przydatnasudo brew install openssl
<- zależność dla mysql, przydatnasudo brew info mysql
<- przejrzyj to ... daje to wyobrażenie o tym, co będzie dalejsudo brew install mysql --with-embedded; say done
<- Instaluje mysql z wbudowanym serwerem. Informuje o zakończeniu (moja instalacja zajęła 10 minut)Potem
sudo chown -R mysql /usr/local/var/mysql/
<- mysql nie działałby dla mnie, dopóki nie uruchomię tego poleceniasudo mysql.server start
<- jeszcze raz dokładna składnia może się różnićźródło
informacje o zaparzeniu mysql
mysql.service start
lub mysql -u root
Szukam rozwiązania od jakiegoś czasu, ale nie mogę rozwiązać mojego problemu. Wypróbowałem kilka rozwiązań w stackoverflow.com, ale to mi nie pomogło.
źródło
sudo chown -R mysql /usr/local/var/mysql/
przed uruchomieniem,mysql.server start
jeśli pracujeszmysql.server
jako użytkownik root (kiedy zaczynasz używać użytkownika root, serwer MySQL przechodzi na_mysql
użytkownika).brew install redis
tbhTL; DR
Serwer MySQL może nie działać po instalacji z Brew. Spróbuj
brew services start mysql
lub po prostu,mysql.server start
jeśli nie chcesz, aby MySQL działał jako usługa w tle.Pełna historia:
Właśnie zainstalowałem MySQL (stabilny) 5.7.17 na nowym MacBooku Pro z systemem Sierra, a także wystąpił błąd podczas uruchamiania
mysql_secure_installation
:Powiedz co
Zgodnie z informacjami o instalacji od Brew,
mysql_secure_installation
powinienem poprosić mnie o ... zabezpieczenie instalacji. Uznałem, że serwer MySQL może nie działać i słusznie. Bieganie,brew services start mysql
a potemmysql_secure_installation
działało jak urok.źródło
Spróbuj, udzielając uprawnienia Grant Command mysql
źródło
Żadna z powyższych odpowiedzi (ani żadna z dziesiątek odpowiedzi, które widziałem gdzie indziej) nie działała dla mnie, gdy używałem naparu z najnowszą wersją mysql i yosemite. Skończyłem instalowanie innej wersji mysql przez brew.
Określanie starszej wersji przez powiedzenie (na przykład)
Pracował dla mnie. Mam nadzieję, że to komuś pomoże. Był to frustrujący problem, który sprawiał, że utknąłem na zawsze.
źródło
brew install mysql
), możesz postępować zgodnie ze wskazówkamiOto aktualizacja MySQL 5.7
źródło
Aby dodać coś do poprzednich odpowiedzi - podczas aktualizacji z MySql 5.6 do MySql 8.0, wykonałem podane tutaj kroki, aby wykonać czystą dezinstalację, ale dostaję następujące błędy
Zajęło mi trochę czasu, żeby to rozgryźć. Znalazłem tutaj wskazówkę: https://discourse.brew.sh/t/clean-removal-of-mysql/2251
Zatem kluczem do mojego problemu było usunięcie pliku /usr/local/etc/my.cnf po odinstalowaniu. Po tym ostatnim kroku MySql w końcu zaczął działać.
źródło
Miałem ten sam problem po próbie ponownego uruchomienia mysql.
Dla wygody używam następujących dwóch aliasów w moim .profile
Po zatrzymaniu mysql i próbie ponownego uruchomienia wystąpił problem, który miałeś. Przejrzałem ładowanie launchctl i zgłaszał błąd „nic nie znaleziono do załadowania”.
Po szybkim wyszukiwaniu znalazłem to ..
http://www.daveoncode.com/2013/02/01/solve-mac-osx-launchctl-nothing-found-to-load-error/
Zaktualizowałem więc
mysql-start
alias w następujący sposóbTo rozwiązało mój problem, który może ci się przydać.
źródło
services
polecenie, więc można je odpowiednio zastąpićbrew services stop mysql
ibrew services start mysql
.Przechowywana jest „Ścieżka podstawowa” dla MySQL, w
/etc/my.cnf
której nie jest aktualizowana podczas aktualizacji brew. Po prostu otwórz i zmień wartość parametru basedirNa przykład zmień to:
wskazać nową wersję:
Uruchom ponownie mysql za pomocą:
źródło