Назад | Перейти на главную страницу

Как преобразовать базу данных postgres в sqlite

Мы работаем над веб-сайтом, и когда мы разрабатываем локально (один из нас из Windows), мы используем sqlite3, но на сервере (linux) мы используем postgres. Мы хотели бы иметь возможность импортировать производственную базу данных в наш процесс разработки, поэтому мне интересно, есть ли способ конвертировать из дампа базы данных postgres во что-то, что может понять sqlite3 (просто скармлив его, дамп SQL-кода postgres дал многим, много ошибок). Спасибо.

Я думаю, что лучше работать с базой данных того же типа на этапе разработки, однако у вас есть способ конвертировать базу данных postgreSQL в базу данных SQLite:

1) Если вы хотите перенести только данные таблицы, вы можете экспортировать ее в таблицу формата CSV на PostgreSQL, а затем импортировать ее в базу данных SQLite:

В PostgreSQL:

COPY sometable to '/tmp/sometable.csv' delimiters',' CSV HEADER;

На SQLite:

sqlite> .mode csv
sqlite> .import /tmp/sometable.csv sometable

2) Быстрый способ переноса структуры и данных: используйте инструмент переноса базы данных, например:

С помощью этих двух инструментов вы можете легко перенести схему базы данных и данные из PostgreSQL в SQLite.

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

Почему бы просто не установить postgresql локально? Гораздо лучше иметь локальную систему как можно ближе к производственной, чтобы убедиться, что все ваши запросы работают хорошо, все индексы лучше всего и т. Д.