Mysql

如何將 PostgreSQL 轉換為 MySQL

  • February 14, 2022

如何將數據庫從 PostgreSQL 轉換為 MySQL?

我已經有了 postgresql 轉儲文件,我嘗試使用 pg2mysql 腳本,它已轉換但在上傳文件時會產生此錯誤:

ERROR 1064 (42000) at line 4: You have an error in your SQL syntax;
 check the manual that corresponds to your MySQL server version for the right
 syntax to use near 'bigserial NOT NULL,
   created timestamp NOT NULL,
   sql0 varchar(250) DEFAUL' at line 2

導出 SQL 腳本後,您需要轉換數據類型。由於 MySQL 和 PostgreSQL 具有不同的功能集,因此沒有通用和自動的方法來執行此操作。(PostgreSQL 往往比 MySQL 更符合標準,並且通常也可能支持更多功能,例如 CTE、函式索引……)

在您收到的錯誤中,與 PostgreSQL 最接近的類型BIGSERIAL可能BIGINT UNSIGNED NOT NULL AUTO_INCREMENT UNIQUE 在 MySQL 中

使用以下命令獲取備份數據。

pg_dump --inserts -f filename.dump your_database

此命令生成可用於將架構和數據恢復到其他 sql 數據庫的 sql 腳本。--inserts選項告訴它使用s而insert不是預設copy命令。

這是手冊 - http://www.postgresql.org/docs/current/interactive/app-pgdump.html

引用自:https://dba.stackexchange.com/questions/17132