1

一些程序要求底层数据库是 MySQL。类似地,像 GridSQL 这样的软件要求底层数据库是 PostgreSQL。如果将它们整合在一起,将会有很多优势,包括:

  1. 两者之间更容易迁移。
  2. 可能能够将 MySQL 复制与 PostgreSQL 一起使用
  3. 能够使用只能与 MySQL 和 PostgreSQL 通信的软件
  4. MySQL 中一个新的基于事务的存储引擎

我确实理解像 PostgreSQL 数组这样的东西使得不可能简单地将 MySQL 接口附加到任何 PostgreSQL 数据库,但是数据库是仅通过 MySQL 接口创建的,那么可以保证它不包含数组。

现在这是不可能的其他原因是什么?

4

1 回答 1

1

来自 MySQL 手册:

MySQL 将表的数据字典信息存储在数据库目录中的 .frm 文件中。这适用于所有 MySQL 存储引擎

因此,MySQL 中没有事务 DDL,这是 PostgreSQL 中最方便的东西之一。在 MySQL 中使用 PostgreSQL 作为引擎会取消此选项。

PostgreSQL 还有一个更丰富的 SQL 字典,这可能会给 MySQL 带来问题。

另一个主要区别是 PostgreSQL 中模式的使用。MySQL 中的数据库是 PostgreSQL 中的一种模式。

恕我直言,如果您想使用 PostgreSQL,那么在 MySQL 中创建 PostgreSQL 引擎是没有意义的。恐怕你会因为 MySQL 的限制而失去 PostgreSQL 最好的东西。

于 2010-02-18T12:18:35.903 回答