【发布时间】:2010-10-21 09:55:48
【问题描述】:
我已经使用mysql完成了depot应用程序......现在我需要使用postgres......所以我需要将数据从mysql数据库“depot_development”转储到postgres数据库“depot_develop”......
【问题讨论】:
标签: ruby-on-rails postgresql mysqldump
我已经使用mysql完成了depot应用程序......现在我需要使用postgres......所以我需要将数据从mysql数据库“depot_development”转储到postgres数据库“depot_develop”......
【问题讨论】:
标签: ruby-on-rails postgresql mysqldump
【讨论】:
您是否尝试将表从一个数据库复制到另一个:
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;
【讨论】:
这个问题有点老了,但几天前我正在处理这种情况并找到了pgloader.io。
这是迄今为止最简单的方法,您需要安装它,然后运行一个简单的 lisp 脚本 (script.lips),其中包含以下 3 行代码:
/* 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,因为在本文发布时,安装程序存在错误。 (版本 3.2.0)
【讨论】: