如何将数据从SQL Server 迁移到PostgreSQL?将数据从SQL Server 迁移到PostgreSQL方法分析!
在不同类型的数据库之间迁移数据并非易事。在本文中,我们将比较几种从 SQL Server 转换到 PostgreSQL 的方法。Microsoft SQL Server 是一个很棒的数据库引擎,但在某些情况下它有缺点。免费的 Microsoft SQL Server Express 可以成功用于小型数据库。
SQL Server Express 的限制:
- 数据库引擎使用的最大内存为 1GB。
- 10GB 最大数据库大小。
- 1MB 最大缓冲区缓存。
- CPU 使用一 (1) 个插槽或四 (4) 个内核中的较小者(SQL 用户连接数不受限制)。
对于大型数据库,您可能需要从标准版许可证开始获取 MSSQL Server 的付费版本。SQL Server 的成本取决于用户数量和数据库的大小。
如果您甚至买不起标准的 SQL Server 许可证,PostgreSQL 是一个替代方案。
PostgreSQL 是完全免费的,因此许可证成本是 PostgreSQL 相对于 Microsoft SQL Server 的主要优势。
SQL Server 和 PostgreSQL 之间数据库迁移的开源工具
手动数据迁移很麻烦。一个好的数据库迁移工具应该提示用户选择要迁移的对象,例如表、索引、主键和外键约束。
幸运的是,有一些工具可以自动化枯燥的手工工作。
1、pgloader 是 一个著名的开源工具,它使用COPY命令将SQL Server中的数据导入PostgreSQL,加载数据、索引和外键,并按预期将数据转换为PostgreSQL。
- pgloader 将来自 MS SQL、SQLite、MySQL、CSV 等各种来源的数据加载到 PostgreSQL 中。
- 它在 PostgreSQL 许可下获得许可,可以免费使用。
- pgloader 是一个跨平台的软件。
- Docker 镜像可用。
2. Sqlserver2pgsql是用Perl 编写的。这是另一个开源迁移工具,用于自动将 Microsoft SQL Server 数据库转换为 PostgreSQL 数据库。
- 它将 SQL Server 模式转换为 PostgreSQL 模式
- 如果需要,它可以创建一个 Pentaho Data Integrator (Kettle) 控制台来将所有数据从 SQL Server 迁移到 PostgreSQL。
部分开源工具的缺点
- 上面提到的工具是命令行实用程序,因此它们没有图形界面。对于那些被终端吓倒的人来说,它们并不好用。
- 这些工具仅限于可以将 PostgreSQL 配置为目的地的单向迁移
DBConvert 数据库迁移软件
适用于 SQL Server 和 PostgreSQL 的 DBConvert 和 DBSync 是流行的软件工具,可最大限度地减少 SQL Server 和 PostgreSQL 数据库之间的数据库转换和同步挑战。
用于 SQL Server 和 PostgreSQL 的 DBConvert/DBSync 优点:
- DBConvert 工具是高度可定制的,允许您使用全面的图形界面快速轻松地将数据从 Microsoft SQL Server 导出到 Postgres。DBConvert Applications 指导您完成几个步骤,从连接到源和目标数据库、配置迁移参数以及安排后续运行。
- 在 DBConvert 产品中,目标数据库以树的形式呈现,这大大简化了设置的配置。DBConvert 软件经过验证的优势在于,非专业用户也可以有效地使用它。
- 自动验证系统会在迁移前仔细检查源数据库的结构和关系,确保不会丢失或损坏您的任何数据,并保证无风险和无错误的数据传输。
- 将源数据库复制到目标数据库后,使数据库与更新、插入和删除同步功能保持同步。
- DBSync 应用程序在 SQL Server 和 PostgreSQL 之间执行双向复制(其中两个不同的数据库同时相互复制更改)。
- 在任何组合中, 使用 SQL Server 到 PostgreSQL 转换器/同步工具,以下数据库之间的数据迁移是可能的:
- 微软 SQL 服务器,
- Windows Azure SQL 数据库/ Azure SQL 数据仓库,
- 适用于 SQL Server 的 Google Cloud SQL,
- 用于 PostgreSQL 的 Google Cloud SQL,
- AWS RDS/极光,
- Heroku Postgres。
结论:
在本文中,我们介绍了将数据从 SQL Server 迁移到 PostgreSQL 的几种方法。
Pgloader和Sqlserver2pgsql是 Linux 用户和那些在终端中感觉舒适的优秀解决方案。它在从许多数据库迁移到 PostgreSQL 时发挥作用。但只能在一个方向上进行转换。
DBConvert 工具支持 SQL Server 和PostgreSQL 数据库类型之间的双向迁移和同步。支持更多本地和云数据库转换。DBSync 是在初始迁移后持续保持数据库同步的完美解决方案。
相关文章
- Unity3d Web Player 的server端联网配置
- kafka学习之-server.properties详细说明
- Windows Server 2008企业64位版防火墙添加端口的方法
- MS SQL Server查询优化方法 查询速度慢的原因很多,常见如下几种
- C# 连接SQL Server数据库的几种方式--server+data source等方式
- Navicat for SQL Server创建连接提示错误08001怎么办
- SQL server怎么查找某个时间段(多个时间段)的第一个值 或 最后一个值(这里举例查找每小时的第一个值)(Convert详细方法)...
- SQL server怎么查找某个时间段(多个时间段)的第一个值 或 最后一个值(这里举例查找每小时的第一个值)(Convert详细方法)...
- SQL SERVER出现大量一致性错误的解决方法
- mysql启动时报错:Starting MySQL... ERROR! The server quit without updating PID file (/opt/mysql/data/mysql.pid) 的解决方法
- sql server 模仿mysql的方法
- VIEW SERVER STATE permission was denied on object 'server', database 'master'
- Windows Server 2012(Win8)将计算机图标添加到桌面
- SQL SERVER 不能修改表结构、列类型 解决方法
- Sql Server 强制大小写区分方法
- SQL SERVER服务器链接连接(即sql server的跨库连接)
- 如何在Chrome开发者工具里找出SAP Fiori frontend server的systen ID
- Sql Server 2008 R2 激活密钥
- SQL SERVER 不能修改表结构、列类型 解决方法
- SQL Server DATEADD() 函数
- Android系统进程间通信(IPC)机制Binder中的Server启动过程源代码分析
- eclipse tomcat add时提示The Tomcat server configuration at ServersTomcat v6.0 Server at localhost-
- ubuntu eclipse 建立server 提示coud not load the tomcat server configuration at /opt/apache ...的解决方法
- 从 Microsoft Dynamics CRM 4.0 server迁移到 Microsoft Dynamics CRM 2013 Server
- Server SAN:弄潮儿云计算时代
- 利用PowerUpSQL攻击SQL Server实例——本质上就是利用弱密码登录SQL server
- UDP也需要现有Server端,然后再有Client端
- 【SQL Server】数据库开发指南(三)面向数据分析的 T-SQL 编程技巧与实践
- K8S 证书过期,报错:Unable to connect to the server: x509: certificate has expired or is not yet valid 解决方法