Миграция таблицы базы данных SQLite3 в MySQL с Python без файлов дампа - PullRequest
1 голос
/ 25 февраля 2010

Мне нужно перенести информацию, которую я создал в SQLite3, в базу данных MySQL на моем веб-сайте. Сайт находится на размещенном сервере. У меня есть удаленный доступ к базе данных MySQL. Сначала я думал, что это будет легко, но я не нахожу никакой полезной информации, и все, что я читаю, подразумевает, что вам нужно выгрузить файл SQLite3, преобразовать его в файл дампа MySQL, используя грязные скрипты, а затем импортировать в MySQL.

(пример: Быстрый простой способ переноса SQLite3 в MySQL? )

Мой вопрос: не лучше ли прочитать его и импортировать прямо из скрипта в MySQL. Я вообще не использовал MySQL с Python, но казалось бы, интуитивно понятно, что было бы лучше иметь меньше шагов для того, чтобы что-то пропустили. Я также пытаюсь сэкономить немного времени, не понимая, как работает файл дампа MySQL.

Если у вас есть сценарий (если это возможно, Python), инструмент или ссылка, которые могут мне помочь, это было бы здорово, но в первую очередь меня беспокоит, как это сделать. Я не могу реально проверить все (иначе я бы просто скопировал и вставил), поэтому я хочу быть уверен, что я поступаю правильно.

Я использую Django, возможно, есть специальный метод для Django, но я не смог его найти.

Ответы [ 2 ]

2 голосов
/ 25 февраля 2010

Вы пытались использовать dumpdata и loaddata от django-admin?

например. дамп sqllite3 дБ

manage.py dumpdata

изменить базу данных на MySQL, воссоздать таблицы и загрузить

manage.py loaddata mydata.json

dumpdata по умолчанию создает дамп json, но вы также можете установить формат в xml.

В качестве альтернативы, вы можете просто прочитать весь sqlite3 db, используя python db api или sqlalchemy или django ORM, и выгрузить его в MySQL db.

2 голосов
/ 25 февраля 2010

Причина, по которой "грязные" скрипты требуются, заключается в том, что это, как правило, трудная проблема для решения.

Если вам повезет, между базами данных не будет слишком много несовместимостей схем.

Это может помочь

db_dump.py
dbpickle.py
Какое ваше любимое решение для управления миграцией баз данных в django?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...