AWS DMS で MySQL の DATETIME / TIMESTAMP 型を Redshift の TIMESTAMPTZ 型へ移行するにはどうしたらいいですか

AWS DMS で MySQL の DATETIME / TIMESTAMP 型を Redshift の TIMESTAMPTZ 型へ移行するにはどうしたらいいですか

2026.06.30

困っていた内容

AWS DMS で MySQL の DATETIME / TIMESTAMP 型を Redshift の TIMESTAMPTZ 型へ移行したいです。

タスクを実行すると Invalid timestamp format or value [YYYY-MM-DD HH24:MI:SSOF] というエラーで取り込みに失敗します。
どうすれば取り込めるようになりますか。

どう対応すればいいの?

DMS の Redshift ターゲットエンドポイントの追加接続属性 Timeformat に auto を指定してください。

Redshift の COPY コマンドは、TIMEFORMAT を明示的に指定しない場合、TIMESTAMPTZ 列に対しては YYYY-MM-DD HH:MI:SSOF をデフォルトのフォーマットとして用います。
OF は UTC からのオフセット部分を指しており、オフセット付きの値が前提です。

https://docs.aws.amazon.com/ja_jp/redshift/latest/dg/copy-parameters-data-conversion.html#copy-timeformat

TIMEFORMAT が指定されていない場合、デフォルトの形式は、TIMESTAMP 列では YYYY-MM-DD HH:MI:SS、TIMESTAMPTZ 列では YYYY-MM-DD HH:MI:SSOF です。OF は協定世界時 (UTC) からのオフセットです。timeformat_string には、タイムゾーン指定子を含めることができません。デフォルトの形式と異なる形式の TIMESTAMPTZ データをロードするには、「auto」を指定します。

一方、DMS は MySQL の DATETIME / TIMESTAMP のようにゾーンオフセットを持たない値を、そのままターゲットへ書き出します。

https://docs.aws.amazon.com/ja_jp/dms/latest/userguide/CHAP_Target.Redshift.html#CHAP_Target.Redshift.DataTypes

TIMESTAMPTZ (s) — ソースタイムスタンプにゾーンオフセットが含まれている場合 (SQL Server や Oracle など)、insert または update 時に UTC に変換される。オフセットが含まれていない場合、時刻は既に UTC に変換済みとみなされる。

そのため、DMS が書き出すオフセットなしの値と、COPY が期待するオフセット付きのデフォルトフォーマットが噛み合わず、Timeformat 未指定の状態ではエラーとなります。
DMS の Timeformat に auto を指定することで、COPY 実行時の TIMEFORMAT に auto が用いられ、オフセットを持たない値も TIMESTAMPTZ 列へ取り込めるようになります。

https://docs.aws.amazon.com/ja_jp/dms/latest/userguide/CHAP_Target.Redshift.html#CHAP_Target.Redshift.ConnectionAttrib

時間形式を指定します。これは、文字列入力であり、デフォルトでは空です。auto 引数は、Timeformat 文字列を使用する場合にサポートされない形式を認識します。日の値および時間の値でそれぞれ異なる形式が使用される場合、Timeformat パラメータとともに auto 引数を使用します。

参考情報

https://docs.aws.amazon.com/redshift/latest/dg/r_COPY.html

https://docs.aws.amazon.com/ja_jp/dms/latest/userguide/CHAP_Target.Redshift.html#CHAP_Target.Redshift.DataTypes

https://docs.aws.amazon.com/ja_jp/dms/latest/userguide/CHAP_Target.Redshift.html#CHAP_Target.Redshift.ConnectionAttrib


AWSテクニカルサポートノートについて

過去にクラスメソッドのAWS総合支援サービスで頂いたお問合せの中から、通常のAWS利用時でも有益になりうる情報をテクニカルサポートチームがTIPSとしてご紹介しています。技術サポートは、無料でご提供しております。詳細は下記ボタンからご覧ください。

クラスメソッドのAWSサポートの詳細を見る

この記事をシェアする

AWSのお困り事はクラスメソッドへ

関連記事