如何将数据从mysql数据库转储到postgresql数据库?

时间:2010-10-21 09:55:49

标签: ruby-on-rails postgresql mysqldump

我使用mysql完成了depot应用程序...现在我需要使用postgres ...所以我需要将数据从mysql数据库“depot_development”转储到postgres数据库“depot_develop”......

3 个答案:

答案 0 :(得分:1)

答案 1 :(得分:1)

您是否尝试将表从一个数据库复制到另一个数据库:

a)将数据从MySQL导出为CSV文件,如:

$> mysql -e "SELECT * FROM table" -h HOST -u USER -p PWD -D DB > /file/path.csv'

然后,

b)将其导入Postgres,如:

COPY table FROM '/file/path.csv' WITH CSV;

答案 2 :(得分:0)

这个问题有点陈旧,但几天前我正在处理这种情况并找到了pgloader.io。

这是迄今为止最简单的方法,你需要安装它,然后使用以下3行运行一个简单的lisp脚本(script.lips):

/* content of the script.lisp */
LOAD DATABASE
FROM mysql://dbuser@localhost/dbname
INTO postgresql://dbuser@localhost/dbname;


/*run this in the terminal*/
pgload sctipt.lisp

之后你的postgresql数据库将拥有你在MySQL SB中的所有信息

另一方面,让你编译pgloader,因为在这篇文章的时候,安装程序有一个bug。 (版本3.2.0)