Перенос таблиц нескольких баз данных сайта в одну

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

Для переименования префикса таблиц базы данных в phpmyadmin выберите необходимую базу данных, поставьте галочку «отметить все» и выберите (с отмеченными) «добавить префикс таблицы».

275673269785678324

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

93265765327862348

Для нормальной работы сайта (после смены префикса сайт не будет работать) откройте файл wp-config.php который находится в корне Вашего сайта и измените строчку:

$table_prefix = ‘wp_’;  на  $table_prefix = ‘новый_префиксwp_’;

Далее в phpmyadmin снова выберите базу данных которую вы хотите перенести с уже измененным префиксом и откройте вкладку «Операции».

В пункте «Скопировать базу данных в:» укажите название базы данных куда вы хотите скопировать таблицы с измененным префиксом.

23659735687234

Далее нажмите «ОК»

Проверьте скопированы ли все таблицы базы данных в новую базу данных, если все нормально, удалите старую базу данных.

Как видно на скриншоте, в одной базе данных разные таблицы сайтов

2367925387682347

Далее начинается самое интересное, сайт у Вас будет работать но при обращении к админке сайта у Вас появится сообщение:

59782368273698237

Для решения этой проблемы необходимо отредактировать параметры двух таблиц: префиксwp_usermeta и префиксwp_options.

Начнем с таблицы префиксwp_usermeta , открываем таблицу и ищем все опции начинающиеся на wp_ и переименовываем их на префиксwp_.

7823462395874683427

После чего открываем таблицу префиксwp_options и находим опцию — wp_user_roles и редактируем ее как показано на скриншоте:

3278687523682379

После всех изменений Вы может зайти в админ панель. Перенос таблиц базы данных сайта завершен.

Добавить комментарий

Войти с помощью: