
🔑 Jak zmienić hasło WordPress przez phpMyAdmin: przewodnik krok po kroku
Utracono dostęp do panelu administracyjnego WordPress. Poczta nie działa, wiadomość resetująca hasło nie przychodzi. Panel zarządzania witryną jest za ślepą ścianą, a każda minuta przestoju uderza w odwiedzających i reputację.
Znajoma sytuacja? Nie jest Pan/Pani sam/a. Awarie poczty na hostingu, utrata dostępu do skrzynki e-mail właściciela, włamanie na konto, przyczyn jest bez liku, a rezultat jeden: standardowy scenariusz „Nie pamiętam hasła" jest bezużyteczny.
Na szczęście istnieje obejście. Wystarczy wejść do bazy danych witryny przez phpMyAdmin i ręcznie podmienić hash hasła. To pewniejsze niż czekanie na list i zajmuje dokładnie dwie minuty. Omawiamy wszystkie działające sposoby, od klikalnego po konsolowy.
💡 Szybki przegląd:
- Wchodzimy do phpMyAdmin przez cPanel lub panel hostingu
- Znajdujemy tabelę
wp_usersi edytujemy poleuser_passz funkcją MD5 - Dla szybkości stosujemy zapytanie SQL w jednej linii
- Jeśli mamy dostęp przez SSH, resetujemy hasło przez WP-CLI jedną komendą
Kiedy standardowe resetowanie hasła jest bezsilne
Standardowa mechanika WordPress jest prosta: na stronie logowania klika Pan/Pani „Nie pamiętasz hasła?", wpisuje nazwę użytkownika lub e-mail, otrzymuje link resetujący. Działa niezawodnie, dopóki poczta funkcjonuje.
Problemy zaczynają się, gdy:
- Nie ma Pan/Pani dostępu do skrzynki e-mail przypisanej do konta (adres e-mail administratora się zmienił, skrzynka została porzucona);
- Hosting nie wysyła wiadomości systemowych, funkcja
mail()jest wyłączona, SMTP nie jest skonfigurowane, list trafia do spamu lub ginie; - Witryna została zhakowana, a intruz zmienił zarówno e-mail, jak i hasło administratora.
We wszystkich tych przypadkach jedyną gwarantowaną drogą jest bezpośredni dostęp do bazy danych MySQL. phpMyAdmin jest dostępny praktycznie na każdym hostingu: wchodzi w skład standardowej oferty cPanel, DirectAdmin, Plesk i ISPmanager. Nie trzeba instalować żadnych dodatkowych narzędzi.
Sposób 1: ręczna edycja przez interfejs phpMyAdmin
Najbardziej poglądowa metoda. Odpowiednia, jeśli pracuje Pan/Pani z bazą po raz pierwszy i chce widzieć, co dokładnie zmienia.
Krok 1. Proszę wejść do phpMyAdmin. Proszę otworzyć panel zarządzania hostingiem (cPanel lub analogiczny), znaleźć sekcję „Bazy danych" i kliknąć ikonę phpMyAdmin.
Krok 2. Proszę wybrać bazę danych witryny. W lewej kolumnie znajduje się lista baz. Proszę wybrać tę, która należy do Pana/Pani witryny (jeśli nie pamięta Pan/Pani nazwy, proszę sprawdzić w pliku wp-config.php w katalogu głównym witryny, parametr DB_NAME).
Krok 3. Proszę otworzyć tabelę wp_users. Na liście tabel proszę znaleźć wiersz wp_users (prefiks może się różnić, wp_ jest domyślny, ale bywa wpxy_, site_ i każdy inny, ustawiony podczas instalacji). Proszę kliknąć „Przeglądaj" (Browse).
Krok 4. Proszę kliknąć „Edytuj" przy odpowiednim użytkowniku. Otworzy się formularz ze wszystkimi polami konta.
Krok 5. Proszę podmienić hasło. W polu user_pass proszę usunąć stary hash i wpisać nowe hasło. Z rozwijanej listy „Funkcja" (Function) proszę wybrać MD5. Proszę kliknąć „Wykonaj" (Go) na dole formularza.

Gotowe. Hasło zostało zapisane w bazie jako hash MD5. Przy pierwszym logowaniu WordPress rozpozna przestarzały format, automatycznie ponownie zahashuje hasło nowoczesnym algorytmem (PasswordHash z solą i 256 iteracjami) i zapisze w bazie już wzmocniony wariant. Żadne dodatkowe działania nie są potrzebne, mechanizm kompatybilności wstecznej działa od wersji 2.5.
Sposób 2: szybki reset zapytaniem SQL
Ten sam rezultat, ale w jednym kroku. Wygodne, gdy trzeba zmienić hasło bez nawigowania po wierszach i formularzach.
Proszę wejść do phpMyAdmin, wybrać bazę danych witryny i przejść na zakładkę SQL. Proszę wkleić zapytanie:
1 UPDATE `wp_users` SET `user_pass` = MD5('ваш-новый-пароль') WHERE `user_login` = 'ваше-имя-пользователя';
Proszę zamienić ваш-новый-пароль na rzeczywiste hasło, a ваше-имя-пользователя na login (pole user_login w tabeli). Jeśli prefiks tabel różni się od wp_, proszę go poprawić w zapytaniu. Proszę kliknąć „Wykonaj".
Zapytanie zostanie wykonane natychmiast. Mechanika jest ta sama: MD5 w bazie, automatyczna aktualizacja hashu przy pierwszym logowaniu.
Sposób 3: WP-CLI, dla tych, którzy są zaznajomieni z terminalem
Jeśli na serwerze jest zainstalowane WP-CLI (a na normalnym VPS lub serwerze dedykowanym prawie na pewno jest), hasło zmienia się jedną komendą bez wchodzenia do phpMyAdmin:
1 wp user update ваш-логин --user_pass=новый-пароль
WP-CLI samodzielnie wywoła wp_set_password(), hasło zostanie od razu zapisane prawidłowym, nowoczesnym hashem, bez warstwy MD5. Komenda nie wymaga podawania prefiksu tabel, nie zależy od wersji PHP i nie narusza pozostałych pól użytkownika.
Jeśli trzeba zresetować hasło administratora, ale nie pamięta Pan/Pani loginu, proszę uzyskać listę użytkowników:
1 wp user list --role=administrator
A następnie przekazać odpowiedni login do komendy wp user update.
Sposób 4: awaryjny reset przez functions.php szablonu
Najbardziej „pożarowy" wariant, gdy nie ma dostępu do panelu hostingu, ale może Pan/Pani edytować pliki witryny przez FTP lub menedżer plików.
Proszę dodać w functions.php aktywnego szablonu następujący kod **przed zamykającym tagiem **?> (lub na końcu pliku, jeśli tagu nie ma):
1 wp_set_password('новый-пароль', 1);
Cyfra 1 to ID użytkownika (zazwyczaj 1 to administrator utworzony podczas instalacji). Jeśli administrator ma inne ID, proszę zmienić liczbę.
Proszę zapisać plik i JEDEN raz otworzyć dowolną stronę witryny. Hasło zostanie ustawione. Natychmiast po tym **proszę usunąć wiersz z **functions.php, jeśli go Pan/Pani zostawi, hasło będzie resetowane przy każdym ładowaniu strony.
Sposób jest toporny, ale ratuje, gdy pozostałe są niedostępne.
Na tym 4-minutowym filmie pokazano pełną ścieżkę: od wejścia do cPanelu po zapisanie nowego hasła w tabeli wp_users. Widać dokładnie rozmieszczenie przycisków i rozwijanych list, jeśli interfejs Pana/Pani hostingu różni się, ogólna logika pozostaje ta sama.
⁉️🤔 Często zadawane pytania
Dlaczego właśnie MD5, skoro ten algorytm jest uważany za niebezpieczny?
MD5 w phpMyAdmin to jedyna dostępna funkcja hashująca, którą rozumie WordPress przy bezpośrednim wpisie do bazy. Jednak hash MD5 będzie przechowywany tylko do pierwszego logowania: rdzeń CMS sprawdza hasło, widzi przestarzały format i transparentnie zastępuje je PasswordHash, nowoczesnym algorytmem z solą i 256 iteracjami. Końcowy hash w bazie jest odporny. MD5 pełni tu rolę pomostu transportowego, a nie stałego przechowywania.
Co zrobić, jeśli prefiks tabel to nie wp_, a ja go nie znam?
Proszę otworzyć
wp-config.phpw katalogu głównym witryny i znaleźć wiersz$table_prefix. Wartość tej zmiennej to właśnie prefiks. Jeśli nie ma Pan/Pani dostępu do plików, w phpMyAdmin proszę przewinąć listę tabel:userszawsze kończy się na_users, a prefiks widać po sąsiednich tabelach (_posts,_optionsitd.).
Czy można obejść się bez phpMyAdmin, jeśli nie chcę wchodzić do bazy danych?
Tak, proszę użyć WP-CLI (sposób 3) lub resetu przez
functions.php(sposób 4). WP-CLI wymaga dostępu SSH do serwera, afunctions.php, FTP lub menedżera plików hostingu. Jeśli nie ma Pan/Pani ani jednego, ani drugiego, phpMyAdmin pozostaje jedyną opcją, ale radzi sobie niezawodnie.
Czy metoda zadziała, jeśli witryna działa na PHP 8+ i świeżej wersji WordPressa?
Tak. Wszystkie opisane sposoby działają na aktualnych wersjach WordPressa i PHP. Mechanizm kompatybilności wstecznej hashy MD5 nie był usuwany z rdzenia od wersji 2.5, zbyt wiele witryn aktualizuje się tą drogą. Funkcja MySQL
MD5()również nigdzie nie zniknęła.
Zmieniłem hasło, ale nadal nie mogę się zalogować. W czym rzecz?
Proszę sprawdzić trzy rzeczy. Po pierwsze: w polu
user_loginnie mogły pojawić się zbędne spacje lub błędy, login jest wrażliwy na układ klawiatury. Po drugie: witryna mogła zbuforować starą sesję, proszę otworzyć stronę logowania w trybie incognito. Po trzecie: jeśli zainstalowano wtyczkę bezpieczeństwa (Wordfence, Solid Security), może ona blokować logowanie po IP po kilku nieudanych próbach, proszę odczekać 15 minut lub zresetować blokadę przez tę samą bazę danych w tabeli wtyczki.
Utrata hasła to nie katastrofa, jeśli zna się obejście
phpMyAdmin wygląda przerażająco dla tych, którzy ani razu nie zaglądali do bazy danych. Ale zmiana hasła WordPress przez niego to operacja na trzy kliknięcia i jedną rozwijaną listę. Gdy opanuje ją Pan/Pani raz, już nigdy nie zostanie Pan/Pani zablokowany/a przed ekranem logowania.
Jeśli witryna jest na zwykłym hostingu, Pana/Pani narzędziem jest phpMyAdmin (sposób 1 lub 2). Jeśli VPS lub serwer dedykowany z dostępem konsolowym, WP-CLI (sposób 3) poradzi sobie szybciej. I nawet gdy panel hostingu jest niedostępny, a ma Pan/Pani pod ręką tylko FTP, functions.php (sposób 4) wyciągnie z opresji. Proszę wybrać tę ścieżkę, która jest dostępna właśnie teraz i odzyskać kontrolę nad witryną w dwie minuty.



