把数据库从MYSQL迁移到POSTGRESQL

终于决定把数据库从MYSQL转到postgresql了。
如何迁移是个问题。手工迁移太麻烦。终于从POSTGRESQL的网站上找到了一个小的迁移工具名字叫 mysql2pgsql.perl,这是一个perl编写的小程序。用法是先把MYSQL里的数据DUMP下来保存为mysql.sql
perl mysql2pgsql.perl mysql.sql pg.sql
转换后的文件是pg.sql,
但是这个转换程序转换的不是很好,有一些BUG。于是先把建立表的sql先保存下来,用mysql2pgsql转换后自己修改。比如我转换的时候类型为double的字段都有问题,还好不多,于是自己修改。然后再把数据导入到postgresql中,成功了。然后再dump数据SQL,这回转换后没有什么问题,可以直接导入到postgre中。数据库端的迁移就完成了。

转换前要评估工作量,因为在MYSQL中允许关键字作为字段名,如type,password,double,order,right等等,但是到postgres中就会有问题,要修改。这可能影响你的程序修改量。
在postgres中的表名和字段名不要用大小写混合一定要用小写,如 userName,建表之后系统会改成 “userName”,多了引号,当操作带有引号的表或字段时可能会有问题,至少我用python时程序会提示你找不到这个字段。

之所以要迁移是因为我要用freeBSD操作系统,mysql有点问题。另外,很多用过postgre的人都极力推荐。我自己也比较了一下,的确“快速”,“强大”,功能和ORACLE类似,我很习惯。相比之下,mysql就是“简单”,“易用”,对于没有接触过大型数据库的人也能用。
  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值