別のプラットフォームから Cloud SQL for MySQL にワークロードを移行するときに、多くの場合は Cloud de Confiance コンソールを使用して、以前の環境からエクスポートした SQL ダンプファイルからデータをインポートします。
このチュートリアルでは、必要な Cloud de Confiance by S3NS リソースを作成し、SQL データベースを Cloud SQL for MySQL インスタンスにインポートする方法について説明します。このチュートリアルでは、プライベート サービス アクセスによる Virtual Private Cloud(VPC)ネットワークの使用や、Cloud SQL インスタンスのプライベート IP の有効化など、Cloud SQL for MySQL に移行する際のベスト プラクティスについて説明します。
手順を進める際は、特に指定がない限り、デフォルトの設定値をそのまま使用してください。
目標
- サンプル SQL ダンプファイルをダウンロードします。
- プライベート サービス アクセスを使用して新しい Virtual Private Cloud ネットワークを作成します。
- Cloud Storage バケットを作成し、SQL ダンプファイルをアップロードします。
- プライベート IP 用に構成された Cloud SQL for MySQL インスタンスを作成します。
- ユーザーを作成します。
- ダンプファイルから新しいデータベースにインポートします。
- 構造を表示してクエリを実行し、データベースが正常にインポートされたことを確認します。
費用
このドキュメントでは、課金対象である次のコンポーネントを使用します。 Cloud de Confiance by S3NS
このドキュメントに記載されているタスクの完了後、作成したリソースを削除すると、それ以上の請求は発生しません。詳細については、クリーンアップをご覧ください。 In the Cloud de Confiance console, on the project selector page,
select or create a Cloud de Confiance project. Roles required to select or create a project
If you're using an existing project for this guide,
verify that you have
the permissions required to complete this guide. If you created a new
project, then you already have the required permissions.
Verify that billing is enabled for your Cloud de Confiance project.
Enable the Cloud SQL, Cloud SQL Admin, Compute Engine, Cloud Storage APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM
role (
このチュートリアルを完了するために必要な権限を取得するには、プロジェクトに対する次の IAM ロールを付与するよう管理者に依頼してください。
ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。
必要な権限は、カスタムロールや他の事前定義ロールから取得することもできます。
このチュートリアルでは、国コードと世界の首都を含む小さなサンプル データベースを使用します。 残りのリソースを作成する前に、サービスを実行する VPC ネットワークを作成します。プライベート サービス アクセスを使用すると、内部 IPv4 アドレスを使用して外部ネットワークと Cloud SQL for MySQL の間にプライベート接続を確立することで、Cloud SQL データベースへのアクセスを制限できます。 Cloud de Confiance コンソールで、[VPC ネットワーク] ページに移動します。 [VPC ネットワークを作成] をクリックします。 [名前] フィールドに「 [サブネット作成モード] で [カスタム] を選択します。 [名前] フィールドに「 近くのリージョンを選択します。 [IPv4 範囲] に「 [プライベート Google アクセス] で [オン] を選択します。 [完了] をクリックします。 ページの下部にある [作成] をクリックします。 VPC ネットワークの作成プロセスが完了したら、ネットワークのプライベート サービス アクセスを構成します。 次に、先ほどダウンロードした SQL ダンプファイルを格納する Cloud Storage バケットを作成します。Cloud SQL インポート ツールは、ダンプファイルがバケットにあることを前提としています。Cloud Storage バケットには、グローバルに一意の名前を付ける必要があります。 新しいバケットの [バケットの詳細] ページが開き、[オブジェクト] ペインが選択されています。 先ほどダウンロードしたサンプル SQL ダンプファイルをバケットにアップロードします。 Cloud de Confiance コンソールを使用して、次の設定で Cloud SQL インスタンスを作成します。その他の設定はすべてデフォルトのままにします。インポート プロセスでプライベート IP を有効にする必要はありませんが、本番環境のワークロードにはプライベート IP を使用することをおすすめします。 データベースの読み取り、またはデータベースへの書き込みを行うには、root ユーザーとは異なるデータベース ユーザーを作成する必要があります。 これで、Cloud Storage バケットにアップロードした インポート プロセスが完了し、 インポート オペレーションが完了したら、Cloud SQL Studio を使用してデータベースに接続し、テーブルのリストを調べて、データに対してテストクエリを実行することで、データベースがインポートされたことを確認します。 前に作成したユーザー アカウントを使用して、Cloud SQL Studio で新しいデータベースに接続します。 次のコードをクエリエディタに貼り付けます。 [実行] をクリックします。 結果ペインに、世界の首都とその国がアルファベット順に表示されます。 このチュートリアルで使用したリソースについて Cloud de Confiance アカウントに課金されないようにするには、次のいずれかを行います。 プロジェクトを削除する: Cloud de Confiance プロジェクトを残しながら課金されないようにするには、チュートリアルで作成した Cloud SQL インスタンス、Cloud Storage バケット、VPC ネットワークを削除します。 まず、削除からの保護を無効にしてから、チュートリアルの Cloud SQL インスタンスを削除します。 次に、ストレージ バケットとその内容を削除します。 VPC ネットワーク内のリソースを削除したので、ネットワークを削除する準備が整いました。VPC ネットワークを削除する前に、VPC ネットワークの作成時に自動的に作成されたピアリング接続を削除する必要があります。 ピアリング接続が削除されたので、次に VPC ネットワークを削除します。始める前に
roles/resourcemanager.projectCreator), which contains the
resourcemanager.projects.create permission. Learn how to grant
roles.
roles/serviceusage.serviceUsageAdmin), which
contains the serviceusage.services.enable permission. Learn how to grant
roles.
必要なロール
roles/cloudsql.admin)roles/storage.admin)roles/compute.networkAdmin)サンプル データベース ダンプファイルを取得する
countries データベースの SQL ファイル(countries-mysql.sql)をローカル環境にダウンロードします。プライベート サービス アクセスを使用してネットワークを作成する
tutorial-network」と入力します。tutorial-subnet」と入力します。10.0.0.0/24」と入力します。
tutorial-range」と入力します。192.168.0.0/20」と入力します。Cloud Storage バケットを作成する
ダンプファイルをバケットにアップロードする
countries-mysql.sql ファイルに移動して選択します。Cloud SQL インスタンスを作成する
Cloud SQL の [インスタンス] ページに移動
tutorial-instance」と入力します。ユーザーを追加する
tutorial-user」と入力します。ダンプファイルからインポートする
countries-mysql.sql ダンプファイルを使用して countries データベースをインポートする準備ができました。
countries データベースが Cloud SQL for MySQL にインポートされると、成功メッセージが表示されます。Cloud SQL for MySQL でインポートされたデータを検証する
Cloud SQL Studio に対する認証
テーブルを表示してクエリを実行する
countries データベースを調べて、データベースに capitals と country_codes の 2 つのテーブルがあることを確認します。SELECT
`capitals`.`country_capital`,
`country_codes`.`country_name`
FROM
`capitals`
JOIN
`country_codes`
ON
`capitals`.`alpha_2_code` = `country_codes`.`alpha_2_code`
ORDER BY
`capitals`.`country_capital`;
クリーンアップ
プロジェクトを削除する
gcloud projects delete PROJECT_ID
リソースを個別に削除する
Cloud SQL インスタンスを削除する
tutorial-instance」と入力します。Cloud Storage バケットを削除する
DELETE」と入力して削除を確認し、[削除] をクリックします。VPC ネットワークを削除する
tutorial-network」と入力し、[削除] をクリックして削除を確定します。次のステップ