[MySQL] Problem z połączeniem

0

Mam problem z połączeniem się z bazą danych MySQL. Za każdym razem dostaję: #1045 - Access denied for user: 'thenkles@localhost' (Using password: YES). Kiedyś zadałem to samo pytanie i otrzymałem odpowiedź, żeby z my.ini wywalić w ogóle wpisy user i password. Działa, tylko wtedy nie mam uprawnień, żeby utworzyć bazę... Kiedyś sobie z tym jakoś poradziłem, okrężną drogą, ale teraz mam już dość. Czy ktoś mógłby wyjaśnić, o co w tym chodzi?

0

MySQL nowsze używa innego sposobu kodowania haseł, więc musisz mieć co najmniej wersję 5.0 php żeby się poprawnie połączyć używając hasła albo starszą wersję MySQL - przynajmniej tak gdzieś wyczytałem ale u mnie zainstalowanie php 5.0 w takim przypadku zdało egzamin

0

To jest MySQL 4.0.20, PHP też 4.ileś. No i zwróć uwagę na to:

phpmyadmin napisał(a)

#1045 - Access denied for user: 'thenkles@localhost' (Using password: YES)

0
thenkles napisał(a)

(...) No i zwróć uwagę na to:

phpmyadmin napisał(a)

#1045 - Access denied for user: 'thenkles@localhost' (Using password: YES)

no właśnie, jakby było "Using password: NO" to może i by połączyło a tak się hashe czy coś nie zgadzają - a co ci szkodzi zainstalować PHP 5.0 ?

0

Sorry, źle zrozumiałem ten komunikat. Ale w takim razie, co mogę zrobić? Nie chcę upgrade'ować ani PHP ani MySQL do wersji 5.

0

możesz zdegradować MySQL to wersji <4.1 albo poszukać nowszego modułu mysql/mysqli do php z poprawionym bugiem, ale zobacz - może naprawdę masz źle ustawione i nie masz praw

0

Że praw nie mam, to całkiem możliwe... Tylko jak je, do cholery, ustawić? Szukam i szukam, ale znajduję tylko ustawianie praw, jak się ma uprawnienia :|

0

Zainstaluj sobie MySQL Control Center. Można tam bez problemu zmieniać ustawienia dostępu do wszystkich kont.

0
zOOm3ks napisał(a)

Zainstaluj sobie MySQL Control Center. Można tam bez problemu zmieniać ustawienia dostępu do wszystkich kont.

Tylko, że trzeba mieć jakiegoś użytkownika z uprawnieniami, żeby coś zmieniać...

0

Możesz sobie założyć nowe konto ze wszystkimi uprawnieniami.

Zrób tak:

  • daj wszystkie uprawnienia do "Global privileges" kontom "@localhost" i "root@localhost"
  • zabierz wszystkie przywileje kontom "@%" i "root@%". Pozycja "Global privileges" musi być jednak zaznaczona
  • załuż konto o dowolnym loginie i haśle dla "%" hostów (w domyśle wszystkich)
  • załuż konto o takim samym loginie i haśle dla "localhost"

Ja zrobilem to tak i wszystko jest ok. Łącze się z bazą z dowolnego host za pomocą wprowadzonego loginu i hasła. Jeśli u ciebie nie zadział to niestety nie wiem jak inaczej to rozwiązać

0

Zapomnialem dodać że założone przez ciebie konta mają mieć wszystkie przywileje do bazy którą chcesz otwierać i do "Global privileges". 4 bazowe konta mają mieć zaznaczone tylko "Global privileges"

0

by zmieniać uprawnienia powinieneś mieć konto root'a lub dostęp do niego
potem tylko do mysql wpisujesz:

use mysql;
GRANT ALL PRIVILEGES ON nazwa_bazy.* TO 'nazwa_usera'@'nazwa_hosta_najczesciej_localhost' IDENTIFIED BY 'haselko usera' WITH GRANT OPTION;

nadaje to wszystkie uprawnienia dl usera nazwa_usera w hoście nazwa_hosta_najczesciej_localhost dla bazy nazwa_bazy. User jedynie nie może usuwać tej bazy ani tworzyć nowych...

0

W dokumentacji do mySQL 4.1 jest opisane jak zrobić, aby u zywał starszego typu haseł. Sam pamietam, że tego używałem, bo MySQL-Front nie chciał się połączyć.

1 użytkowników online, w tym zalogowanych: 0, gości: 1