Иногда бывает необходимость в переносе нескольких баз данных в одну, WordPress при установке в отдельную базу данных предлагает префикс типа wp_, при слиянии баз данных нескольких сайтов необходимо изменить префикс таблиц.
Для переименования префикса таблиц базы данных в phpmyadmin выберите необходимую базу данных, поставьте галочку «отметить все» и выберите (с отмеченными) «добавить префикс таблицы».
Добавьте префикс и нажмите «Выполнить», после чего все таблицы базы данных получат новый префикс.
Для нормальной работы сайта (после смены префикса сайт не будет работать) откройте файл wp-config.php который находится в корне Вашего сайта и измените строчку:
$table_prefix = ‘wp_’; на $table_prefix = ‘новый_префиксwp_’;
Далее в phpmyadmin снова выберите базу данных которую вы хотите перенести с уже измененным префиксом и откройте вкладку «Операции».
В пункте «Скопировать базу данных в:» укажите название базы данных куда вы хотите скопировать таблицы с измененным префиксом.
Далее нажмите «ОК»
Проверьте скопированы ли все таблицы базы данных в новую базу данных, если все нормально, удалите старую базу данных.
Как видно на скриншоте, в одной базе данных разные таблицы сайтов
Далее начинается самое интересное, сайт у Вас будет работать но при обращении к админке сайта у Вас появится сообщение:
Для решения этой проблемы необходимо отредактировать параметры двух таблиц: префиксwp_usermeta и префиксwp_options.
Начнем с таблицы префиксwp_usermeta , открываем таблицу и ищем все опции начинающиеся на wp_ и переименовываем их на префиксwp_.
После чего открываем таблицу префиксwp_options и находим опцию — wp_user_roles и редактируем ее как показано на скриншоте:
После всех изменений Вы может зайти в админ панель. Перенос таблиц базы данных сайта завершен.