我需要不断地从 SQLite 迁移到 PostgreSQL。连续,我的意思是我每天都会将 SQLite 数据库重新导入 PostgreSQL。如果我可以随意更改 SQLite 中的表,而不必手动对 PostgreSQL 数据库进行任何更改,那就太好了。我将从 Python 运行迁移,但它可以是任何可以从命令行控制的外部工具。该工具需要可用于 Linux,如果它也可以在 Windows 上运行,那就太好了。
我需要不断地从 SQLite 迁移到 PostgreSQL。连续,我的意思是我每天都会将 SQLite 数据库重新导入 PostgreSQL。如果我可以随意更改 SQLite 中的表,而不必手动对 PostgreSQL 数据库进行任何更改,那就太好了。我将从 Python 运行迁移,但它可以是任何可以从命令行控制的外部工具。该工具需要可用于 Linux,如果它也可以在 Windows 上运行,那就太好了。
您是否考虑过使用 ETL 工具?它们是外部的,我相信 pentaho 可以在 windows 和 linux 上运行并且它是免费的。 pentaho的网站
我正在使用 Navicat 在数据库之间迁移(主要是 MSSQL/MySQL)。它确实可以在 Linux 和 Windows 上运行,但主要是一个 GUI 工具。如果您创建配置文件,则可以从命令行启动它。您可以下载 30 天试用版。
我认为这是可能的,但我认为不会有很多人对此感到满意。在一般情况下,PosgreSQL 和 SQLite 处理表定义的方式非常不同。
如果我从 SQLite 转储该表的内容,这就是我得到的。
我认为每列在 PostgreSQL 端都必须是 VARCHAR() 。编写脚本将所有 SQLite 数据类型更改为 VARCHAR() 可能并不难。但这感觉就像在海滩上踢死鲸鱼一样可怕。
您可以使用
ESF 数据迁移工具包。
我试过了,效果很好,并为您提供了从多种类型的数据库转换为多种类型的数据库的选项:例如 sqlite、mysql、mssql、oracle、postgresql 等等!
你也看看它的试用/评估版,结果真的很满意!
我对Full Convert有很好的经验。