Aby zmienić prefiks tabel bazy danych WordPress, zedytuj $table_prefix w pliku wp-config.php, zmień nazwę każdej tabeli bazy danych na nowy prefiks i zaktualizuj klucze z prefiksem wewnątrz wp_options oraz wp_usermeta. Metoda z wtyczką jest najszybsza i najbezpieczniejsza dla większości witryn; SQL w phpMyAdmin lub Adminerze daje pełną kontrolę przy większych bazach danych. Zawsze najpierw wykonaj kopię zapasową bazy danych.
Zmiana prefiksu tabel bazy danych WordPress to prosty, ale skuteczny sposób na zwiększenie bezpieczeństwa witryny. Domyślnie WordPress przypisuje prefiks tabel wp_, co czyni go częstym celem hakerów próbujących przeprowadzić ataki typu SQL injection. Modyfikacja tego prefiksu może pomóc chronić bazę danych przed takimi zagrożeniami.
Której metody powinieneś użyć?
| Metoda | Wymaga | Poziom ryzyka | Najlepsza dla |
|---|---|---|---|
| Wtyczka | dostępu do wp-admin, zapisywalnego wp-config.php |
Niski | Większości witryn; użytkowników nietechnicznych |
| SQL z phpMyAdmin | dostępu do cPanel / phpMyAdmin | Średni | Hostingów dostarczających phpMyAdmin |
| SQL z Adminerem | dostępu do bazy danych przez Adminer | Średni | Administracji bazą danych w jednym pliku |
Wszystkie trzy zmieniają te same trzy rzeczy: prefiks w wp-config.php, nazwy tabel oraz klucze z prefiksem w wp_options i wp_usermeta. Różnią się jedynie narzędziem, którego używasz do tego celu.
Każde działanie w witrynie WordPress jest powiązane z bazą danych:

Dlaczego warto zmienić prefiks tabel WordPress?
Zmiana domyślnego prefiksu tabel wp_ pomaga:
- Zmniejszyć ryzyko ataków typu SQL injection
- Utrudnić atakującym odgadnięcie nazw tabel
- Dodać dodatkową warstwę bezpieczeństwa do witryny WordPress
To jednorazowy krok wzmacniający zabezpieczenia. Niestandardowy prefiks sam w sobie nie zatrzyma zdeterminowanego atakującego, ale udaremnia zautomatyzowane skrypty, które zakładają domyślne nazwy wp_ — a te skrypty stanowią większość tego, co atakuje bazę danych WordPress.
Wykonaj kopię zapasową bazy danych przed rozpoczęciem
Changing the WordPress database prefix can be a critical task, and it’s not always easy. You must ensure you don’t break your website by changing the WordPress table prefix.
Before changing the database prefix, we recommend doing it on a staging site. So you can check thoroughly if the update works and can safely push your staging site to the production site without any risk of data loss after changing the DB prefix.A staging site is a copy of your live site, so you can do different changes/testing and make those changes live with a single click.
You can create a free staging site with WP STAGING.
Podczas instalacji WordPressa jednym z najczęstszych błędów jest zapomnienie o zmianie prefiksu bazy danych, co pozostawia otwartą furtkę dla zautomatyzowanych ataków SQL injection. Podjęcie środków zapobiegawczych jest kluczowe, aby chronić witrynę przed włamaniem. Zmieniony prefiks dotyka każdej tabeli, więc aktualna kopia zapasowa jest twoją siatką bezpieczeństwa, gdyby któryś krok poszedł nie tak — możesz wykonać kopię zapasową i przywrócić witrynę WordPress w kilka minut przed wprowadzeniem jakiejkolwiek zmiany.
Jak zmienić prefiks bazy danych WordPress?
Postępuj zgodnie z tym przewodnikiem krok po kroku, aby bezpiecznie zmienić nazwę prefiksu bazy danych WordPress. Istnieją trzy opcje:
- Użyć wtyczki do zmiany prefiksu tabel bazy danych.
- Zmienić nazwę prefiksu zapytaniem SQL w Adminerze.
- Zmienić nazwę prefiksu zapytaniem SQL w phpMyAdmin.
Contents
Metoda 1: Zmiana prefiksu tabel za pomocą wtyczki
Wtyczka to najszybsza i najmniej ryzykowna opcja, ponieważ edytuje wp-config.php, zmienia nazwy tabel oraz aktualizuje za ciebie klucze z prefiksem w option i usermeta. Oto kroki:
- Przejdź do kokpitu WordPress.
- Przejdź do zakładki „Wtyczki" i kliknij „Dodaj nową".
- Wyszukaj Brozzme DB Prefix & Tools Add-ons w repozytorium wtyczek WordPress.
- Kliknij przycisk Zainstaluj teraz, aby zainstalować Brozzme DB Prefix & Tools Add-on na swojej witrynie.
- Kliknij przycisk aktywuj, aby aktywować tę wtyczkę.

Wtyczka jest aktywowana i możemy od razu zacząć pracę nad zmianą prefiksu bazy danych WordPress.
- Przejdź do Narzędzia i kliknij DB Prefix. Możesz zobaczyć aktualny prefiks swojej bazy danych i zmienić go na nowy.

Jeśli twój plik wp-config.php nie jest zapisywalny, otrzymasz powiadomienie o błędzie, ponieważ wtyczka nie może zmienić prefiksu bazy danych w pliku wp-config.php. Popraw uprawnienia pliku (lub edytuj wp-config.php ręcznie, jak pokazano w Metodzie 2) i spróbuj ponownie.
Kończysz, klikając przycisk „Change DB Prefix".
Metoda 2: Zmiana prefiksu za pomocą SQL w Adminerze
Krok 1: Zmień prefiks tabel w wp-config.php
Zmień wartość prefiksu tabel w pliku wp-config.php znajdującym się w głównym folderze katalogu WordPress.
Aby edytować wp-config.php, zaloguj się przez FTP lub SFTP, używając FileZilla lub dowolnego innego klienta FTP. Dane FTP znajdziesz w cPanel (w zależności od hostingu — niektóre używają niestandardowego panelu zamiast cPanel). Zobacz przewodnik WordPress dotyczący edycji wp-config.php, aby uzyskać pełne informacje.
Wyszukaj tę linię w pliku wp-config.php:
$table_prefix = 'wp_testing123_';


Prefiks może zawierać tylko cyfry, litery i znaki podkreślenia. Po wprowadzeniu zmiany w wp-config.php zapisz go.
Krok 2: Zmień nazwy tabel bazy danych
Jeśli używasz Adminera, znajdź przycisk polecenia SQL w lewym górnym rogu i wybierz go.

Poniższe zapytanie SQL zmienia prefiks tabel WordPress w istniejącej witrynie. Zaktualizuj właściwości SET zgodnie ze swoimi potrzebami:
- nazwa bazy danych
- oldprefix_
- newprefix_
Oto to zapytanie SQL:
SET @database = "<strong>databasename</strong>";
SET @oldprefix = "<strong>oldprefix_</strong>";
SET @newprefix = "<strong>newprefix_</strong>";
SELECT
concat(
"RENAME TABLE ",
TABLE_NAME,
" TO ",
replace(TABLE_NAME, @oldprefix, @newprefix),
';'
) AS "SQL" FROM information_schema.TABLES WHERE TABLE_SCHEMA = @database;Po dostosowaniu zapytania otrzymasz coś takiego:

Wykonaj to zapytanie. Generuje ono drugi zestaw instrukcji RENAME, taki jak ten:
RENAME oldprefix_options to newprefix_options;
RENAME oldprefix_users to newprefix_users;
Skopiuj te instrukcje i wykonaj je, aby zmienić nazwy tabel na nowe. (RENAME TABLE to standard MySQL — zobacz dokumentację RENAME TABLE w MySQL.)

Krok 3: Zmień prefiks w tabeli usermeta
Po zmianie nazw tabel zastąp wartości z prefiksem w *_usermeta i *_options poniższymi zapytaniami. Nie zapomnij zaktualizować podświetlonych ciągów.
Aby zastąpić wartości w tabeli *_usermeta, użyj tego zapytania:
UPDATE `newprefix_usermeta`
SET meta_key = REPLACE(meta_key, 'oldprefix_', 'newprefix_')
WHERE meta_key LIKE 'oldprefix_%';
Krok 4: Zaktualizuj prefiks w tabeli wp_options
Ostatnim krokiem jest zastąpienie wartości w tabeli *_options. Użyj tego zapytania:
UPDATE wp_options SET option_name = replace(option_name, 'wp_', 'new_') WHERE option_name LIKE 'wp_%';
To wszystko, jeśli chodzi o metodę z Adminerem.
Metoda 3: Zmiana prefiksu za pomocą SQL w phpMyAdmin
Krok 1: Zmień prefiks tabel w wp-config.php
Zmień prefiks tabel w pliku wp-config.php znajdującym się w głównym folderze katalogu WordPress.
Aby edytować wp-config.php, zaloguj się przez FTP lub SFTP, używając FileZilla lub dowolnego innego klienta FTP. Dane FTP znajdziesz w cPanel (w zależności od hostingu — niektóre używają niestandardowego panelu zamiast cPanel).
Znajdź tę linię w pliku wp-config.php:
$table_prefix = 'wp_testing123_';
Prefiks może zawierać tylko cyfry, litery i znaki podkreślenia. Po wprowadzeniu zmiany w wp-config.php zapisz go.
Krok 2: Zmień nazwy tabel bazy danych
Jeśli używasz cPanel, otwórz phpMyAdmin. Po lewej stronie zobaczysz swoje bazy danych. Jeśli nie używasz cPanel, skontaktuj się z hostingiem, aby uzyskać dostęp do bazy danych swojej witryny. Dokumentacja phpMyAdmin obejmuje dostęp i logowanie, jeśli dopiero zaczynasz.
Wybierz bazę danych, której prefiks ustawiłeś w wp-config.php, a następnie wykonaj następujące czynności:
- Wybierz bazę danych.
- Zaznacz pole wyboru „Zaznacz wszystkie", aby wybrać wszystkie tabele.
- Otwórz listę rozwijaną i wybierz „Zamień prefiks tabel".

- Zastąp stary prefiks nowym prefiksem.

Po wprowadzeniu nowego prefiksu kliknij Kontynuuj, aby zmienić prefiks na każdej tabeli.
Krok 3: Zmień prefiks w tabeli options
Wyszukaj prefiks wp_ w tabeli options za pomocą tego zapytania:
SELECT * FROM `wp_testing123_options` WHERE `option_name` LIKE '%wp_%'Zastąp każdy stary prefiks nowym prefiksem.

Krok 4: Zaktualizuj prefiks w tabeli usermeta
Wyszukaj wp_ jako prefiks w tabeli usermeta i zastąp go za pomocą tego zapytania:
SELECT * FROM `wp_testing123_usermeta` WHERE `meta_key` LIKE '%wp_%'
Alternatywnie, jeśli chcesz zmienić prefiks bazy danych za pomocą jednego zapytania, możesz użyć tego jednego zapytania na istniejącej witrynie WordPress:
SET @database = "database_name";
SET @old_prefix = "old_prefix_";
SET @new_prefix = "new_prefix_";
SELECT concat "RENAME TABLE ", TABLE_NAME, " TO", replace(TABLE_NAME, @old_prefix, @new_prefix),';') AS "SQL" FROM information_schema.TABLES WHERE TABLE_SCHEMA = @database;To zapytanie tworzy drugie zapytanie, które zmienia nazwy wszystkich prefiksów tabel na nowe. Po jego uruchomieniu nadal musisz zastąpić wartości z prefiksem w wp_usermeta i wp_options poniższymi zapytaniami:
UPDATE `wp_testing123_usermeta`
SET meta_key = REPLACE(meta_key, 'wp_', 'new_')
WHERE meta_key LIKE 'wp_%';
UPDATE wp_options SET option_name = replace(option_name, 'wp_', 'new_') WHERE option_name LIKE 'wp_%';To wszystko — to jest ręczna metoda zmiany prefiksu bazy danych.
Zablokowany dostęp do wp-admin po zmianie nazwy prefiksu?
To zdecydowanie najczęstsza awaria przy zmianie nazwy prefiksu tabel WordPress. W zgłoszeniach do pomocy technicznej WP STAGING niemal zawsze sprowadza się to do jednego klucza z prefiksem, którego nazwa została zmieniona w tabelach, ale został pominięty wewnątrz danych. Przejdź przez tę listę kontrolną po kolei:
- Czy zaktualizowałeś
wp-config.php? Wartość$table_prefixmusi dokładnie odpowiadać nowym nazwom tabel. Niezgodność tutaj to typowa przyczyna komunikatu „Błąd podczas nawiązywania połączenia z bazą danych" lub pętli logowania. - Czy zaktualizowałeś klucz capabilities w
wp_usermeta? Wierszwp_capabilitiesmusi zostać zmieniony nanewprefix_capabilities. Jeśli nadal używa starego prefiksu, WordPress nie może odczytać twoich ról i blokuje ci dostęp. - Czy zaktualizowałeś klucz user level w
wp_usermeta? Zmień nazwęwp_user_levelnanewprefix_user_levelz tego samego powodu. - Czy zaktualizowałeś klucz user roles w
wp_options? Zmień nazwęwp_user_rolesnanewprefix_user_roles. WordPress odczytuje stąd definicje ról podczas logowania.
Klucze do zweryfikowania, według tabel:
W tabeli wp_options:
wp_user_roles
W tabeli wp_usermeta:
wp_capabilitieswp_user_level
Po zmianie nazw tych kluczy tak, aby używały tego samego prefiksu co twoje tabele, będziesz mógł zalogować się ponownie. Jeśli nadal jesteś zablokowany, przywróć kopię zapasową wykonaną na początku i powtórz kroki.
Najczęściej zadawane pytania
Czy bezpieczna jest zmiana prefiksu bazy danych WordPress na działającej witrynie?
Jest bezpieczna, jeśli najpierw wykonasz kopię zapasową bazy danych i zaktualizujesz każde miejsce, w którym pojawia się prefiks: wp-config.php, nazwy tabel oraz klucze z prefiksem w wp_options i wp_usermeta. Metoda z wtyczką obsługuje to wszystko automatycznie, dlatego jest opcją o najniższym ryzyku. Jeśli możesz, przetestuj najpierw na kopii staging.
Dlaczego po zmianie otrzymuję „Błąd podczas nawiązywania połączenia z bazą danych"?
$table_prefix w wp-config.php nie pasuje już do nazw twoich tabel. Otwórz wp-config.php i potwierdź, że prefiks dokładnie odpowiada zmienionym nazwom tabel, łącznie z końcowym znakiem podkreślenia.
Czy muszę zmieniać prefiks na istniejącej witrynie, czy tylko podczas instalacji?
Możesz to zrobić w dowolnym momencie. Zmiana podczas instalacji jest najprostsza, ponieważ nie ma żadnych danych do migracji, ale trzy powyższe metody działają również na istniejącej witrynie.
Czy niestandardowy prefiks może uszkodzić wtyczki?
Może, jeśli wtyczka na sztywno koduje wp_ zamiast odczytywać skonfigurowany prefiks WordPressa. Dobrze napisane wtyczki używają prefiksu zgłaszanego przez WordPress, więc działają dalej. Po zmianie przejrzyj swoje kluczowe wtyczki, aby to potwierdzić.
Podsumowanie
Zmiana prefiksu tabel WordPress to prosty, ale skuteczny środek bezpieczeństwa. Niezależnie od tego, czy używasz phpMyAdmin, wtyczki czy skryptów SQL, zawsze wykonaj kopię zapasową bazy danych przed wprowadzeniem zmian. Ta drobna modyfikacja może znacznie przyczynić się do zabezpieczenia twojej witryny WordPress.