Sqlite迁移到Postgres

第一步,下载迁移工具

经过我的实际的测试,使用pgloader的成功率会比较高

编译安装时间可能比较长,推荐使用包管理工具 brew进行安装

brew install pgloader # 加上 --HEAD 可能会导致安装失败,目前新版有bug

第二步,配置迁移参数

  1. 创建迁移脚本

    vim load.test
    
  2. 写入以下参数

      load database
         from sqlite://path to/xxx.db  这里是Sqlite地址
         into postgres://xxx  这里是数据库连接字符串
    
     with include no drop,truncate, create tables, create indexes, reset sequences, data only
    
      set work_mem to '16MB', maintenance_work_mem to '512 MB';  
    
  • 具体参数说明可以查阅pgloader文档

  • 由于sqlite布尔值实际存储为0、1整形,这样会和其他整形混淆,建议先手动创建数据库表,规定好数据类型,然后配置include no drop选项

  1. 执行脚本

    pgloader load.test
    
    原文作者:lovesoon
    原文地址: https://www.jianshu.com/p/2524aa30f140
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞