A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://developers.google.com/sql/docs/mysql/upgrade-cloud-sql-instance-to-enterprise-plus-in-place below:

Upgrade an instance to Cloud SQL Enterprise Plus edition by using in-place upgrade | Cloud SQL for MySQL

Note: This page contains features related to Cloud SQL editions. For more information about Cloud SQL editions, see Introduction to Cloud SQL editions.

This page shows you how to use the in-place upgrade method to upgrade a Cloud SQL Enterprise edition instance to Cloud SQL Enterprise Plus edition. Additionally, it also describes the procedure to switch a Cloud SQL Enterprise Plus edition instance to Cloud SQL Enterprise edition.

Upgrading to Cloud SQL Enterprise Plus edition provides you with several benefits and performance enhancements. For more information, see Introduction to Cloud SQL for MySQL editions.

To enable these enhancements for your existing Cloud SQL Enterprise edition instances, you must upgrade them to Cloud SQL Enterprise Plus edition. The upgrade process takes a few minutes to complete and has near-zero downtime. Switching to Cloud SQL Enterprise edition can take up to 60 seconds of downtime.

Additionally, this upgrade process doesn't require you to change the endpoints that your applications connect to.

Before you begin Check the storage location of the transaction logs used for PITR

All Cloud SQL Enterprise Plus edition instances are automatically enabled with point-in-time recovery (PITR). If the Cloud SQL Enterprise edition instance that you want to upgrade stores the binary logs used for PITR on disk, then the upgrade process to Cloud SQL Enterprise Plus edition switches the storage location of the binary logs from disk to Cloud Storage.

Before you upgrade to Cloud SQL Enterprise Plus edition, check whether your Cloud SQL Enterprise edition instance will undergo the storage location switch for the binary logs used for PITR. For more information and instructions on how to check your instance, see Check the storage location of transaction logs used for PITR.

For more information about switching the transaction log storage location in the upgrade process, see Storage location of transaction logs used for PITR.

Upgrade an instance to Cloud SQL Enterprise Plus edition

Use the procedure in this section to upgrade a Cloud SQL Enterprise edition instance to Cloud SQL Enterprise Plus edition.

Note: Cloud SQL enables data cache for your instance by default during the upgrade process. Console
  1. In the Google Cloud console, go to the Cloud SQL Instances page.

    Go to Cloud SQL Instances

  2. To open the Overview page of an instance, click the instance name.
  3. Click Edit.
  4. In the Choose a Cloud SQL edition section, click Upgrade.
  5. In the Upgrade to Enterprise Plus panel, enter your instance ID and then click Upgrade edition.

Alternatively, you can also upgrade an instance by clicking Upgrade in the Configuration section of the instance Overview page.

gcloud

The following code sample shows how to upgrade your instance to Cloud SQL Enterprise Plus edition:

gcloud sql instances patch INSTANCE_ID \
  --edition=enterprise-plus \
  --tier=MACHINE_TYPE \
  --project=PROJECT_ID
Note: Cloud SQL enables data cache for your instance by default during the upgrade process. You can disable it by adding the --no-enable-data-cache flag.

Replace the following:

REST

The following command upgrades your instance to Cloud SQL Enterprise edition and triggers a restart operation.

Before using any of the request data, make the following replacements:

Note: Cloud SQL enables data cache for your instance by default during the upgrade process. You can disable it by setting the dataCacheEnabled parameter as false.

HTTP method and URL:

PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID

Request JSON body:

{
  "settings": {
      "tier": "MACHINE_TYPE",
      "edition": "ENTERPRISE_PLUS",
      "dataCacheConfig": {
        "dataCacheEnabled": true
      },
  }
}

To send your request, expand one of these options:

curl (Linux, macOS, or Cloud Shell) Note: The following command assumes that you have logged in to the gcloud CLI with your user account by running gcloud init or gcloud auth login , or by using Cloud Shell, which automatically logs you into the gcloud CLI . You can check the currently active account by running gcloud auth list.

Save the request body in a file named request.json, and execute the following command:

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_ID/instances/INSTANCE_ID"
PowerShell (Windows) Note: The following command assumes that you have logged in to the gcloud CLI with your user account by running gcloud init or gcloud auth login . You can check the currently active account by running gcloud auth list.

Save the request body in a file named request.json, and execute the following command:

$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_ID/instances/INSTANCE_ID" | Select-Object -Expand Content

You should receive a JSON response similar to the following:

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2020-01-16T02:32:12.281Z",
  "operationType": "UPDATE",
  "name": "OPERATION_ID",
  "targetId": "INSTANCE_ID",
  "selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID",
  "targetProject": "PROJECT_ID"
}
REST v1beta4

The following command upgrades your instance to Cloud SQL Enterprise edition and triggers a restart operation.

Before using any of the request data, make the following replacements:

Note: Cloud SQL enables data cache for your instance by default during the upgrade process. You can disable it by setting the dataCacheEnabled parameter as false.

HTTP method and URL:

PATCH https://sqladmin.googleapis.com/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID

Request JSON body:

{
  "settings": {
      "tier": "MACHINE_TYPE",
      "edition": "ENTERPRISE_PLUS",
      "dataCacheConfig": {
        "dataCacheEnabled": true
      },
  }
}

To send your request, expand one of these options:

curl (Linux, macOS, or Cloud Shell) Note: The following command assumes that you have logged in to the gcloud CLI with your user account by running gcloud init or gcloud auth login , or by using Cloud Shell, which automatically logs you into the gcloud CLI . You can check the currently active account by running gcloud auth list.

Save the request body in a file named request.json, and execute the following command:

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/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID"
PowerShell (Windows) Note: The following command assumes that you have logged in to the gcloud CLI with your user account by running gcloud init or gcloud auth login . You can check the currently active account by running gcloud auth list.

Save the request body in a file named request.json, and execute the following command:

$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/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID" | Select-Object -Expand Content

You should receive a JSON response similar to the following:

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2020-01-16T02:32:12.281Z",
  "operationType": "UPDATE",
  "name": "OPERATION_ID",
  "targetId": "INSTANCE_ID",
  "selfLink": "https://sqladmin.googleapis.com/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID",
  "targetProject": "PROJECT_ID"
}
Storage location of transaction logs used for PITR

If your Cloud SQL Enterprise edition instance stores transaction logs for PITR on disk, then starting the upgrade process to Cloud SQL Enterprise Plus edition switches the storage location of these logs to Cloud Storage.

The following conditions apply to the location switch process:

Cloud SQL Enterprise Plus edition backup and log storage defaults

After the switch to Cloud Storage completes for an instance, Cloud SQL still retains copies of binary logs on disk for replication purposes. Storing binary logs on disk can be useful if you want to browse binary logs with the

mysqlbinlog

utility.

If you configured the expire_logs_days and binlog_expire_logs_seconds flags on your instance before the upgrade, then the configured values remain intact.

After the switch, since the binary logs that are used to perform PITR are now stored in Cloud Storage, ensure that the values of the flags reflect the retention of transaction logs on disk that you expect. Cloud SQL only retains logs on disk for the minimum value of one of the following:

If you want to save disk space, then after the upgrade has completed, configure the value of the expire_logs_days or binlog_expire_logs_seconds flag to the equivalent of 1 day so you can reduce your allocated disk size and disk storage costs. For more information about transaction log storage and PITR, see Log storage for PITR.

Note: If your instance has a large number of binary logs on disk and you want to save disk space, then we recommend that you reduce the value of the expire_logs_days or binlog_expire_logs_seconds flag slowly. For example, reduce the value by the equivalent of 1 day each day over several days to avoid purging the binary logs all at once, to prevent any performance impacts.

After the upgrade to Cloud SQL Enterprise Plus edition completes, the default transaction log retention period for all upgraded instances is increased to 14 days. For this increase, and any other increase that you configure for the transaction log retention period, it takes up to the new and increased value to reach the full retention window of PITR. For example, if the old value for transaction log retention days is 7 and the new value is increased to 14, then the window for PITR for the first 7 days after the upgrade is only 7 days. On the 8th day, the window for PITR becomes 8 days, on the 9th day it becomes 9 days, until the retention window is finally increased to 14 days on the 14th day.

In addition, the default number of automated backups is increased from 8 to 15.

If you upgrade to Cloud SQL Enterprise Plus edition after doing a major version upgrade, then you won't be able to perform PITR to a point-in-time that occurs prior to the major version upgrade. This limitation applies even if your retention period covers that time period. You can restore your instance to a point-in-time after you started the major version upgrade.

Change to Cloud SQL Enterprise edition Note: Cloud SQL disables the data cache automatically when you change an instance from Cloud SQL Enterprise Plus edition to Cloud SQL Enterprise edition. Console
  1. In the Google Cloud console, go to the Cloud SQL Instances page.

    Go to Cloud SQL Instances

  2. To open the Overview page of an instance, click the instance name.
  3. Click Edit.
  4. In the Choose a Cloud SQL edition section, click Switch to Enterprise.
  5. In the Switch to Enterprise panel, enter your instance ID and then click Switch edition.

Alternatively, you can also change to Cloud SQL Enterprise edition by clicking Switch to Enterprise in Configuration section of the instance Overview page.

gcloud

The following code sample shows how to change your instance to Cloud SQL Enterprise edition:

gcloud sql instances patch INSTANCE_ID \
  --edition=enterprise \
  --tier=MACHINE_TYPE \
  --project=PROJECT_ID
Replace the following: REST

The following command changes your instance to Cloud SQL Enterprise edition and triggers a restart operation.

Before using any of the request data, make the following replacements:

HTTP method and URL:

PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID

Request JSON body:

{
  "settings": {
      "tier": "MACHINE_TYPE",
      "edition": "ENTERPRISE"
  }
}

To send your request, expand one of these options:

curl (Linux, macOS, or Cloud Shell) Note: The following command assumes that you have logged in to the gcloud CLI with your user account by running gcloud init or gcloud auth login , or by using Cloud Shell, which automatically logs you into the gcloud CLI . You can check the currently active account by running gcloud auth list.

Save the request body in a file named request.json, and execute the following command:

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_ID/instances/INSTANCE_ID"
PowerShell (Windows) Note: The following command assumes that you have logged in to the gcloud CLI with your user account by running gcloud init or gcloud auth login . You can check the currently active account by running gcloud auth list.

Save the request body in a file named request.json, and execute the following command:

$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_ID/instances/INSTANCE_ID" | Select-Object -Expand Content

You should receive a JSON response similar to the following:

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2020-01-16T02:32:12.281Z",
  "operationType": "UPDATE",
  "name": "OPERATION_ID",
  "targetId": "INSTANCE_ID",
  "selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID",
  "targetProject": "PROJECT_ID"
}
REST v1beta4

The following command changes your instance to Cloud SQL Enterprise edition and triggers a restart operation.

Before using any of the request data, make the following replacements:

HTTP method and URL:

PATCH https://sqladmin.googleapis.com/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID

Request JSON body:

{
  "settings": {
      "tier": "MACHINE_TYPE",
      "edition": "ENTERPRISE"
  }
}

To send your request, expand one of these options:

curl (Linux, macOS, or Cloud Shell) Note: The following command assumes that you have logged in to the gcloud CLI with your user account by running gcloud init or gcloud auth login , or by using Cloud Shell, which automatically logs you into the gcloud CLI . You can check the currently active account by running gcloud auth list.

Save the request body in a file named request.json, and execute the following command:

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/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID"
PowerShell (Windows) Note: The following command assumes that you have logged in to the gcloud CLI with your user account by running gcloud init or gcloud auth login . You can check the currently active account by running gcloud auth list.

Save the request body in a file named request.json, and execute the following command:

$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/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID" | Select-Object -Expand Content

You should receive a JSON response similar to the following:

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2020-01-16T02:32:12.281Z",
  "operationType": "UPDATE",
  "name": "OPERATION_ID",
  "targetId": "INSTANCE_ID",
  "selfLink": "https://sqladmin.googleapis.com/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID",
  "targetProject": "PROJECT_ID"
}
Cloud SQL Enterprise edition backup and log storage defaults

Changing to Cloud SQL Enterprise edition doesn't switch the storage location of the transaction logs used for PITR. If your Cloud SQL Enterprise Plus edition instance stores its transaction logs for PITR in Cloud Storage, then the logs remain in Cloud Storage. However, instead of storing 14 days of transaction logs for PITR by default, the default is changed to 7 days. Backup configuration is not changed.

Generate the write endpoint automatically

A write endpoint is a global domain name service (DNS) name that resolves to the IP address of the current primary Cloud SQL instance automatically. This endpoint redirects incoming connections to the new primary instance automatically in case of a replica failover operation. You can use the write endpoint in a SQL connection string instead of an IP address. By using a write endpoint, you can avoid having to make application connection changes when a region outage occurs.

If you upgrade your instance that has a private IP address on the new network architecture to Cloud SQL Enterprise Plus edition, and you enable the DNS API for your Google Cloud project, then Cloud SQL generates the write endpoint automatically for you. However, the server certificate that's associated with the instance won't have the write endpoint (global DNS name) added to it. Therefore, if you want to verify the DNS name, then you must rotate the certificate. After the rotation of this certificate is complete, Cloud SQL adds the DNS name to the certificate. You can use the DNS name for server identity verification.

What's next

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4