Как изменить префикс базы данных WordPress

База данных WordPress является «мозгом» всего вашего сайта WordPress, потому как любая информация хранится в ней, и поэтому является основной целью хакеров. Спамеры и хакеры выполняют автоматизированные коды для SQL инъекций. К сожалению, многие пользователи забывают изменять дефолтный префикс базы данных при установке WordPress. Это облегчает задачу хакерам по планированию массированных атак, направленных на префикс БД по-умолчанию wp_. Минимальное, что можно сделать для защиты своей базы данных — это изменить префикс БД, что сделать крайне несложно в процессе установки движка. Однако потребуется немного повозиться для изменения префикса БД WordPress для уже установленного сайта, чтобы не потерять информацию.

Подготовка

Мы рекомендуем сделать резервную копию базы данных перед тем, как делать что-либо, описанное в этой статье.

Изменяем префикс таблиц в wp-config.php

Открываем свой файл wp-config.php, который расположен в корневой директории WordPress. Изменяем префикс таблиц в соответствующей строке с wp_ на что-то в этом роде wp_a123456_

В итоге строка должна выглядеть примерно так:

$table_prefix  = 'wp_a123456_';

Примечание: В названии должны присутствовать только цифры, буквы и подчеркивания.

Изменяем все имена таблиц базы данных

Вам нужно получить доступ к своей базе данных (обычно через phpMyAdmin), а затем изменить названия таблица на те, которые мы указали в файле config.php. Если вы используете хостинг, который предоставляет cPanel, то ссылку на phpMyAdmin можно найти в этой самой панели. Смотрите на скриншот ниже:

phpmyadmin[1]

Всего 11 дефолтных таблиц WordPress, поэтому изменение их вручную может вас расстроить 🙂

sql[1]

Именно поэтому, дабы ускорить процесс, мы поделимся с вами SQL запросом.

RENAME table `wp_commentmeta` TO `wp_a123456_commentmeta`;
RENAME table `wp_comments` TO `wp_a123456_comments`;
RENAME table `wp_links` TO `wp_a123456_links`;
RENAME table `wp_options` TO `wp_a123456_options`;
RENAME table `wp_postmeta` TO `wp_a123456_postmeta`;
RENAME table `wp_posts` TO `wp_a123456_posts`;
RENAME table `wp_terms` TO `wp_a123456_terms`;
RENAME table `wp_term_relationships` TO `wp_a123456_term_relationships`;
RENAME table `wp_term_taxonomy` TO `wp_a123456_term_taxonomy`;
RENAME table `wp_usermeta` TO `wp_a123456_usermeta`;
RENAME table `wp_users` TO `wp_a123456_users`;

Вы можете добавить строки для других плагинов, которые вероятно добавили свои собственные таблицы в базу данных WordPress. Смысл в том, чтобы изменить все префиксы таблиц на нужный вам.

Таблица Options

Нам нужно выполнить поиск в таблице options на предмет других полей, которые используют wp_ в качестве префикса и, соответственно, заменить их. Для упрощения задачи можно использовать следующий запрос:

SELECT * FROM `wp_a123456_options` WHERE `option_name` LIKE '%wp_%'

Отобразится множество результатов поиска, и необходимо будет одну за одной обработать все эти строки.

Таблица UserMeta

Далее, необходимо выполнить поиск в usermeta, чтобы найти все поля, которые используют wp_ в качестве префикса и заменить их. Используйте для этого следующий SQL запрос:

SELECT * FROM `wp_a123456_usermeta` WHERE `meta_key` LIKE '%wp_%'

Количество элементов может варьироваться в зависимости от того, сколько плагинов вы используете. Просто измените все, что использует префикс wp_ на новый.

Теперь можно протестировать сайт. Если вы четко следовали инструкциям выше, то все должно работать как положено. Теперь сделайте новый бекап базы данных просто на всякий случай.

Мы надеемся, что эта статья помогла вам изменить префикс базы данных WordPress.

По всем вопросам и отзывам просьба писать в комментарии ниже.

Не забывайте, по возможности, оценивать понравившиеся записи количеством звездочек на ваше усмотрение.

VN:F [1.9.22_1171]
Rating: 2.4/5 (7 votes cast)

Об авторе ADv

Занимаюсь разработкой сайтов и магазинов на WordPress. Оказываю платные помощь и консультации. Skype: advokat_b
Scroll To Top