Мы работаем над веб-сайтом, и когда мы разрабатываем локально (один из нас из 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 локально? Гораздо лучше иметь локальную систему как можно ближе к производственной, чтобы убедиться, что все ваши запросы работают хорошо, все индексы лучше всего и т. Д.