概要
ストリームがソース データベースから宛先にデータを転送する際に問題が発生した場合、ストリームは Failed
または Failed permanently
状態になります。いずれの場合も、問題を修正できます。
ストリームのトラブルシューティング
Google Cloud Console の [ストリーム] ページに移動します。
ページの右上にある 列表示オプション アイコンをクリックします。アイコンは縦に並んだ 3 つの列として表示されます。
選択されていない場合は、[ステータス] チェックボックスをオンにして、[OK] をクリックします。Datastream には次のステータスが表示されます。
Failed
:Running
ストリームで発生したエラー。このようなエラーは、ストリームがまだアクティブであるか、継続的に実行しようとしていることを意味します。Failed permanently
: 実行を続行できないストリームの場合。このようなエラーは、データ損失の原因になる可能性があります。
トラブルシューティングするストリームをクリックします。ストリームに関連付けられたエラーは、[ストリームの詳細] ページに表示されます。
たとえば、Datastream がソース データベースに接続できない場合、指定された認証情報ではデータソースに接続できませんというエラーページが表示されます。
エラーに対処します。ストリームまたは接続プロファイルのエラーを解決できます。
たとえば、ストリームのソースデータ オブジェクトまたはその宛先構成情報に関連するエラーの場合は、ストリームを変更します。
ストリームの接続情報にエラーが関連付けられている場合は、ストリームで使用されている接続プロファイルのソース データベースまたは宛先の構成情報を更新します。
Failed
ストリームを修正して、自動的に再開されるようにするか、Failed permanently
ストリームを復元します。
ストリームを復元する
ストリームを復元する場合、まず現在の位置から復元します。ストリーム復元オプションの詳細については、ストリーム復元の概要をご覧ください。
現在の位置からのストリームの復元に失敗した場合は、次のことを試してください。
- 転送先で影響を受けるテーブルを削除するか切り捨てます。ストリームがダウンしていた間に、Datastream がいくつかの
DELETE
イベントを見逃している可能性があります。バックフィルの実行前にテーブルを切り捨てないと、DELETE
イベントを復元できません。 - ストリームを最新の位置から復元します。PostgreSQL の場合は、レプリケーション スロットを再作成するか、新しいレプリケーション スロットを作成します。
- ストリームが実行されると、バックフィルがトリガーされて、すべての履歴データが復元されます。バックフィルのトリガー方法については、バックフィルを開始するをご覧ください。