您的位置:首页 > 数据库 > MySQL

PostgreSQL 数据迁移 (从Mysql到Postgres)

2014-01-15 23:31 281 查看
/article/3509108.html

目录[-]

前言

1.相关环境

2.数据迁移

2.1创建数据文件存储目录

2.2从MySQL中导出表数据

2.3将数据导入到PostgreSQL

3.相关链接

前言

之前使用的数据库是MySql,现在要改成PostgreSQL,因此需要将MySql表中数据也迁移过来.下面是一些具体操作步骤.

@Authorduangr

@Website/article/3509108.html

1.相关环境

HostNameIPOSArch
duangr-1192.168.56.10CentOS6.4x86_64
DataBaseVersion
MySql5.5.27

PostgreSQL9.3.1

2.数据迁移

我的做法是将数据从MySQL库中导出到文件中,然后再将文件中的数据导入到PostgreSQL中.

2.1创建数据文件存储目录

1
#mkdir/tmp/etl
2
#chmod777/tmp/etl
解释下,我选择把数据文件放到/tmp目录下,是由于此目录权限是777,这样一来MySQL的启动用户mysql,以及PostgreSQL的启动用户postgres都可以读写此目录下面的文件.

(切换成其他目录均可,但需要保证mysql和postgres用户都要拥有读写权限.)

2.2从MySQL中导出表数据

以表tab_duangr为例,将表中数据导出到文件中

1
mysql>select*fromtab_duangrintooutfile"/tmp/etl/tab_duangr.dat"fieldsterminatedby'^A';
2
QueryOK,792rowsaffected(0.01sec)
P.S.此处使用ASCII字符0x01作为文件中字段分隔符,目的是避免与数据字段内容冲突.^A需要通过"Ctrl+V"+"Ctrl+A"的方式输入.

2.3将数据导入到PostgreSQL

需要使用超级用户登陆PostgreSQL(数据库为duangr)

1
#su-postgres
2
$psql-dduangr
3
psql(9.3.1)
4
输入"help"来获取帮助信息.
5
6
duangr=#copytab_duangrfrom'/tmp/etl/tab_duangr.dat'withdelimiter'^A';
7
COPY792

3.相关链接

R-DBMS

PostgreSQL安装步骤

PostgreSQL基本操作
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: