docker 使用pgloader 迁移mysql到pgsql?

pgloader mysql://root:123qwe@host.docker.internal/project_test_1  postgresql://postgres@localhost/postgres   此时mysql的tinyint字段会被自动转换成smallint  如何添加cast参数 使tinyint转换成bool呢?

2回答

可以使用 pgloader  的转换函数https://pgloader.readthedocs.io/en/latest/ref/transforms.html tinyint-to-boolean As MySQL lacks a proper boolean type, tinyint is often used to implement that. This function transforms 0 to ‘false’ and anything els...显示全部

可以使用 pgloader  的转换函数
https://pgloader.readthedocs.io/en/latest/ref/transforms.html

  • tinyint-to-boolean

As MySQL lacks a proper boolean type, tinyint is often used to implement that. This function transforms 0 to ‘false’ and anything else to ‘true’.

收起
 4天前
甘草片甘草片  软件开发工程师 , 安天科技
 你好,这个问题真的没这么弄过。迁移是个很常见而且很闹心的问题,一般迁移我是这么做的,也许对你没有作用!1 生产mysql 库表结构,然后各种的替换类型啊,语法啊,等等 形成pg的语法。2  自增的问题交易3 找个合适的迁移工具,比如 kettle ,每个表做个测试几条跑通,并看转换的...显示全部

 你好,这个问题真的没这么弄过。迁移是个很常见而且很闹心的问题,一般迁移我是这么做的,也许对你没有作用!
1 生产mysql 库表结构,然后各种的替换类型啊,语法啊,等等 形成pg的语法。
2  自增的问题交易
3 找个合适的迁移工具,比如 kettle ,每个表做个测试几条跑通,并看转换的结果
4 看看数据库各个对象,不如有没有函数、过程、视图等等,全面检查一下
5 找个合适的时间,把不动的表先抽取过去(这个时候要注意有主从表问题)
6 找个切割时间,再把动的数据全量抽取过去

收起
 4天前
浏览44

提问者

爱自由dev, aaa

问题状态

  • 发布时间:4天前
  • 关注会员:3 人
  • 问题浏览:426
  • 最近回答:4天前