Зачем менять префикс в таблицах базы данных для WordPress
Префикс представляет собой небольшую последовательность символов перед именем в каждой из таблиц БД. По умолчанию WordPress предлагает префикс wp_
, однако он не безопасен, поэтому рекомендуется использовать свой более сложный префикс. Префикс добавляют чтобы:
Обезопасить базу данных от SQL-инъекций. Имена таблиц в WordPress всем широко известны. Префикс позволит добавить уникальности в имена таблиц и спрятать их от возможных злоумышленников.
Исключить возможность конфликта имен таблиц. Если вы вдруг хотите использовать одну базу данных для нескольких сайтов на WordPress, хотя это крайне не рекомендуется, то префикс поможет избежать конфликта имен в таблицах. Каждый сайт будет использовать таблицы в соответствии с префиксом указанным в файле wp-config.php
.
Установка префикса таблиц в файле wp-config.php
Найдите в файле wp-config.php
переменную $table_prefix
и измените в ней префикс на новый. В данном примере я буду использовать префикс asdf_
.
Рекомендуется использовать сложные префиксы без словарных слов.
$table_prefix = 'asdf_';
Установка префикса в таблицах базы данных
Откройте СУБД, в которой вы работаете с базами данных, в моем случае это - phpMyAdmin. Выберите ту базу данных где нужно изменить префикс. Далее перейдите в редактор запросов SQL и введите следующую последовательность запросов. Не забудьте установить свой префикс вместо asdf_
.
1 2 3 4 5 6 7 8 9 10 11 12 |
RENAME table `wp_commentmeta` TO `asdf_commentmeta`; RENAME table `wp_comments` TO `asdf_comments`; RENAME table `wp_links` TO `asdf_links`; RENAME table `wp_options` TO `asdf_options`; RENAME table `wp_postmeta` TO `asdf_postmeta`; RENAME table `wp_posts` TO `asdf_posts`; RENAME table `wp_termmeta` TO `asdf_termmeta`; RENAME table `wp_terms` TO `asdf_terms`; RENAME table `wp_term_relationships` TO `asdf_term_relationships`; RENAME table `wp_term_taxonomy` TO `asdf_term_taxonomy`; RENAME table `wp_usermeta` TO `asdf_usermeta`; RENAME table `wp_users` TO `asdf_users`; |

Изменение префикса в полях таблиц
В полях некоторых таблиц (wp_options, wp_usermeta), префикс также может быть указан. Поменяем префикс для полей таблиц asdf_options
и asdf_usermeta
.
Выполните эти два запроса в редакторе SQL, заменив в них префикс asdf_.
1 2 |
UPDATE `cw_options` SET `option_name`=REPLACE(`option_name`,'wp_','asdf_') WHERE `option_name` LIKE '%wp_%'; UPDATE `cw_usermeta` SET `meta_key`=REPLACE(`meta_key`,'wp_','asdf_') WHERE `meta_key` LIKE '%wp_%'; |
Заключение
После этих несложных действий вы можете зайти на главную страницу своего сайта и убедиться в успешности выполненных ранее действий (сайт должен отображаться в штатном режиме)