楼上对 block-allow-list 的设置有问题的。block-allow-list 规则:
- 当 do-dbs 有设置时:
- 如果表名命中该 do-dbs 列表,开始判断 do-tables(4)
- 如果表明没有命中 do-dbs 列表,该表不需要被迁移
- 当 do-dbs 没有设置且 ignore-dbs 有设置:
- 如果表名命中 ignore-dbs 列表,该表不需要被迁移
- 如果表名没有命中 ignore-dbs 列表,开始判断 do-tables(4)
- 如果 do-dbs 和 ignore-dbs 都没有设置,开始判断 do-tables(4)
- 当 do-tables 有设置:
- 如果表名命中 do-tables,则该表命中,需要被迁移
- 如果表名没有命中 do-tables,该表不需要迁移
- 当 do-tables 没有设置且 ignore-tables 有设置:
- 当表名命中 ignore-tables,则该表不需要被迁移
- 当表名没有命中 ignore-tables,该表需要被迁移
- 当 do-tables 和 ignore-tables 都没有设置,则该表需要被迁移
从这个规则里面我们可以看出:
- 在设置了 do-* 的时候,设置 ignore-* 是没有用的(并不是直觉上的 do-dbs - ignore-dbs 或者 do-tables - ignore-tables)
- 设置了 do-dbs 的时候,记得再给需要迁移的表设置 do-tables(或者在不设置 do-tables 的情况下用 ignore-tables 过滤掉不需要的表)或者直接让 do-tables 为空。
另外,DM 的 BAList 在这几个发行版里并没有太大改动,基本功能是一致的,不推荐为了测试 BAList 是否存在 bug 去实验其他版本。