BAK ファイルを使用したエクスポートとインポート

コレクションでコンテンツを整理 必要に応じて、コンテンツの保存と分類を行います。

このページでは、Cloud SQL インスタンスで BAK ファイルを使用してデータのエクスポートとインポートを行う方法について説明します。

始める前に

エクスポートではデータベース リソースが使用されますが、インスタンスがプロビジョニングされていない限り、エクスポートによって通常のデータベース オペレーションが妨げられることはありません。

ベスト プラクティスについては、データのインポートとエクスポートのベスト プラクティスをご覧ください。

インポート オペレーションが完了したら、結果を確認します。

Cloud SQL for SQL Server からデータをエクスポートする

Cloud SQL は、ネイティブの BAK ファイルのエクスポートをサポートしています。

エクスポートされたファイルから新しいインスタンスを作成するためにエクスポートする場合は、バックアップから別のインスタンスに復元またはインスタンスのクローン作成を検討してください。

エクスポート オペレーション中に、選択したデータベースの完全バックアップが Cloud SQL によって実行されます。

Cloud SQL for SQL Server からのエクスポートに必要なロールと権限

Cloud Storage にデータをエクスポートするには、Cloud SQL インスタンスのサービス アカウントまたはユーザーに次のいずれかのロールが必要です。

  • Cloud SQL 編集者のロールと storage.objectAdmin IAM ロール。
  • 次の権限を含むカスタムロール:
    • cloudsql.instances.get
    • cloudsql.instances.export
    • storage.buckets.create
    • storage.objects.create
    • storage.objects.list(ストライプ エクスポートの場合のみ)
    • storage.objects.delete(ストライプ エクスポートの場合のみ)

IAM ロールについては、Cloud Storage の Cloud Identity and Access Management をご覧ください。

Cloud SQL for SQL Server から BAK ファイルにデータをエクスポートする

コンソール

  1. Google Cloud コンソールで Cloud SQL の [インスタンス] ページに移動します。

    Cloud SQL の [インスタンス] に移動

  2. インスタンスの [概要] ページを開くには、インスタンス名をクリックします。
  3. [エクスポート] をクリックします。
  4. [ファイル形式] セクションで [BAK] をクリックします。
  5. [エクスポートするデータ] セクションでプルダウン メニューを使用して、エクスポートするデータベースを選択します。
  6. [送信先] セクションで [BROWSE] を選択して、エクスポート先の Cloud Storage バケットまたはフォルダを検索します。
  7. [エクスポート] をクリックしてエクスポートを開始します。

gcloud

  1. Cloud Storage バケットを作成する
  2. エクスポート元の Cloud SQL インスタンスのサービス アカウントを見つけます。これを行うには、gcloud sql instances describe コマンドを実行します。出力で serviceAccountEmailAddress フィールドを探します。
    gcloud sql instances describe INSTANCE_NAME
      
  3. gsutil iam を使用して、サービス アカウントに storage.objectAdmin IAM ロールを付与します。IAM 権限の設定については、IAM 権限の使用をご覧ください。
  4. データベースをエクスポートします。
    gcloud beta sql export bak INSTANCE_NAME gs://BUCKET_NAME/my-export.bak \
    --database=DATABASE_NAME
      

    gcloud beta sql export bak コマンドの使用方法については、コマンドのリファレンス ページをご覧ください。

  5. 以前に設定した IAM ロールを保持する必要がない場合は、この時点で取り消してください。

REST v1

  1. エクスポート先のバケットを作成します。
    gsutil mb -p PROJECT_NAME -l LOCATION_NAME gs://BUCKET_NAME
    

    このステップは必須ではありませんが、他のデータへ一切アクセスできないようにするために、実行することを強く推奨します。

  2. バケットに対する legacyBucketWriter IAM ロールをインスタンスに付与します。IAM 権限の設定については、IAM 権限の使用をご覧ください。
  3. データベースをエクスポートします。

    リクエストのデータを使用する前に、次のように置き換えます。

    • project-id: プロジェクト ID
    • instance-id: インスタンス ID
    • bucket_name: Cloud Storage バケット名
    • path_to_dump_file: SQL ダンプファイルへのパス
    • database_name_1: Cloud SQL インスタンス内のデータベースの名前
    • database_name_2: Cloud SQL インスタンス内のデータベースの名前
    • offload: サーバーレス エクスポートを有効にします。サーバーレス エクスポートを使用するには true に設定します。

    HTTP メソッドと URL:

    POST https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/export

    JSON 本文のリクエスト:

    {
     "exportContext":
       {
          "fileType": "BAK",
          "uri": "gs://bucket_name/path_to_dump_file",
          "databases": ["database_name"]
          "offload": true | false
        }
    }
    

    リクエストを送信するには、次のいずれかのオプションを展開します。

    次のような JSON レスポンスが返されます。

  4. 以前に設定した IAM のロールを保持する必要がない場合は、今すぐ削除してください。
このリクエストのパラメータの完全な一覧については、instances:export ページをご覧ください。

REST v1beta4

  1. エクスポート先のバケットを作成します。
    gsutil mb -p PROJECT_NAME -l LOCATION_NAME gs://BUCKET_NAME
    

    このステップは必須ではありませんが、他のデータへ一切アクセスできないようにするために、実行することを強く推奨します。

  2. バケットに対する storage.objectAdmin IAM ロールをインスタンスに付与します。IAM 権限の設定については、IAM 権限の使用をご覧ください。
  3. データベースをエクスポートします。

    リクエストのデータを使用する前に、次のように置き換えます。

    • project-id: プロジェクト ID
    • instance-id: インスタンス ID
    • bucket_name: Cloud Storage バケット名
    • path_to_dump_file: SQL ダンプファイルへのパス
    • database_name_1: Cloud SQL インスタンス内のデータベースの名前
    • database_name_2: Cloud SQL インスタンス内のデータベースの名前
    • offload: サーバーレス エクスポートを有効にします。サーバーレス エクスポートを使用するには true に設定します。

    HTTP メソッドと URL:

    POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/export

    JSON 本文のリクエスト:

    {
     "exportContext":
       {
          "fileType": "BAK",
          "uri": "gs://bucket_name/path_to_dump_file",
          "databases": ["database_name"]
          "offload": true | false
        }
    }
    

    リクエストを送信するには、次のいずれかのオプションを展開します。

    次のような JSON レスポンスが返されます。

  4. 以前に設定した IAM ロールを保持する必要がない場合は、この時点で取り消してください。
このリクエストのパラメータの一覧については、instances:export ページをご覧ください。

ストライプ エクスポートの使用

ストライプ エクスポートの利点は次のとおりです。

  • オペレーション完了までに必要な時間の短縮
  • 5 TB を超えるデータベースをエクスポート可能

ストライプ エクスポートを使用すると、1 つのファイルで構成されたバックアップではなく、複数のファイルに分割されるというデメリットがあります。このセットは「ストライプ セット」と呼ばれます。ストライプ化されたメディアセット(ストライプ セット)でデバイスをバックアップするをご覧ください。Cloud SQL では、単一のファイルを生成するのではなく、Cloud Storage 内の空のフォルダにエクスポートします。詳細については、ストライプ エクスポートの使用方法をご覧ください。

運用の計画

ストライプ エクスポートを使用すると、エクスポートのパフォーマンスが向上します。ただし、ユースケースで単一の出力ファイルが必要な場合、またはデータベースのサイズが 5 TB 未満の場合で、高速なパフォーマンスが重要でない場合は、ストライプ化されていないエクスポートを使用することをおすすめします。

ストライプ エクスポートを使用する場合は、ストライプの数を考慮してください。この値は、gcloud コマンドまたは REST API 呼び出しで指定できます。ただし、パフォーマンスに最適なストライプ数が必要な場合や、数値がわからない場合は、数値を省略します。最適なストライプ数が自動的に設定されます。

Cloud SQL for SQL Server が現在サポートしているストライプの最大数は 64 です。

ストライプ エクスポートの使用方法

gcloud

  1. Cloud Storage バケットを作成する
  2. エクスポート元の Cloud SQL インスタンスのサービス アカウントを見つけます。これを行うには、gcloud sql instances describe コマンドを実行します。出力で serviceAccountEmailAddress フィールドを探します。
    gcloud sql instances describe INSTANCE_NAME
      
  3. gsutil iam を使用して、サービス アカウントに storage.objectAdmin IAM ロールを付与します。IAM 権限の設定については、IAM 権限の使用をご覧ください。
  4. データベースをエクスポートするには、--striped パラメータを指定するか、--stripe_count の値を指定します。--stripe_count の値を設定することは、--striped パラメータが意図したものであることを意味します。--no-striped を指定して --stripe_count の値を指定すると、エラーが発生します。
    gcloud beta sql export bak INSTANCE_NAME \
    gs://BUCKET_NAME/STRIPED_EXPORT_FOLDER \
    --database=DATABASE_NAME --striped --stripe_count=NUMBER
      

    gcloud beta sql export bak コマンドの使用方法については、コマンドのリファレンス ページをご覧ください。

  5. 以前に設定した IAM ロールを保持する必要がない場合は、この時点で取り消してください。

REST v1

  1. エクスポート先のバケットを作成します。
    gsutil mb -p PROJECT_NAME -l LOCATION_NAME gs://BUCKET_NAME
    

    このステップは必須ではありませんが、他のデータへ一切アクセスできないようにするために、実行することを強く推奨します。

  2. バケットに対する legacyBucketWriter IAM ロールをインスタンスに付与します。IAM 権限の設定については、IAM 権限の使用をご覧ください。
  3. データベースをエクスポートします。

    リクエストのデータを使用する前に、次のように置き換えます。

    • project-id: プロジェクト ID
    • instance-id: インスタンス ID
    • bucket_name: Cloud Storage バケット名
    • path_to_folder: ストライプ セットのエクスポート先フォルダ(Cloud Storage バケット内)のパス
    • database_name: Cloud SQL インスタンス内のデータベースの名前
    • true | false: ストライプ エクスポートを使用するには、true に設定します。ストライプ数を指定せずに true を指定すると、最適なストライプ数が自動的に設定されます。
    • number_of_stripes: 使用するストライプの数。指定すると、stripedtrue とみなされます。

    HTTP メソッドと URL:

    POST https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/export

    JSON 本文のリクエスト:

    {
     "exportContext":
       {
          "fileType": "BAK",
          "uri": "gs://bucket_name/path_to_folder",
          "databases": ["database_name"],
          "bakExportOptions": {
            "striped": true | false,
            "stripe_count": ["number_of_stripes"]
          }
        }
    }
    

    リクエストを送信するには、次のいずれかのオプションを展開します。

    次のような JSON レスポンスが返されます。

  4. 以前に設定した IAM のロールを保持する必要がない場合は、今すぐ削除してください。
このリクエストのパラメータの完全な一覧については、instances:export ページをご覧ください。

REST v1beta4

  1. エクスポート先のバケットを作成します。
    gsutil mb -p PROJECT_NAME -l LOCATION_NAME gs://BUCKET_NAME
    

    このステップは必須ではありませんが、他のデータへ一切アクセスできないようにするために、実行することを強く推奨します。

  2. バケットに対する legacyBucketWriter IAM ロールをインスタンスに付与します。IAM 権限の設定については、IAM 権限の使用をご覧ください。
  3. データベースをエクスポートします。

    リクエストのデータを使用する前に、次のように置き換えます。

    • project-id: プロジェクト ID
    • instance-id: インスタンス ID
    • bucket_name: Cloud Storage バケット名
    • path_to_folder: ストライプ セットのエクスポート先フォルダ(Cloud Storage バケット内)のパス
    • database_name: Cloud SQL インスタンス内のデータベースの名前
    • true | false: ストライプ エクスポートを使用するには、true に設定します。ストライプ数を指定せずに true を指定すると、最適なストライプ数が自動的に設定されます。
    • number_of_stripes: 使用するストライプの数。指定すると、stripedtrue とみなされます。

    HTTP メソッドと URL:

    POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/export

    JSON 本文のリクエスト:

    {
     "exportContext":
       {
          "fileType": "BAK",
          "uri": "gs://bucket_name/path_to_folder",
          "databases": ["database_name"],
          "bakExportOptions": {
            "striped": true | false,
            "stripe_count": ["number_of_stripes"]
          }
        }
    }
    

    リクエストを送信するには、次のいずれかのオプションを展開します。

    次のような JSON レスポンスが返されます。

  4. 以前に設定した IAM のロールを保持する必要がない場合は、今すぐ削除してください。
このリクエストのパラメータの一覧については、instances:export ページをご覧ください。

Cloud SQL for SQL Server にインポートする

Cloud SQL for SQL Server へのインポートに必要なロールと権限

この手順では、Cloud Storage からファイルをインポートする必要があります。Cloud Storage からデータをインポートするには、Cloud SQL インスタンスのサービス アカウントまたはユーザーに次のいずれかのロールが必要です。

  • Cloud SQL 管理者のロールと roles/storage.legacyObjectReader IAM ロール
  • 次の権限を含むカスタムロール:
    • cloudsql.instances.get
    • cloudsql.instances.import
    • storage.buckets.get
    • storage.objects.get
    • storage.objects.list(ストライプ エクスポートの場合のみ)

サービス アカウントまたはユーザーがエクスポート オペレーションも実行する場合は、インポートとエクスポートの両方で必要な権限をすべて付与するため、Storage Object Admin IAM ロールを付与するほうが便利です。IAM ロールについては、Cloud Storage の Cloud Identity and Access Management をご覧ください。

BAK ファイルから Cloud SQL for SQL Server にデータをインポートする

ストライプ インポートを使用するには、ストライプ インポートを使用するをご覧ください。

さまざまなインポート フレームワークを利用できます。たとえば、Cloud SQL for SQL Server は、次のデータベース バージョンで 変更データ キャプチャ(CDC)をサポートしています。

  • SQL Server 2017 Standard
  • SQL Server 2017 Enterprise
  • SQL Server 2019 Standard
  • SQL Server 2019 Enterprise

CDC 対応データベースをインポートする場合、KEEP_CDC フラグが保持されます。

インスタンスのバージョンが Microsoft SQL Server Enterprise Edition の場合、暗号化された BAK ファイルをインポートできます。サポートされている BAK 拡張機能は .bak.bak.gz だけです。現在、GPG 暗号化バックアップはサポートされていません。

以下の手順では、新しいデータベースを指定する準備を行います。BAK ファイルのインポートを開始する前にデータベースを作成しないでください。

BAK ファイルを使用して Cloud SQL インスタンスにデータをインポートするには:

コンソール

  1. Google Cloud コンソールで Cloud SQL の [インスタンス] ページに移動します。

    Cloud SQL の [インスタンス] に移動

  2. インスタンスの [概要] ページを開くには、インスタンス名をクリックします。
  3. [インポート] をクリックします。
  4. データのインポート元となるファイルを選択するフィールドで、インポートに使用するバケットと BAK ファイルのパスを入力します。

    圧縮ファイル(.gz)または非圧縮ファイルをインポートできます。

  5. [ファイル形式] セクションで [BAK] を選択します。
  6. BAK ファイルをインポートする Cloud SQL インスタンスで [データベース] を指定します。
  7. [インポート] をクリックしてインポートを開始します。

gcloud

  1. インポート用のバケットを作成します。

    gsutil mb -p PROJECT_NAME -l LOCATION_NAME gs://BUCKET_NAME
    

    このステップは必須ではありませんが、他のデータへ一切アクセスできないようにするために、実行することを強くおすすめします。

  2. 必要なロールと権限を構成済みであることを確認してください。
  3. BAK ファイルからのデータをバケットにアップロードします。
  4. エクスポート元のインスタンスを記述します。
    gcloud sql instances describe INSTANCE_NAME
    
  5. serviceAccountEmailAddress フィールドをコピーします。
  6. gsutil iam を使用して、バケットのサービス アカウントに storage.objectViewer IAM ロールを付与します。IAM 権限の設定については、IAM 権限の使用をご覧ください。
  7. ファイルからデータをインポートします。
    gcloud beta sql import bak INSTANCE_NAME gs://BUCKET_NAME/FILE_NAME \
    --database=DATABASE_NAME
    
  8. 以前に設定した IAM の権限を保持する必要がない場合は、gsutil iam を使用して削除してください。

REST v1

  1. Cloud Storage バケットを作成します
  2. ファイルをバケットにアップロードします。

    ファイルをバケットにアップロードする方法については、オブジェクトのアップロードをご覧ください。

  3. インスタンスにバケットに対する storage.objectAdmin IAM のロールを付与します。IAM 権限の設定については、IAM 権限の使用をご覧ください。
  4. ファイルからデータをインポートします。

    リクエストのデータを使用する前に、次のように置き換えます。

    • project-id: プロジェクト ID
    • instance-id: インスタンス ID
    • bucket_name: Cloud Storage バケット名
    • path_to_bak_file: BAK ファイルへのパス
    • database_name: Cloud SQL インスタンス内のデータベースの名前

    HTTP メソッドと URL:

    POST https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/import

    JSON 本文のリクエスト:

    {
     "importContext":
       {
          "fileType": "BAK",
          "uri": "gs://bucket_name/path_to_bak_file",
          "database": "database_name"
        }
    }
    
    

    リクエストを送信するには、次のいずれかのオプションを展開します。

    次のような JSON レスポンスが返されます。

    別のユーザーがインポートするには、importContext.importUser プロパティを指定します。

    このリクエストのパラメータの完全な一覧については、instances:import ページをご覧ください。
  5. 以前に設定した IAM 権限を保持する必要がない場合は、権限を削除します。

REST v1beta4

  1. Cloud Storage バケットを作成します
  2. ファイルをバケットにアップロードします。

    ファイルをバケットにアップロードする方法については、オブジェクトのアップロードをご覧ください。

  3. インスタンスにバケットに対する storage.objectAdmin IAM のロールを付与します。IAM 権限の設定については、IAM 権限の使用をご覧ください。
  4. ファイルからデータをインポートします。

    リクエストのデータを使用する前に、次のように置き換えます。

    • project-id: プロジェクト ID
    • instance-id: インスタンス ID
    • bucket_name: Cloud Storage バケット名
    • path_to_bak_file: BAK ファイルへのパス
    • database_name: Cloud SQL インスタンス内のデータベースの名前

    HTTP メソッドと URL:

    POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/import

    JSON 本文のリクエスト:

    {
     "importContext":
       {
          "fileType": "BAK",
          "uri": "gs://bucket_name/path_to_bak_file",
          "database": "database_name"
        }
    }
    
    

    リクエストを送信するには、次のいずれかのオプションを展開します。

    次のような JSON レスポンスが返されます。

    別のユーザーがインポートするには、importContext.importUser プロパティを指定します。

    このリクエストのパラメータの完全な一覧については、instances:import ページをご覧ください。
  5. 以前に設定した IAM 権限を保持する必要がない場合は、権限を削除します。

ERROR_RDBMS などのエラーが表示した場合は、BAK ファイルがバケットに存在し、バケットに対して正しい権限があることを確認してください。Cloud Storage のアクセス制御の構成について詳しくは、アクセス制御リストの作成と管理をご覧ください。

ストライプ インポートの使用

ストライプ インポートの利点は次のとおりです。

  • オペレーション完了までに必要な時間の短縮
  • 5 TB を超えるデータベースをインポート可能

ストライプ インポートを使用する場合のデメリットとしては、ストライプ セット内のすべてのファイルを(1 つのファイルではなく)Cloud Storage バケット内の同じフォルダにアップロードしてからインポートを行うことが挙げられます。

運用の計画

ほとんどのユースケースでは、ストライプ インポートによりパフォーマンスが向上し、デメリットはありません。ただし、特定のインスタンスからストライプ セットにバックアップできない場合や、データベースが 5 TB 未満の場合で、高速なパフォーマンスが重要でない場合は、ストライプ化されていないインポートを使用することをおすすめします。

ストライプ インポートの使用方法

gcloud

  1. インポート用のバケットを作成します。

    gsutil mb -p PROJECT_NAME -l LOCATION_NAME gs://BUCKET_NAME
    

    このステップは必須ではありませんが、他のデータへ一切アクセスできないようにするために、実行することを強くおすすめします。

  2. 必要なロールと権限を構成済みであることを確認してください。
  3. バケット内に新しいフォルダを作成します。
  4. データベースをインポートするには、(データベースの)ストライプ セットのファイルを新しいフォルダにアップロードします。すべてのファイルがフォルダにアップロードされ、フォルダに余分なファイルが含まれていないことを確認します。
  5. エクスポート元のインスタンスを記述します。
    gcloud sql instances describe INSTANCE_NAME
    
  6. serviceAccountEmailAddress フィールドをコピーします。
  7. gsutil iam を使用して、バケットのサービス アカウントに storage.objectViewer IAM ロールを付与します。IAM 権限の設定については、IAM 権限の使用をご覧ください。
  8. フォルダからデータをインポートします。ストライプ化されていないインポートとの違いは次のとおりです。URI は単一ファイルではなく、ストライプ セットがアップロードされたフォルダの名前にリンクし、ユーザーは --striped パラメータを指定します:
    gcloud beta sql import bak INSTANCE_NAME gs://BUCKET_NAME/FOLDER_NAME \
    --database=DATABASE_NAME --striped
    
  9. 以前に設定した IAM の権限を保持する必要がない場合は、 gsutil iam を使用して削除してください。

REST v1

  1. Cloud Storage バケットを作成します
  2. ファイルをバケットにアップロードします。

    ファイルをバケットにアップロードする方法については、オブジェクトのアップロードをご覧ください。

  3. インスタンスにバケットに対する storage.objectAdmin IAM のロールを付与します。IAM 権限の設定については、IAM 権限の使用をご覧ください。
  4. ファイルからデータをインポートします。

    リクエストのデータを使用する前に、次のように置き換えます。

    • project-id: プロジェクト ID
    • instance-id: インスタンス ID
    • bucket_name: Cloud Storage バケット名
    • path_to_folder: ストライプ セットが配置されているフォルダのパス(Cloud Storage バケット内)
    • database_name: Cloud SQL インスタンス内に作成するデータベースの名前
    • true | false: ストライプ インポートを使用するには true に設定します。

    HTTP メソッドと URL:

    POST https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/import

    JSON 本文のリクエスト:

    {
     "importContext":
       {
          "fileType": "BAK",
          "uri": "gs://bucket_name/path_to_folder",
          "database": "database_name",
          "bakImportOptions": {
            "striped": true | false
          }
        }
    }
    

    リクエストを送信するには、次のいずれかのオプションを展開します。

    次のような JSON レスポンスが返されます。

    別のユーザーがインポートするには、importContext.importUser プロパティを指定します。

    このリクエストのパラメータの完全な一覧については、instances:import ページをご覧ください。
  5. 以前に設定した IAM 権限を保持する必要がない場合は、権限を削除します。

REST v1beta4

  1. Cloud Storage バケットを作成します
  2. ファイルをバケットにアップロードします。

    ファイルをバケットにアップロードする方法については、オブジェクトのアップロードをご覧ください。

  3. インスタンスにバケットに対する storage.objectAdmin IAM のロールを付与します。IAM 権限の設定については、IAM 権限の使用をご覧ください。
  4. ファイルからデータをインポートします。

    リクエストのデータを使用する前に、次のように置き換えます。

    • project-id: プロジェクト ID
    • instance-id: インスタンス ID
    • bucket_name: Cloud Storage バケット名
    • path_to_folder: ストライプ セットが配置されているフォルダのパス(Cloud Storage バケット内)
    • database_name: Cloud SQL インスタンス内に作成するデータベースの名前
    • true | false: ストライプ インポートを使用するには true に設定します。

    HTTP メソッドと URL:

    POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/import

    JSON 本文のリクエスト:

    {
     "importContext":
       {
          "fileType": "BAK",
          "uri": "gs://bucket_name/path_to_folder",
          "database": "database_name",
          "bakImportOptions": {
            "striped": true | false
          }
        }
    }
    

    リクエストを送信するには、次のいずれかのオプションを展開します。

    次のような JSON レスポンスが返されます。

    別のユーザーがインポートするには、importContext.importUser プロパティを指定します。

    このリクエストのパラメータの完全な一覧については、instances:import ページをご覧ください。
  5. 以前に設定した IAM 権限を保持する必要がない場合は、権限を削除します。

ERROR_RDBMS のようなエラーが発生した場合、テーブルが存在することを確認してください。存在している場合は、バケットに対して正しい権限があることを確認します。Cloud Storage のアクセス制御の構成について詳しくは、アクセス制御リストの作成と管理をご覧ください。

次のステップ