Перенос базы MySQL в PostgreSQL средствами Moodle

Re: Перенос базы MySQL в PostgreSQL средствами Moodle

от Vadim Dvorovenko -
Количество ответов: 1
Изображение пользователя Developers Изображение пользователя Майнтейнер перевода
Есть его же вариант для командной строки admin\tool\dbtransfer\cli\migrate.php.
Но он работает очень медленно, поскольку перенос каждой из записей в бд делается в отдельной транзакции, в результате принимающая база данных должна постоянно писать на диск неоптимальными порциями.
при переносе альтернативными инструментами проблема в том, что они создают структуру таблиц не так, как её создал бы сам moodle - по другому могут называться, например, секвенции - их нет в mysql, поэтому скрипту миграции приходится самому додумывать их название. Поэтому после такого переноса нужно проверить структуру БД moodle встроенным в moodle скриптом проверки.

И, кстати, если сервер postgresql разместить на машине, с другим физическим диском, то процесс может пойти быстрее, так как чтение и запись будет на разных дисках
В ответ на Vadim Dvorovenko

Re: Перенос базы MySQL в PostgreSQL средствами Moodle

от Ionov Maxim -

Доработал средство переноса, чтобы он копировал строки не поштучно, а пачками по 1000-30000 записей, процесс тогда будет идти намного быстрее. Кол-во записей зависит от кол-ва полей, т.к. есть ограничение на 65535 параметров в запросе.