ストリームのトラブルシューティング

ストリームが移行元データベースから移行先にデータを転送する際に問題が発生すると、ストリームは Failed 状態または Failed permanently 状態になることがあります。どちらの場合も、問題を解決できます。

ストリームのトラブルシューティング

  1. Google Cloud コンソールの [ストリーム] ページに移動します。

    [ストリーム] ページに移動

  2. 画面右上にある列の表示オプション アイコンをクリックします。アイコンは縦に並んだ 3 つの列として表示されます。

  3. 選択されていない場合は、[ステータス] チェックボックスをオンにして、[OK] をクリックします。Datastream には次のステータスが表示されます。

    • Failed: Running ストリームで発生したエラー。このようなエラーは、ストリームがまだアクティブであるか、実行の試みがくり返されていることを意味します。
    • Failed permanently: 実行を継続できないストリームの場合。このようなエラーでは、データが失われる可能性があります。
  4. トラブルシューティングするストリームをクリックします。ストリームに関連するエラーは、[ストリームの詳細] ページに表示されます。

    たとえば、Datastream がソース データベースに接続できない場合、指定された認証情報ではデータソースに接続できませんというエラーページが表示されます。

  5. エラーを解決します。ストリームまたは接続プロファイルのいずれかのエラーを解決できます。

    たとえば、ストリームのソース データ オブジェクトまたは宛先構成情報のいずれかにエラーが関連付けられている場合は、ストリームを変更します。

    ストリームの接続情報にエラーが関連付けられている場合は、ストリームで使用されている接続プロファイルのソース データベースまたは宛先の構成情報を更新します。

  6. Failed ストリームを修正して自動的に再開できるようにするか、Failed permanently ストリームを復元します。

ストリームを復元する

ストリームを復元する際に最初に試すのは、現在の位置から復元することです。ストリーム復元オプションの詳細については、ストリーム復元の概要をご覧ください。

現在の位置からのストリームの復元に失敗した場合は、次の手順をお試しください。

  1. 宛先で影響を受けるテーブルを削除または切り捨てます。ストリームがダウンしていた間に、Datastream がいくつかの DELETE イベントを見逃している可能性があります。バックフィルの実行前にテーブルを切り捨てないと、DELETE イベントを復元できません。
  2. ストリームを最新の位置から復元します。PostgreSQL の場合は、レプリケーション スロットを再作成するか、新しいレプリケーション スロットを作成します。
  3. ストリームが実行されたら、バックフィルをトリガーしてすべての履歴データを復元します。バックフィルのトリガー方法については、バックフィルを開始するをご覧ください。

次のステップ