2012-02-21 17 views
8

Proszę wybacz mi za to, że kompletny początkujący:błąd 1045 (28000) odmowa dostępu dla użytkownika „root” @ „localhost” (using password: YES)

próbuję się zalogować do mojego pierwszego bazy danych MySQL, które Zainstalowałem używając easyPHP na moim komputerze z Windowsem, używając linii cmd. Idę do \ mysql \ bin i wprowadzając komendę:

mysql -u root 

w celu zalogowania się, jednak otrzymuję następujący komunikat:

error 1045 (28000) access denied for user 'root'@'localhost' (using password: YES) 

Dlaczego jest za pomocą hasła „YES "? Czy w ogóle nie powinno być hasła? Czy muszę zrestartować mySQL czy coś takiego? Jeśli tak, jak mam to zrobić? Jeśli jest to istotne, próbowałem utworzyć bazę danych za pomocą phpmyadmin, ale miałem kilka problemów z wprowadzeniem kolumn i zdecydowałem, że lepiej będzie pracować z poziomu wiersza poleceń, abym mógł nauczyć się wszystkich poleceń, kiedy szedłem dalej.

Należy pamiętać, że po raz pierwszy próbuję pracować z bazą danych, więc bądź dla mnie miły!

+6

"używanie hasła: TAK" oznacza, że ​​używasz hasła, a nie "TAK" to hasło. – Borealid

+2

1045 błąd wyjaśniony tutaj: http://www.webyog.com/faq/content/23/18/en/error-no-1045-connection-denied.html –

Odpowiedz

7

Aby mieć mysql z prośbą o hasło, trzeba także określić -p -opcja:

mysql -u root -p 
+0

To działało, dziękuję. Czy jest gdzieś, gdzie mogę dowiedzieć się więcej o różnych poleceniach i rzeczach, których potrzebuję do korzystania z terminali? Czy są one znacząco różne w systemach Windows i Linux? – mavix

+0

Nie, polecenia nie są różne dla klienta wiersza poleceń 'mysql' w systemie Windows lub Linux. Ale mogą się różnić od wersji do wersji ('mysql'). Myślę, że powinieneś przeczytać instrukcję: http://dev.mysql.com/doc/refman/5.5/en/mysql.html W systemie Linux możesz również użyć 'man mysql', aby uzyskać szybki przegląd. – feeela

+0

Uwaga dla użytkowników komputerów Mac, że jeśli zmienisz hasło roota, to polecenie logowania używa dowolnego hasła ustawionego w mysql, a nie hasła root twojego komputera Mac. – Kelseydh

3

Po zalogowaniu się do MySQL za pomocą wiersza poleceń, trzeba także podać hasło, jeśli takie istnieją. Twój komunikat o błędzie informuje Cię, że do użytkownika root przypisano hasło. Niekoniecznie, że hasło brzmi "TAK" podczas instalacji easyPHP, powinno ono dostarczyć domyślne hasło lub pozwolić na wprowadzenie wybranego przez siebie hasła.

Według dokumentacji EasyPHP:

[v1.6] Moje skrypty działało idealnie z 1,5 ale teraz mam ten błąd: Warning: Zakazane dostęp dla użytkownika: 'user @ localhost' (hasło: TAK), gdy chcę połączyć się z MySql.

Tylko użytkownik root (bez hasła) ma prawo do łączenia się z bazą danych. Zmodyfikuj skrypty, aby z nich korzystać, lub dodaj użytkownika, którego potrzebujesz (phpMyAdmin/users and privileges: Zobacz dokumentację phpMyAdmin, aby uzyskać więcej informacji).

mysql -u root -p

Teraz, jeśli zmieniłeś hasło roota, trzeba będzie określić, że gdy pojawi się monit. W przeciwnym razie po prostu naciśnij <Enter> na klawiaturze.

Jeśli zapomniałeś hasła do root'a i zmieniłeś je, będziesz musiał ponownie zainstalować easyPHP.

+0

"Jeśli zapomniałeś hasła do root'a i zmieniłeś je, będziesz musiał ponownie zainstalować easyPHP." Jeśli zapomniałeś hasła do root'a MySQL, musisz przeinstalować MySQL, a nie easyPHP ... – feeela

+0

Z easyPHP, nie sądzę, że możesz po prostu ponownie zainstalować MySQL. Większość pakietów nie instaluje tylko PHP, MySQL itp. Indywidualnie, ale jako zbiorowa grupa. Jeśli zainstalowałeś MySQL, PHP i osobno powiedziałeś Apache, to tak, po prostu przeinstalowałbyś MySQL. W przypadku użytkowników zainstalował MySQL jako część easyPHP. –

0
agk-hp:~/$mysql 
ERROR 1045 (28000): Access denied for user 'greg'@'localhost' (using password: NO) 
agk-hp:~/$sudo cat /etc/mysql/debian.cnf|grep password 
password = t7753my3D2x4yfQm 

agk-hp:~/$mysql -u debian-sys-maint -p 
Enter password: {t7753my3D2x4yfQm} 
Welcome to the MySQL monitor. Commands end with ; or \g. 

mysql> use mysql; 

mysql> grant all privileges on *.* to 'root'@'localhost'; 
mysql> grant all privileges on *.* to 'greg'@'localhost'; 


agk-hp:~/$mysql 
mysql> 
+0

Może podasz trochę szczegółów swojej odpowiedzi. – CaptainBli

0

Modyfikacja dla mysql- 5.7.10 na mac mac El Capitan

  • sudo/usr/local/mysql/support-files/mysql.przystanek serwer
  • sudo mysqld_safe --skip-grant-stoły

    Teraz otwarte nowe okno/zakładkę na terminal i wpisać

  • "mysql -u root"
  • wykorzystanie mysql
  • zestaw aktualizacji użytkownik authentication_string = hasło ("twoje hasło") gdzie użytkownik = "root";
Powiązane problemy