Базата данни на WordPress е като мозъка на целия ви WordPress сайт, тъй като всяка отделна информация се съхранява там, което я прави любима цел за хакерите. И хакерите използват автоматизирани кодове за SQL инжекции.
Е, за съжаление, много хора забравят да променят префикса на базата данни, когато инсталират WordPress. Това улеснява хакерите, защото те ще могат да планират масирани атаки срещу префикса „ wp_ Най-умният начин да защитите базата си данни е като промените префикса ѝ, което е много лесно да се направи по време на инсталацията.
Но са необходими няколко стъпки, за да промените префикса на базата данни в WordPress, особено ако тя вече работи.
Подготовка
Препоръчваме ви да архивирате вашата база данни на WordPress, преди да правите каквото и да било. Важно е да поддържате ежедневни архиви на вашия сайт, препоръчваме приставката " BackupBuddy » да го направите. Следващото нещо, което ви препоръчваме, е да пренасочите посетителите си към временна страница за поддръжка.
Редактирайте файла wp-config.php
Отворете файла "wp-config.php", който се намира в корена на вашия WordPress хостинг. Променете префикса на таблицата в базата данни с "wp_a123456_" или друг израз по ваш избор, който намирате за сложен (без специални символи).
Тази линия трябва да изглежда така:
$ table_prefix = 'wp_a123456_';
Променете всички имена на таблиците в базата данни
Трябва да имате достъп до вашата база данни (най-вероятно от phpMyAdmin), след това променете имената на таблиците на тези, които сме посочили във файла wp-config.php. Ако използвате хостинг с cPanel, можете да намерите връзката phpMyAdmin във вашия cPanel, нещо подобно на следното изображение:
Има общо 11 таблици за WordPress по подразбиране, промяната на всичко това ръчно ще бъде доста болезнено.
Ето защо, за да улесним нещата, имаме SQL заявка, която можете да използвате.
Таблицата RENAME `wp_commentmeta` TO` wp_a123456_commentmeta`; RENAME таблицата `wp_comments` TO` wp_a123456_comments`; RENAME таблицата `wp_links` TO 'wp_a123456_links`; RENAME таблицата `wp_options` TO` wp_a123456_options`; Таблицата RENAME `wp_postmeta` TO` wp_a123456_postmeta`; Таблицата RENAME `wp_posts` TO` wp_a123456_posts`; Таблицата RENAME `wp_terms` TO` wp_a123456_terms`; Таблицата RENAME `wp_termmeta` TO` wp_a123456_termmeta`; RENAME таблицата `wp_term_relationships` TO` wp_a123456_term_relationships`; Таблицата RENAME "wp_term_taxonomy" TO` wp_a123456_term_taxonomy`; Таблицата RENAME `wp_usermeta` TO` wp_a123456_usermeta`; RENAME таблицата `wp_users` TO` wp_a123456_users`;
Може да се наложи да добавите редове за други плъгини, които могат да добавят свои собствени таблици към вашата база данни на WordPress. Идеята е да промените всички префикси на таблицата на каквото искате.
Модификация в таблицата "опции"
Трябва да търсим опции, които все още използват "wp_" като префикс, за да го заменим. За да улесните процеса, използвайте тази заявка:
SELECT * FROM `wp_a123456_options` КЪДЕ 'option_name' LIKE '% wp_%'
Това връща много резултати и трябва да преминете един по един, за да промените тези редове.
Таблица на потребителите на метаси
След това трябва да потърсите потребителски мета, които също използват префикса "wp_", за да го замените. Използвайте тази SQL заявка, за да направите това бързо:
SELECT * FROM `wp_a123456_usermeta` КЪДЕ" meta_key "LIKE '% wp_%'
Броят на входовете може да варира в зависимост от броя на добавките, които използвате. Просто променете всичко, което има "wp_" с новия префикс.
Това е всичко за този урок, надявам се, че ще ви позволи лесно да промените таблиците с префикс на вашата WordPress инсталация.


Здравейте, в следната заявка например, която препоръчвате, за да изведете всички префикси 'wp_':
ИЗБЕРЕТЕ * ОТ `wp_a123456_usermeta` КЪДЕ` meta_key` КАТО '% wp_%'
има символ % пред 'wp', който показва, че префиксът ще бъде в средата на израза. Което в крайна сметка вече не го прави префикс. Защото намерих поне едно поле в таблицата със знаците „wp_“ в средата на името на полето. Трябва ли и той да се модифицира?
В противен случай изпълних всички ваши указания към писмото, като взех предвид предишната ми забележка, но не работи, като се вземат предвид 2-те случая. Имате ли някакъв друг съвет?
Здравей,
Съжалявам за закъснението. Обичайно е да се променят всички случаи на "wp_" в колоната с ключове. Много рядко ще видите разработчици да регистрират данните си с този ключ за своите приставки. Не знам дали обикновените (регулярни) функции работят в базата данни, но всички търсения, които правим с SQL заявката, винаги са заобиколени от "%", дали търсенето започва с началото на низа или до края, не мисля (освен ако не греша), че може да се контролира чрез MySQL.
Ако във вашия случай тя не работи правилно, тогава има вероятно една стъпка, която е била пропусната. Можете ли да ни кажете точно как не работи? Благодаря.