フィードバックを送信
読み取りプールを作成して管理する
コレクションでコンテンツを整理
必要に応じて、コンテンツの保存と分類を行います。
プレビュー版
この機能は、サービス固有の規約 の「一般サービス規約」セクションの「pre-GA サービス規約」の対象となります。
お客様はこの機能の個人データを Cloud のデータ処理に関する追加条項 に記載されているとおりに処理できます。ただし、Google Cloud へのアクセスに関する契約に記載されている義務と制限事項が適用されます。
pre-GA の機能は「現状のまま」で提供されるものであり、サポートが制限されることがあります。
詳細については、リリース ステージの説明 をご覧ください。
このページでは、大規模な読み取りワークロードの読み取りプール を作成して管理する方法について説明します。
始める前に
読み取りプールには、プライマリ インスタンスのコピーが含まれています。まだ作成していない場合は、Cloud SQL Enterprise Plus エディションのプライマリ インスタンス を作成します。リードプールはパブリック IP 接続をサポートしていますが、このガイドでは、プライベート IP(PSA)接続を使用してプライマリ インスタンスを作成します。プライマリ インスタンスとレプリケーションの詳細については、Cloud SQL でのレプリケーション をご覧ください。
プライマリ インスタンスの作成後、root ユーザーのパスワードを選択し、次のコマンドを実行してプライマリ インスタンスにパスワードを設定します。このパスワードは、後で読み取りプールに接続するときに使用できるように保存します。
gcloud --project= PROJECT \
sql users set-password root --host= % \
--instance= PRIMARY_INSTANCE_NAME --prompt-for-password
gcloud
v516.0.0 以降を使用していることを確認してください。
次のように置き換えます。
PROJECT : プライマリ インスタンスと読み取りプールを配置するプロジェクトの名前。
PRIMARY_INSTANCE_NAME : プライマリ インスタンスの名前。
読み取りプールを作成する
gcloud
gcloud CLI のインストールと使用開始については、gcloud CLI をインストールする をご覧ください。Cloud Shell の起動については、Cloud Shell を使用する をご覧ください。
次の gcloud beta sql instances create
コマンドを使用して、複数の読み取りプールノードを含む読み取りプールを作成します。
gcloud beta sql instances create READ_POOL_NAME \
--tier= TIER --edition= ENTERPRISE_PLUS \
--instance-type= READ_POOL_INSTANCE --node-count= NODE_COUNT \
--master-instance-name= PRIMARY_INSTANCE_NAME
次のように置き換えます。
READ_POOL_NAME : 読み取りプールに使用する名前。
TIER : 読み取りプール内の各読み取りプールノードに使用するマシンタイプ(db-perf-optimized-N-4
など)。
NODE_COUNT : 読み取りプールに必要な読み取りプールノードの数。1
~20
の任意の数値を指定します。
PRIMARY_INSTANCE_NAME : 読み取りプールに関連付けられているプライマリ インスタンスの名前(my-primary-instance
など)。
REST v1
インスタンス リソースの
insert
メソッドを使用して、複数のリードプールノードを含むリードプールを作成します。databaseVersion
プロパティはプライマリと同じにする必要があります。
リクエストのデータを使用する前に、次のように置き換えます。
PROJECT : プライマリ インスタンスと読み取りプールを配置するプロジェクトの名前。
REGION : 読み取りプールのリージョン(us-east1
など)。リージョンはプライマリ インスタンスと同じにする必要があります。
TIER : 読み取りプールの各ノードに使用するマシンタイプ(db-perf-optimized-N-4
など)。
PRIMARY_INSTANCE_NAME : プライマリ インスタンスの名前。
READ_POOL_NAME : 読み取りプールに使用する名前(my-read-pool
など)。
DATABASE_VERSION : 使用するデータベース バージョン。例: MYSQL_8_0_37
。
NODE_COUNT : 読み取りプールに必要な読み取りプールノードの数。1
~20
の任意の数値を指定します。
FULL_NETWORK_NAME : 読み取りプールを配置するネットワークのフルパス(projects/vpc-host-project/global/networks/my-network-name
など)。
HTTP メソッドと URL:
POST https://sqladmin.googleapis.com/v1/projects/PROJECT /instances
リクエストの本文(JSON):
{
"name": "READ_POOL_NAME ",
"masterInstanceName": "PRIMARY_INSTANCE_NAME ",
"project": "PROJECT ",
"databaseVersion": "DATABASE_VERSION ",
"region": "REGION ",
"instanceType": "READ_POOL_INSTANCE",
"nodeCount": NODE_COUNT ,
"settings": {
"tier": "TIER ",
"edition": "ENTERPRISE_PLUS",
"ipConfiguration": {
"ipv4Enabled": false,
"privateNetwork": "FULL_NETWORK_NAME "
}
}
}
リクエストを送信するには、次のいずれかのオプションを展開します。
curl(Linux、macOS、Cloud Shell)
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d @request.json \ "https://sqladmin.googleapis.com/v1/projects/PROJECT /instances"
PowerShell(Windows)
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -InFile request.json ` -Uri "https://sqladmin.googleapis.com/v1/projects/PROJECT /instances" | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
レスポンス
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT /instances/READ_POOL_NAME ",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2020-01-21T22:43:37.981Z",
"operationType": "CREATE_READ_POOL",
"name": "OPERATION_ID ",
"targetId": "INSTANCE_ID ",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT /operations/OPERATION_ID ",
"targetProject": "PROJECT "
}
REST v1beta4
インスタンス リソースの
insert
メソッドを使用して、複数のリードプールノードを含むリードプールを作成します。databaseVersion
プロパティはプライマリと同じにする必要があります。
リクエストのデータを使用する前に、次のように置き換えます。
PROJECT : プライマリ インスタンスと読み取りプールを配置するプロジェクトの名前。
REGION : 読み取りプールのリージョン(us-east1
など)。リージョンはプライマリ インスタンスと同じにする必要があります。
TIER : 読み取りプールの各ノードに使用するマシンタイプ(db-perf-optimized-N-4
など)。
PRIMARY_INSTANCE_NAME : プライマリ インスタンスの名前。
READ_POOL_NAME : 読み取りプールに使用する名前(my-read-pool
など)。
DATABASE_VERSION : 使用するデータベース バージョン。例: MYSQL_8_0_37
。
NODE_COUNT : 読み取りプールに必要な読み取りプールノードの数。1
~20
の任意の数値を指定します。
FULL_NETWORK_NAME : 読み取りプールを配置するネットワークのフルパス(projects/vpc-host-project/global/networks/my-network-name
など)。
HTTP メソッドと URL:
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT /instances
リクエストの本文(JSON):
{
"name": "READ_POOL_NAME ",
"masterInstanceName": "PRIMARY_INSTANCE_NAME ",
"project": "PROJECT ",
"databaseVersion": "DATABASE_VERSION ",
"region": "REGION ",
"instanceType": "READ_POOL_INSTANCE",
"nodeCount": NODE_COUNT ,
"settings": {
"tier": "TIER ",
"edition": "ENTERPRISE_PLUS",
"ipConfiguration": {
"ipv4Enabled": false,
"privateNetwork": "FULL_NETWORK_NAME "
}
}
}
リクエストを送信するには、次のいずれかのオプションを展開します。
curl(Linux、macOS、Cloud Shell)
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d @request.json \ "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT /instances"
PowerShell(Windows)
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -InFile request.json ` -Uri "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT /instances" | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
レスポンス
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT /instances/READ_POOL_NAME ",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2020-01-21T22:43:37.981Z",
"operationType": "CREATE_READ_POOL",
"name": "OPERATION_ID ",
"targetId": "INSTANCE_ID ",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT /operations/OPERATION_ID ",
"targetProject": "PROJECT "
}
リードレプリカをリードプールに変換する
既存の Cloud SQL Enterprise Plus エディションのリードレプリカを読み取りプールに変換するには、プール内のノード数を指定します。この変換プロセスでは、レプリカ IP が読み取りプール IP(読み取りエンドポイント)になるため、既存のクライアントは再構成なしでプールに接続できます。
新しく作成されたリードプールノードは、元のリードレプリカと同じマシンタイプと構成になります。このマシンタイプまたは構成を変更するには、別のオペレーションが必要です。このオペレーションは、ゾーン リードレプリカでのみサポートされています。高可用性(HA)リードレプリカを読み取りプールに変換する には、まずゾーン リードレプリカに変換する必要があります。
詳細については、読み取りプール構成を編集する をご覧ください。
gcloud
gcloud CLI のインストールと使用開始については、gcloud CLI をインストールする をご覧ください。Cloud Shell の起動については、Cloud Shell を使用する をご覧ください。
次の gcloud beta sql instances patch
コマンドを使用して、リードプールで使用するリードレプリカを変換します。
gcloud beta sql instances patch READ_REPLICA_NAME \
--instance-type= READ_POOL_INSTANCE --node-count= NODE_COUNT
次のように置き換えます。
READ_REPLICA_NAME : 変換するリードレプリカの名前。
NODE_COUNT : 読み取りプールに必要な読み取りプールノードの数。1
~20
の任意の数値を指定します。
REST v1
インスタンス リソースの
patch
メソッドを使用して、リードレプリカをリードプールに変換します。
リクエストのデータを使用する前に、次のように置き換えます。
READ_REPLICA_NAME : 変換するリードレプリカの名前(例: my-read-replica
)。
NODE_COUNT : 読み取りプールに必要な読み取りプールノードの数。1
~20
の任意の数値を指定します。
HTTP メソッドと URL:
PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT /instances/READ_REPLICA_NAME
リクエストの本文(JSON):
{
"instanceType": "READ_POOL_INSTANCE",
"nodeCount": NODE_COUNT
}
リクエストを送信するには、次のいずれかのオプションを展開します。
curl(Linux、macOS、Cloud Shell)
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d @request.json \ "https://sqladmin.googleapis.com/v1/projects/PROJECT /instances/READ_REPLICA_NAME "
PowerShell(Windows)
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method PATCH ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -InFile request.json ` -Uri "https://sqladmin.googleapis.com/v1/projects/PROJECT /instances/READ_REPLICA_NAME " | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
レスポンス
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT /instances/READ_REPLICA_NAME ",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2020-01-21T22:43:37.981Z",
"operationType": "UPDATE",
"name": "OPERATION_ID ",
"targetId": "READ_REPLICA_NAME ",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT /operations/OPERATION_ID ",
"targetProject": "PROJECT "
}
REST v1beta4
インスタンス リソースの
patch
メソッドを使用して、リードレプリカをリードプールに変換します。
リクエストのデータを使用する前に、次のように置き換えます。
READ_REPLICA_NAME : 変換するリードレプリカの名前(例: my-read-replica
)。
NODE_COUNT : 読み取りプールに必要な読み取りプールノードの数。1
~20
の任意の数値を指定します。
HTTP メソッドと URL:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT /instances/READ_REPLICA_NAME
リクエストの本文(JSON):
{
"instanceType": "READ_POOL_INSTANCE",
"nodeCount": NODE_COUNT
}
リクエストを送信するには、次のいずれかのオプションを展開します。
curl(Linux、macOS、Cloud Shell)
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d @request.json \ "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT /instances/READ_REPLICA_NAME "
PowerShell(Windows)
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method PATCH ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -InFile request.json ` -Uri "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT /instances/READ_REPLICA_NAME " | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
レスポンス
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT /instances/READ_REPLICA_NAME ",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2020-01-21T22:43:37.981Z",
"operationType": "UPDATE",
"name": "OPERATION_ID ",
"targetId": "READ_REPLICA_NAME ",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT /operations/OPERATION_ID ",
"targetProject": "PROJECT "
}
読み取りプールをリードレプリカに変換する
gcloud
gcloud CLI のインストールと使用開始については、gcloud CLI をインストールする をご覧ください。Cloud Shell の起動については、Cloud Shell を使用する をご覧ください。
次の gcloud beta sql instances patch
コマンドを使用して、リードプールで使用するリードレプリカを変換します。
gcloud beta sql instances patch READ_POOL_NAME \
--instance-type= READ_REPLICA_INSTANCE
次のように置き換えます。
READ_POOL_NAME : 変換する読み取りプールの名前。
REST v1
インスタンス リソースの
patch
メソッドを使用して、リードプールをリードレプリカに変換します。
リクエストのデータを使用する前に、次のように置き換えます。
READ_POOL_NAME : 読み取りプールの名前(my-read-pool
など)。
HTTP メソッドと URL:
PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT /instances/READ_POOL_NAME
リクエストの本文(JSON):
{
"instanceType": "READ_REPLICA_INSTANCE"
}
リクエストを送信するには、次のいずれかのオプションを展開します。
curl(Linux、macOS、Cloud Shell)
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d @request.json \ "https://sqladmin.googleapis.com/v1/projects/PROJECT /instances/READ_POOL_NAME "
PowerShell(Windows)
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method PATCH ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -InFile request.json ` -Uri "https://sqladmin.googleapis.com/v1/projects/PROJECT /instances/READ_POOL_NAME " | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
レスポンス
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT /instances/READ_POOL_NAME ",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2020-01-21T22:43:37.981Z",
"operationType": "UPDATE",
"name": "OPERATION_ID ",
"targetId": "READ_POOL_NAME ",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT /operations/OPERATION_ID ",
"targetProject": "PROJECT "
}
REST v1beta4
インスタンス リソースの
patch
メソッドを使用して、リードプールをリードレプリカに変換します。
リクエストのデータを使用する前に、次のように置き換えます。
READ_POOL_NAME : 読み取りプールの名前(my-read-pool
など)。
HTTP メソッドと URL:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT /instances/READ_POOL_NAME
リクエストの本文(JSON):
{
"instanceType": "READ_REPLICA_INSTANCE"
}
リクエストを送信するには、次のいずれかのオプションを展開します。
curl(Linux、macOS、Cloud Shell)
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d @request.json \ "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT /instances/READ_POOL_NAME "
PowerShell(Windows)
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method PATCH ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -InFile request.json ` -Uri "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT /instances/READ_POOL_NAME " | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
レスポンス
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT /instances/READ_POOL_NAME ",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2020-01-21T22:43:37.981Z",
"operationType": "UPDATE",
"name": "OPERATION_ID ",
"targetId": "READ_POOL_NAME ",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT /operations/OPERATION_ID ",
"targetProject": "PROJECT "
}
読み取りプールの情報を表示する
gcloud
gcloud CLI のインストールと使用開始については、gcloud CLI をインストールする をご覧ください。Cloud Shell の起動については、Cloud Shell を使用する をご覧ください。
次の gcloud beta sql instances describe
コマンドを使用して、リードプールの説明を取得します。
gcloud beta sql instances describe READ_POOL_NAME
次のように置き換えます。
READ_POOL_NAME : 説明を取得する読み取りプールの名前。
IP アドレスとノード情報を含むレスポンスの例は次のようになります。
...
connectionName : my-project:us-central1:read-pool
ipAddresses :
- ipAddress : 10.3.0.108
type : PRIVATE
nodeCount : 2
nodes :
- dnsName : c5bdacb09ffc.j10o8yqc7pve.us-central1.sql.goog.
gceZone : us-central1-f
ipAddresses :
- ipAddress : 10.3.0.112
type : PRIVATE
name : read-pool-node-01
state : RUNNABLE
- dnsName : 8f77c454d6b2.j10o8yqc7pve.us-central1.sql.goog.
gceZone : us-central1-c
ipAddresses :
- ipAddress : 10.3.0.113
type : PRIVATE
name : read-pool-node-02
state : RUNNABLE
REST v1
get
メソッドを使用して、読み取りプールの詳細を表示します。
リクエストのデータを使用する前に、次のように置き換えます。
PROJECT : 読み取りプールが存在するプロジェクトの名前。
READ_POOL_NAME : 読み取りプールの名前(my-read-pool
など)。
HTTP メソッドと URL:
GET https://sqladmin.googleapis.com/v1/projects/PROJECT /instances/READ_POOL_NAME
リクエストを送信するには、次のいずれかのオプションを展開します。
curl(Linux、macOS、Cloud Shell)
次のコマンドを実行します。
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://sqladmin.googleapis.com/v1/projects/PROJECT /instances/READ_POOL_NAME "
PowerShell(Windows)
次のコマンドを実行します。
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri "https://sqladmin.googleapis.com/v1/projects/PROJECT /instances/READ_POOL_NAME " | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
レスポンス
{
[...],
"connectionName": "my-project:us-central1:read-pool",
"ipAddresses": [
{
"type": "PRIVATE",
"ipAddress": "10.3.0.108"
}
],
"nodeCount": 2,
"nodes": [
{
"ipAddresses": [
{
"type": "PRIVATE",
"ipAddress": "10.3.0.112"
}
],
"name": "read-pool-node-01",
"gceZone": "us-central1-f",
"dnsName": "c5bdacb09ffc.j10o8yqc7pve.us-central1.sql.goog.",
"state": "RUNNABLE"
},
{
"ipAddresses": [
{
"type": "PRIVATE",
"ipAddress": "10.3.0.113"
}
],
"name": "read-pool-node-02",
"gceZone": "us-central1-c",
"dnsName": "8f77c454d6b2.j10o8yqc7pve.us-central1.sql.goog.",
"state": "RUNNABLE"
}
]
}
REST v1beta4
get
メソッドを使用して、読み取りプールの詳細を表示します。
リクエストのデータを使用する前に、次のように置き換えます。
PROJECT : 読み取りプールが存在するプロジェクトの名前。
READ_POOL_NAME : 読み取りプールの名前(my-read-pool
など)。
HTTP メソッドと URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT /instances/READ_POOL_NAME
リクエストを送信するには、次のいずれかのオプションを展開します。
curl(Linux、macOS、Cloud Shell)
次のコマンドを実行します。
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT /instances/READ_POOL_NAME "
PowerShell(Windows)
次のコマンドを実行します。
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT /instances/READ_POOL_NAME " | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
{
[...],
"connectionName": "my-project:us-central1:read-pool",
"ipAddresses": [
{
"type": "PRIVATE",
"ipAddress": "10.3.0.108"
}
],
"nodeCount": 2,
"nodes": [
{
"ipAddresses": [
{
"type": "PRIVATE",
"ipAddress": "10.3.0.112"
}
],
"name": "read-pool-node-01",
"gceZone": "us-central1-f",
"dnsName": "c5bdacb09ffc.j10o8yqc7pve.us-central1.sql.goog.",
"state": "RUNNABLE"
},
{
"ipAddresses": [
{
"type": "PRIVATE",
"ipAddress": "10.3.0.113"
}
],
"name": "read-pool-node-02",
"gceZone": "us-central1-c",
"dnsName": "8f77c454d6b2.j10o8yqc7pve.us-central1.sql.goog.",
"state": "RUNNABLE"
}
]
}
読み取りプール ノードを追加または削除する
次の手順では、読み取りプール内の読み取りプール ノードの数を変更して、読み取りプールをスケールインまたはスケールアウトします。操作にはいくつかの制限があります。詳細については、読み取りプールの制限事項 をご覧ください。
gcloud
gcloud CLI のインストールと使用開始については、gcloud CLI をインストールする をご覧ください。Cloud Shell の起動については、Cloud Shell を使用する をご覧ください。
次の gcloud beta sql instances patch
コマンドを使用して、リードプールをスケーリングします。
gcloud beta sql instances patch READ_POOL_NAME \
--node-count= NODE_COUNT
次のように置き換えます。
READ_POOL_NAME : 読み取りプールの名前。
NODE_COUNT : 読み取りプールに必要な読み取りプールノードの数。1
~20
の任意の数値を指定します。
REST v1
patch
メソッドを使用して、読み取りプール内の読み取りプール ノードの数を変更することで、読み取りプールをスケールインまたはスケールアウトします。
リクエストのデータを使用する前に、次のように置き換えます。
PROJECT : 読み取りプールが存在するプロジェクトの名前。
NODE_COUNT : 読み取りプールに必要な読み取りプールノードの数。1
~20
の任意の数値を指定します。
HTTP メソッドと URL:
PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT /instances/READ_POOL_NAME
リクエストの本文(JSON):
{
"nodeCount": NODE_COUNT
}
リクエストを送信するには、次のいずれかのオプションを展開します。
curl(Linux、macOS、Cloud Shell)
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d @request.json \ "https://sqladmin.googleapis.com/v1/projects/PROJECT /instances/READ_POOL_NAME "
PowerShell(Windows)
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method PATCH ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -InFile request.json ` -Uri "https://sqladmin.googleapis.com/v1/projects/PROJECT /instances/READ_POOL_NAME " | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
レスポンス
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT /instances/READ_POOL_NAME ",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2020-01-21T22:43:37.981Z",
"operationType": "UPDATE",
"name": "OPERATION_ID ",
"targetId": "READ_POOL_NAME ",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT /operations/OPERATION_ID ",
"targetProject": "PROJECT "
}
REST v1beta4
patch
メソッドを使用して、読み取りプール内の読み取りプール ノードの数を変更することで、読み取りプールをスケールインまたはスケールアウトします。
リクエストのデータを使用する前に、次のように置き換えます。
PROJECT : 読み取りプールが存在するプロジェクトの名前。
NODE_COUNT : 読み取りプールに必要な読み取りプールノードの数。1
~20
の任意の数値を指定します。
HTTP メソッドと URL:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT /instances/READ_POOL_NAME
リクエストの本文(JSON):
{
"nodeCount": NODE_COUNT
}
リクエストを送信するには、次のいずれかのオプションを展開します。
curl(Linux、macOS、Cloud Shell)
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d @request.json \ "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT /instances/READ_POOL_NAME "
PowerShell(Windows)
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method PATCH ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -InFile request.json ` -Uri "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT /instances/READ_POOL_NAME " | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
レスポンス
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT /instances/READ_POOL_NAME INSTANCE_ID ",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2020-01-21T22:43:37.981Z",
"operationType": "UPDATE",
"name": "OPERATION_ID ",
"targetId": "READ_POOL_NAME ",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT /operations/OPERATION_ID ",
"targetProject": "PROJECT "
}
読み取りプール構成を編集する
リードプールの構成を編集する手順は次のとおりです。詳細については、インスタンスの設定について とインスタンスを編集する をご覧ください。
gcloud
gcloud CLI のインストールと使用開始については、gcloud CLI をインストールする をご覧ください。Cloud Shell の起動については、Cloud Shell を使用する をご覧ください。
次の gcloud beta sql instances patch
コマンドを使用して、マシンタイプを変更するなど、読み取りプールを垂直方向にスケーリングします。
gcloud beta sql instances patch READ_POOL_NAME \
--tier= TIER
次のように置き換えます。
READ_POOL_NAME : 読み取りプールの名前。
TIER : 読み取りプールの各ノードに適用するマシンタイプ(db-perf-optimized-N-8
など)。
REST v1
読み取りプール ノードの構成を変更するには、
patch
メソッドを使用します。設定は、読み取りプール内のすべての読み取りプール ノードに一律に適用されます。
リクエストのデータを使用する前に、次のように置き換えます。
PROJECT : 読み取りプールが存在するプロジェクトの名前。
TIER : 読み取りプールの各ノードに使用するマシンタイプ(db-perf-optimized-N-4
など)。
READ_POOL_NAME : 読み取りプールの名前(my-read-pool
など)。
HTTP メソッドと URL:
PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT /instances/READ_POOL_NAME
リクエストの本文(JSON):
{
"settings": {
"tier": "TIER "
}
}
リクエストを送信するには、次のいずれかのオプションを展開します。
curl(Linux、macOS、Cloud Shell)
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d @request.json \ "https://sqladmin.googleapis.com/v1/projects/PROJECT /instances/READ_POOL_NAME "
PowerShell(Windows)
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method PATCH ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -InFile request.json ` -Uri "https://sqladmin.googleapis.com/v1/projects/PROJECT /instances/READ_POOL_NAME " | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
レスポンス
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT /instances/READ_POOL_NAME ",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2020-01-21T22:43:37.981Z",
"operationType": "UPDATE",
"name": "OPERATION_ID ",
"targetId": "READ_POOL_NAME ",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT /operations/OPERATION_ID ",
"targetProject": "PROJECT "
}
REST v1beta4
読み取りプール ノードの構成を変更するには、
patch
メソッドを使用します。設定は、読み取りプール内のすべての読み取りプール ノードに一律に適用されます。
リクエストのデータを使用する前に、次のように置き換えます。
PROJECT : 読み取りプールが存在するプロジェクトの名前。
TIER : 読み取りプールの各ノードに使用するマシンタイプ(db-perf-optimized-N-4
など)。
READ_POOL_NAME : 読み取りプールの名前(my-read-pool
など)。
HTTP メソッドと URL:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT /instances/READ_POOL_NAME
リクエストの本文(JSON):
{
"settings": {
"tier": "TIER "
}
}
リクエストを送信するには、次のいずれかのオプションを展開します。
curl(Linux、macOS、Cloud Shell)
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d @request.json \ "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT /instances/READ_POOL_NAME "
PowerShell(Windows)
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method PATCH ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -InFile request.json ` -Uri "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT /instances/READ_POOL_NAME " | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
レスポンス
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT /instances/READ_POOL_NAME ",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2020-01-21T22:43:37.981Z",
"operationType": "UPDATE",
"name": "OPERATION_ID ",
"targetId": "READ_POOL_NAME ",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT /operations/OPERATION_ID ",
"targetProject": "PROJECT "
}
読み取りプールに接続する
読み取りプールに接続する方法は多数あります。次の手順では、同じ VPC ネットワークに VM を作成して接続元として使用し、プライベート IP アドレスを使用して読み取りプールに接続する方法を示します。
Cloud SQL インスタンスへの接続を構成するその他の方法については、Cloud SQL 接続について をご覧ください。通常、接続方法では、まずインスタンスの IP アドレスまたは接続名を取得する必要があります。これについては、読み取りプール情報を確認する で説明しています。読み取りプールは、他の Cloud SQL インスタンスで使用可能な接続方法のほとんどをサポートしていますが、制限事項 がいくつかあります。
Cloud SQL Auth Proxy または Cloud SQL コネクタを使用して接続する場合は、最新バージョンに更新してください。読み取りプールをサポートするために必要な最小バージョンは次のとおりです。
Cloud SQL Auth Proxy: v2.15.2
Cloud SQL Python コネクタ: v1.18.0
Cloud SQL Go コネクタ: v1.16.0
Cloud SQL Node コネクタ: v1.7.0
Cloud SQL Java コネクタ: v1.24.0
読み取りプールを削除する
gcloud
gcloud CLI のインストールと使用開始については、gcloud CLI をインストールする をご覧ください。Cloud Shell の起動については、Cloud Shell を使用する をご覧ください。
次の gcloud sql instances delete
コマンドを使用して、リードプールを削除します。
gcloud sql instances delete READ_POOL_NAME
次のように置き換えます。
READ_POOL_NAME : 削除する読み取りプールの名前。
REST v1
読み取りプールを削除するには、
delete
メソッドを使用します。
リクエストのデータを使用する前に、次のように置き換えます。
PROJECT : 読み取りプールが存在するプロジェクトの名前。
READ_POOL_NAME : 読み取りプールの名前(my-read-pool
など)。
HTTP メソッドと URL:
DELETE https://sqladmin.googleapis.com/v1/projects/PROJECT /instances/READ_POOL_NAME
リクエストを送信するには、次のいずれかのオプションを展開します。
curl(Linux、macOS、Cloud Shell)
次のコマンドを実行します。
curl -X DELETE \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://sqladmin.googleapis.com/v1/projects/PROJECT /instances/READ_POOL_NAME "
PowerShell(Windows)
次のコマンドを実行します。
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method DELETE ` -Headers $headers ` -Uri "https://sqladmin.googleapis.com/v1/projects/PROJECT /instances/READ_POOL_NAME " | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
レスポンス
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT /instances/READ_POOL_NAME ",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2020-01-21T22:43:37.981Z",
"operationType": "DELETE",
"name": "OPERATION_ID ",
"targetId": "READ_POOL_NAME ",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT /operations/OPERATION_ID ",
"targetProject": "PROJECT "
}
REST v1beta4
読み取りプールを削除するには、
delete
メソッドを使用します。
リクエストのデータを使用する前に、次のように置き換えます。
PROJECT : 読み取りプールが存在するプロジェクトの名前。
READ_POOL_NAME : 読み取りプールの名前(my-read-pool
など)。
HTTP メソッドと URL:
DELETE https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT /instances/READ_POOL_NAME
リクエストを送信するには、次のいずれかのオプションを展開します。
curl(Linux、macOS、Cloud Shell)
次のコマンドを実行します。
curl -X DELETE \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT /instances/READ_POOL_NAME "
PowerShell(Windows)
次のコマンドを実行します。
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method DELETE ` -Headers $headers ` -Uri "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT /instances/READ_POOL_NAME " | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
レスポンス
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT /instances/READ_POOL_NAME ",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2020-01-21T22:43:37.981Z",
"operationType": "DELETE",
"name": "OPERATION_ID ",
"targetId": "READ_POOL_NAME ",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT /operations/OPERATION_ID ",
"targetProject": "PROJECT "
}
次のステップ
フィードバックを送信
特に記載のない限り、このページのコンテンツはクリエイティブ・コモンズの表示 4.0 ライセンス により使用許諾されます。コードサンプルは Apache 2.0 ライセンス により使用許諾されます。詳しくは、Google Developers サイトのポリシー をご覧ください。Java は Oracle および関連会社の登録商標です。
最終更新日 2025-07-09 UTC。
ご意見をお聞かせください
[[["わかりやすい","easyToUnderstand","thumb-up"],["問題の解決に役立った","solvedMyProblem","thumb-up"],["その他","otherUp","thumb-up"]],[["わかりにくい","hardToUnderstand","thumb-down"],["情報またはサンプルコードが不正確","incorrectInformationOrSampleCode","thumb-down"],["必要な情報 / サンプルがない","missingTheInformationSamplesINeed","thumb-down"],["翻訳に関する問題","translationIssue","thumb-down"],["その他","otherDown","thumb-down"]],["最終更新日 2025-07-09 UTC。"],[],[]]