Исправление базы данных на соответствие новому движку
Самый действенный и простой способ проверить, соответствует ли база данных новому движку на новом сервере, это выгрузить описания таблиц из старой базы (без данных) и попробовать прогрузить их на новом сервере в базу.
Для удобства отслеживания процесса, рекомендуется выгружать и загружать базы по одной.
Создание списка команд для вышрузки дампов
Для получения скрипта выгрузки баз данных по одной можно воспользоваться следующим скриптом
set @user='<mysql_user>'; SELECT CONCAT('mysqldump -u',@user,' -p --add-drop-database --add-drop-table --compact --create-options --no-data --quote-names --routines --triggers --events --databases ',s.SCHEMA_NAME,'> dump_',s.SCHEMA_NAME,'.sql') FROM information_schema.SCHEMATA AS s WHERE SCHEMA_NAME LIKE 'medis_%'
Данный скрипт выведет список всех команд для создания бекапа каждой бд в отдельном файле
Создане дампов
Для создания дампов баз данных выполните предоставленные команды в терминале. При активации команды нужно будет ввести пароль пользователя MySQL.
Архивация
После создания дампов, в текущей папке терминала будут созданы файлы dump_<наименование бд>.sql
Для удобства переноса создадим архив
ls dump_*.sql> files_list tar -czvf databaseStructure.tar.gz -T files_list
Перенос архива на новый сервер сервер
rsync -vcruLzh --stats --progress ~/databaseStructure.tar.gz <ssh_user>@<ssh_host>:~/ -e "ssh -p <ssh_port>"
Работа на новом сервере
Распаковываем архив
tar -xvf databaseStructure.tar.gz
После распаковки в текущей папке появятся файлы для создания баз данных
Заливаем структуру БД
Для применения структуры базы данных выполните команду
mysql -u<mysql_user> -p -v <dump_<имя базы данных>.sql
Команду надо выполнить для каждой базы.
В процессе работы будут выдавться сообщения, включая ошибки. Каждую ошибку надо рассматривать отдельно и проверять, что не так.
Работа исключительно ручная.