プライベート IP を使用した Cloud SQL for MySQL コマンドライン クライアントのクイックスタート

ここでは、MySQL インスタンスを作成し、プライベート IP を使用してそのインスタンスに接続する方法を説明します。このクイックスタートで作成されるリソースにかかる費用は、クリーンアップを含む手順を適切なタイミングで完了した場合、通常 1 ドル未満です。

プロジェクトを設定する

このクイックスタートの手順を行う前に、次のタスクを完了します。

  1. Google Cloud アカウントにログインします。Google Cloud を初めて使用する場合は、アカウントを作成して、実際のシナリオでの Google プロダクトのパフォーマンスを評価してください。新規のお客様には、ワークロードの実行、テスト、デプロイができる無料クレジット $300 分を差し上げます。
  2. Google Cloud Console の [プロジェクト セレクタ] ページで、Google Cloud プロジェクトを選択または作成します。

    プロジェクト セレクタに移動

  3. Cloud プロジェクトに対して課金が有効になっていることを確認します。プロジェクトに対して課金が有効になっていることを確認する方法を学習する

  4. Google Cloud Console の [プロジェクト セレクタ] ページで、Google Cloud プロジェクトを選択または作成します。

    プロジェクト セレクタに移動

  5. Cloud プロジェクトに対して課金が有効になっていることを確認します。プロジェクトに対して課金が有効になっていることを確認する方法を学習する

  6. ユーザー アカウントに Cloud SQL クライアントのロールがあることを確認します。

    IAM ページに移動

  7. Cloud SQL Admin API を有効にします。

    API を有効にする

概要

プライベート IP アドレスを使用して Cloud SQL インスタンスに接続する際には、ソースが配置されている場所に応じて多くの方法が存在します。重要な要素は、ソースマシンが Cloud SQL インスタンスと同じ VPC ネットワーク内に存在する必要があることです。ソースが Google Cloud に存在しない場合、または同じ Google Cloud プロジェクトに存在しない場合は、ここで示すのとは異なる接続を構成する必要があります。

このクイックスタートでは、最も直接的な方法で接続を構成します。ソースとターゲットは同じ Google Cloud プロジェクトに属し、同じ VPC ネットワーク上に存在します。プライベート IP アドレス(ターゲット)と Compute Engine VM(ソース)を使用して、Cloud SQL インスタンスを作成します。VM から Cloud SQL インスタンスに接続するために必要なツールをインストールして使用します。

次の操作を行います。

  1. プライベート IP アドレスを使用して Cloud SQL インスタンスを作成します

    後で使用するため、インスタンスの connection name を見つけて保存します。

  2. Compute Engine VM を作成します
  3. VM に対して 2 つの SSH ウィンドウを開きます

    最初のウィンドウで mysql をインストールし、Cloud SQL Auth Proxy をインストールして起動します。2 つ目のウィンドウで Cloud SQL Auth Proxy に接続し、Cloud SQL インスタンスに接続します。

  4. SSH ウィンドウ #1 で mysql クライアントをインストールします。
  5. SSH ウィンドウ #1 で Cloud SQL Auth Proxy をインストールします。

    Cloud SQL Auth Proxy は、mysql クライアントと Cloud SQL インスタンスの間のコネクタとして機能します。

  6. SSH ウィンドウ #1 で Cloud SQL Auth Proxy を起動します。

    成功すると、Cloud SQL Auth Proxy が接続リクエストをリッスンします。

  7. SSH ウィンドウ #2 で、mysql クライアントから Cloud SQL Auth Proxy に接続して、Cloud SQL インスタンスに接続します。

    成功すると、このウィンドウには mysql プロンプトが表示されます。SSH ウィンドウ #1 には、Cloud SQL Auth Proxy が実行されていることを示す接続成功メッセージが表示されます。

  8. クリーンアップします。

    Cloud SQL インスタンスと Compute Engine VM の両方を削除します。

プライベート IP アドレスを使用して Cloud SQL インスタンスを作成する

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

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

  2. [インスタンスを作成] をクリックします。
  3. [MySQL を選択] をクリックします。
  4. Compute API を有効にするように求められたら、[API を有効にする] ボタンをクリックします。
  5. [インスタンスの情報] セクションにインスタンス ID の名前を入力します。
  6. root ユーザーのパスワードを入力します。後で必要になるため、このパスワードをメモしておきます。
  7. [リージョンとゾーンの可用性の選択] セクションで、[シングルゾーン] オプションを選択します。
  8. [構成オプションを表示] を開きます。
  9. [接続] を開きます。
  10. [パブリック IP] をクリアします。
  11. [プライベート IP] を選択します。
  12. [ネットワーク] プルダウンで [デフォルト] を選択します。
  13. 新しいプロジェクトを使用している場合は、「Private service connection required」というメッセージが表示されます。次に、以下の手順を行います。
    1. [接続の設定] をクリックします。
    2. [Service Networking API の有効化] をクリックします。
    3. [IP 範囲を割り振る] セクションで、[自動的に割り振られた IP 範囲を使用する] を選択します。
    4. [続行] をクリックします。
    5. [接続を作成] をクリックし、接続の作成が完了するまで待ちます。
  14. [インスタンスを作成] をクリックします。

インスタンスの概要ページが表示されます。新しいインスタンスをクリックして、プライベート IP アドレスを含む詳細を表示します。

[このインスタンスに接続] セクションで、インスタンスの接続名をコピーして保存します。connection name の形式は projectID:region:instanceID です。

後で Cloud SQL Auth プロキシを起動する際に、この connection name を使用します。

Compute Engine VM を作成する

  1. Google Cloud Console で、[VM インスタンス] ページに移動します。

    [VM インスタンス] に移動

  2. [インスタンスを作成] をクリックします。
  3. インスタンスの名前を入力します。
  4. [アクセス スコープ] では、[すべての Cloud APIs に完全アクセス権を許可] を選択します。
  5. [作成] をクリックして、VM の作成が完了するまで待ちます。

Compute Engine VM への 2 つの SSH 接続を開く

VM で 2 つのウィンドウを使用します。最初のウィンドウは、mysql クライアントと Cloud SQL Auth プロキシのインストール、インスタンス接続名の取得とプロキシの起動に使用されます。2 つ目のウィンドウは、プロキシ経由で Cloud SQL インスタンスに接続するために使用されます。

  1. Compute Engine VM インスタンスの [接続] 列で [SSH] メニューを開きます。
  2. [ブラウザ ウィンドウで開く] を選択して、SSH ウィンドウ #1 を開きます。

    ウィンドウ内に利用可能というプロンプトが表示されるまでに数秒かかる場合があります。

  3. プロンプトが表示されたら、「pwd」と入力して /home/$USER ディレクトリにいることを確認します。

    このウィンドウで、mysql クライアントと Cloud SQL Auth プロキシをインストールし、さらに Cloud SQL Auth プロキシを起動します。

  4. もう一度 [ブラウザ ウィンドウで開く] を選択して、SSH ウィンドウ #2 を開きます。

    このウィンドウを使用して Cloud SQL インスタンスに接続します。

mysql クライアントをインストールする

この手順では SSH ウィンドウ #1 を使用します。

MySQL クライアントをパッケージ マネージャーからインストールします。

sudo apt-get update
sudo apt-get install mariadb-server-10.3
  

Cloud SQL Auth Proxy をインストールする

この手順では SSH ウィンドウ #1 を使用します。

  1. wget をインストールします。
    sudo apt-get install wget
        
  2. Cloud SQL Auth Proxy をダウンロードします。
    wget https://dl.google.com/cloudsql/cloud_sql_proxy.linux.amd64 -O cloud_sql_proxy
      
  3. Cloud SQL Auth Proxy を動作可能にします。
    chmod +x cloud_sql_proxy
      

Cloud SQL Auth Proxy を起動する

この手順では SSH ウィンドウ #1 を使用します。

Cloud SQL Auth Proxy を開始して、その出力をモニタリングします。INSTANCE_CONNECTION_NAME は、Cloud SQL インスタンスの作成時にコピーした connection name に置き換えます。

./cloud_sql_proxy -instances=INSTANCE_CONNECTION_NAME=tcp:3306

Cloud SQL Auth プロキシが正常に起動すると、SSH ウィンドウに次のようなメッセージが表示されます。

Listening on 127.0.0.1:3306 for myInstance
Ready for new connections

Cloud SQL インスタンスに接続する

この手順では SSH ウィンドウ #2 を使用します。

次のコマンドを実行します。

mysql -u root -p --host 127.0.0.1 --port 3306

Enter password: プロンプトで、MySQL root ユーザー アカウントのパスワードを入力します。

MySQL プロンプトが表示されていることを確認します。mysql クライアントを使用してデータベースに接続しています。

Cloud SQL Auth Proxy を起動したターミナル ウィンドウに戻ります。次のようなメッセージが表示されます。

New connection for myInstance

クリーンアップ

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

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

  2. インスタンスの名前を選択して [概要] ページを開きます。
  3. ページ上部にあるアイコンバーで、[削除] をクリックします。
  4. [インスタンスの削除] ウィンドウでインスタンスの名前を入力してから、[削除] をクリックしてインスタンスを削除します。

    インスタンスの削除後、約 7 日はそのインスタンス名を再利用できません。

  5. Google Cloud Console で、[VM インスタンス] ページに移動します。

    [VM インスタンス] に移動

  6. インスタンスの名前を選択します。

  7. [その他の操作] メニューから [削除] を選択します。

次のステップ

必要に応じて、Cloud SQL インスタンスの作成で詳細をご確認ください。

Cloud SQL インスタンスの MySQL ユーザーデータベースの作成についても学習できます。

また、他の Google Cloud アプリケーションから Cloud SQL インスタンスへの接続についても確認できます。