我们正在一个网站上工作,当我们在本地开发(我们中的一个来自Windows)时,我们使用sqlite3,但在服务器(linux)上使用postgres。 我们希望能够将生产数据库导入到我们的开发过程中,所以我想知道是否有办法将postgres数据库转储转换为sqlite3可以理解的东西(只是给它提供了postgres的倾销SQL给了很多,很多错误)。 谢谢。
我认为在开发阶段对同一types的数据库是更好的工作,但是你有办法将postgreSQL数据库转换成SQLite数据库:
1)如果只想迁移表格数据,您可以在PostgreSQL上以CSV格式导出表格,然后将其导入到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? 让本地系统尽可能接近生产要好得多,确保所有的查询都能正常工作,所有索引都是最好的。