Lanyrd's MySQL в PostgreSQL Conversion Script. Использовать с осторожностью.
Этот скрипт был разработан для наших конкретных требований к базе данных и столбцам. Примечательно, что он удваивает длину варчар, благодаря проблеме размера Unicode, которые у нас были, помещают индексы на все иностранные ключи и предполагают, что вы используете Django в целях печати столбцов.
Во-первых, сбросить свою базу данных MySQL в PostgreSQL-совместимый формат
mysqldump --compatible=postgresql --default-character-set=utf8
-r databasename.mysql -u root databasename
Затем конвертируйте его, используя скрипт dbconverter.py
python db_converter.py databasename.mysql databasename.psql
Это будет печатать прогресс на терминал.
Наконец, загрузите свой новый дамп в новую базу данных PostgreSQL, используя:
psql -f databasename.psql
Вы можете узнать больше о шаге, который он включил по адресу http://lanyrd.com/blog/2012/lanyrds-big-move/ и некоторые технические детали его по адресу http://www.aeracode.org/2012/11/ 13/One-Change-not-enought/.