问题描述
我使用AWS DMS将数据从sql Server数据库迁移到aurora Postgres。一切正常,数据已正确迁移,但是验证失败。验证错误有两种类型:
-
源数据库中的GUIDS均为大写,而目标数据库中的GUIDS均为小写。
{'record_id':'DA7D98E2-06EA-4C3E-A148-3215E1C23384'}
{'record_id':'da7d98e2-06ea-4c3e-a148-3215e1c23384'} -
由于某些原因,Postgres中的timestamp(4)列与sqlServer的datetime2(4)列之间的验证失败。似乎Postgres中的时间末尾有两个额外的0,但是当通常从表中选择数据时,数据完全相同。
{'created_datetime_utc':'2018-08-24 19:58:28.4900'}
{'created_datetime_utc':'2018-08-24 19:58:28.490000'}
有什么办法解决此问题吗?我试图为列创建转换规则,但是它们不起作用。 谢谢。
解决方法
感谢本文https://www.sentiatechblog.com/aws-database-migration-service-dms-tips-and-tricks,这些新的映射规则解决了所有验证问题。这些规则不能使用AWS控制台添加,只能在脚本中添加。