将 MySql 转换为 PostgreSQL

Mar*_*kus 6 mysql database postgresql

我想从 MySQL 迁移到 PostgreSQL,这还不是一个实时站点,很快就会启动,并且架构在 MySQL 中已经准备就绪,但鉴于业务模型,我想要一个更好的可扩展数据库,因此要将 MySQL 转换为 PostgreSQL,请执行以下操作我需要逐表手动执行,或者是否有可以使用(或脚本)自动转换表/文件值的 GUI 工具?

我的应用程序是用 codeingiter PHP 编写的。

Ale*_*vić 7

唯一对我有用的是Navicat Premium,你可以获取 Navicat 并免费使用它 14 天,这对于数据库迁移来说足够了......

只需创建 2 个连接(一个源 mysql,另一个目标 postgresql),然后选择“工具”->“数据传输”,就可以了!

我尝试过的其他工具:使用 mysqldump 转储作为 postgresql 兼容 - 不起作用,因为 ansi sql - 不起作用,尝试过 pgload - 不起作用,尝试使用 https://github.com/AnatolyUss/nmig Nmig 创建的表正确,但数据丢失。

  • 到 2023 年,这仍然有效,而且对我来说是最简单的。下载并安装 Navicat Premium 并使用 14 天试用版非常简单...无需 CC,无需注册。只需下载并安装。 (2认同)

Rei*_*ien 2

  1. 我同意 Pekka 的观点:如果你很快就要推出产品,你最不想做的就是切换数据库系统。
  2. 如果您很幸运并且能够从当前数据库导出兼容的 SQL,Postgres 将理解它并且几乎不需要额外的工作。可以导出 SQL 以重新创建数据库的结构及其表的内容。