이 페이지에서는 기존 Cloud SQL 인스턴스를 수정하는 방법을 설명합니다.
인스턴스를 만든 후에는 인스턴스 실행 중에 수정하여 해당 설정을 변경할 수 있습니다. 인스턴스 설정 및 설정 변경이 인스턴스에 미치는 영향에 대한 자세한 내용은 인스턴스 설정을 참조하세요.
SQL Server용 Cloud SQL을 Microsoft Active Directory용 관리형 서비스(관리형 Microsoft AD)와 통합할 수 있습니다. 이 통합에는 인스턴스별 수준에서 관리형 Microsoft AD 도메인을 조인하거나 종료하는 기능이 포함됩니다. 자세한 내용은 Cloud SQL의 관리형 Microsoft AD 개요를 참조하세요.
또한 데이터베이스 감사를 사용 설정 또는 사용 중지할 수 있습니다.
인스턴스 수정
대부분의 수정 사항은 인스턴스 실행 중에만 적용할 수 있습니다.
콘솔
-
Google Cloud 콘솔에서 Cloud SQL 인스턴스 페이지로 이동합니다.
- 인스턴스의 개요 페이지를 열려면 인스턴스 이름을 클릭합니다.
- 수정을 클릭합니다.
- 인스턴스 맞춤설정 섹션에서 구성 옵션 표시 메뉴가 나타나면 클릭합니다.
인스턴스에서 수정 가능한 설정을 업데이트합니다.
인스턴스 설정에 대해 자세히 알아보기
- 저장을 클릭합니다.
gcloud
이 명령어는 백업 시작 시간을 수정합니다.
gcloud sql instances patch INSTANCE_NAME \ --backup-start-time 16:00
패치가 재시작이 필요한 값을 수정하면 변경을 진행하거나 취소하라는 메시지가 표시됩니다.
인스턴스 구성 플래그에 관한 자세한 내용은 gcloud sql instances patch를 참조하세요.
REST v1
이 명령어를 사용하면 백업 시작 시간을 수정할 수 있습니다.
요청 데이터를 사용하기 전에 다음을 바꿉니다.
- PROJECT_ID: 프로젝트 ID
- INSTANCE_ID: 인스턴스 ID
- PRIVATE_NETWORK: 비공개 연결을 만들기 위해 추가하거나 선택하는 네트워크
HTTP 메서드 및 URL:
PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID
JSON 요청 본문:
{
"settings": {
"backupConfiguration": {
"startTime": "16:00",
"enabled": true,
"binaryLogEnabled": true
}
}
"ipConfiguration": {
"privateNetwork": "PRIVATE_NETWORK",
"authorizedNetworks": [],
"ipv4Enabled": false,
}
}
요청을 보내려면 다음 옵션 중 하나를 펼칩니다.
다음과 비슷한 JSON 응답이 표시됩니다.
{
"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 API 요청이 생성되는 방식을 확인하려면 instances:patch 페이지의 API 탐색기를 참조하세요.REST v1beta4
이 명령어를 사용하면 백업 시작 시간을 수정할 수 있습니다.
요청 데이터를 사용하기 전에 다음을 바꿉니다.
- PROJECT_ID: 프로젝트 ID
- INSTANCE_ID: 인스턴스 ID
- PRIVATE_NETWORK: 비공개 연결을 만들기 위해 추가하거나 선택하는 네트워크
HTTP 메서드 및 URL:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID
JSON 요청 본문:
{
"settings": {
"backupConfiguration": {
"startTime": "16:00",
"enabled": true,
"binaryLogEnabled": true
}
}
"ipConfiguration": {
"privateNetwork": "PRIVATE_NETWORK",
"authorizedNetworks": [],
"ipv4Enabled": false,
}
}요청을 보내려면 다음 옵션 중 하나를 펼칩니다.
다음과 비슷한 JSON 응답이 표시됩니다.
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/sql/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/sql/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID",
"targetProject": "PROJECT_ID"
}
패치가 재시작이 필요한 값을 수정하면 변경을 진행하거나 취소하라는 메시지가 표시됩니다.
이 작업과 관련된 기본 REST API 요청이 생성되는 방식을 확인하려면 instances:patch 페이지의 API 탐색기를 참조하세요.Private Service Connect가 사용 설정된 인스턴스 수정
gcloud CLI 또는 API를 사용하여 Private Service Connect가 사용 설정된 인스턴스를 업데이트할 수 있습니다. 예를 들어 다음과 같은 목적으로 인스턴스와 연결된 프로젝트를 업데이트할 수 있습니다.
- Private Service Connect 엔드포인트에서 Cloud SQL 인스턴스로의 연결을 허용합니다.
- 허용된 프로젝트 목록에서 프로젝트를 삭제합니다. 삭제된 프로젝트의 경우 기존 Private Service Connect 엔드포인트에 대한 연결은 계속 작동하지만 새 엔드포인트는 허용되지 않습니다.
gcloud
Private Service Connect를 사용할 수 있는 프로젝트를 업데이트하려면 gcloud sql instances patch 명령어를 사용합니다.
gcloud sql instances patch INSTANCE_NAME \ --project=PROJECT_ID \ --allowed-psc-projects=ALLOWED_PROJECTS
다음을 바꿉니다.
- INSTANCE_NAME: VPC 네트워크의 Private Service Connect 엔드포인트가 연결할 수 있는 Cloud SQL 인스턴스의 이름입니다.
- PROJECT_ID: VPC 네트워크의 Private Service Connect 엔드포인트가 연결할 수 있는 인스턴스가 포함된 Google Cloud 프로젝트의 ID 또는 프로젝트 번호입니다.
- ALLOWED_PROJECTS: 허용되는 프로젝트 ID 또는 숫자의 목록(쉼표로 구분). 이러한 프로젝트는 이미 Private Service Connect를 사용하도록 구성된 프로젝트를 재정의합니다. 프로젝트가 이 목록에 포함되지 않은 경우 이를 사용하여 인스턴스를 만들고 Private Service Connect를 사용 설정할 수 없습니다.
다음 예시에서는 두 프로젝트(98765 및 87654)가 Private Service Connect 엔드포인트에서 12345 프로젝트에 포함된 myinstance Cloud SQL 인스턴스로 연결할 수 있습니다.
gcloud sql instances patch myinstance \ --project=12345 \ --allowed-psc-projects='98765','87654'
허용되는 프로젝트를 모두 삭제하려면 gcloud sql instances patch 명령어와 --clear-allowed-psc-projects 플래그를 사용합니다.
gcloud sql instances patch INSTANCE_NAME \ --project=PROJECT_ID \ --clear-allowed-psc-projects
이 플래그는 실수로 프로젝트가 허용되지 않도록 합니다.
REST v1
요청 데이터를 사용하기 전에 다음을 바꿉니다.
- PROJECT_ID: VPC 네트워크의 Private Service Connect 엔드포인트가 연결할 수 있는 인스턴스가 포함된 Google Cloud 프로젝트의 ID 또는 프로젝트 번호입니다.
- INSTANCE_NAME: VPC 네트워크의 Private Service Connect 엔드포인트가 연결할 수 있는 Cloud SQL 인스턴스의 이름입니다.
- ALLOWED_PROJECTS: 허용되는 프로젝트 ID 또는 숫자의 목록(쉼표로 구분). 이러한 프로젝트는 이미 Private Service Connect를 사용하도록 구성된 프로젝트를 재정의합니다. 프로젝트가 이 목록에 포함되지 않은 경우 이를 사용하여 인스턴스를 만들고 Private Service Connect를 사용 설정할 수 없습니다.
HTTP 메서드 및 URL:
PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_NAME
JSON 요청 본문:
{
"kind": "sql#instance",
"name": "INSTANCE_NAME",
"project": "PROJECT_ID",
"settings": {
"ipConfiguration": {
"pscConfig": {
"allowedConsumerProjects": [ALLOWED_PROJECTS]
}
},
"kind": "sql#settings"
}
}
요청을 보내려면 다음 옵션 중 하나를 펼칩니다.
다음과 비슷한 JSON 응답이 표시됩니다.
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_NAME",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2020-01-16T02:32:12.281Z",
"operationType": "UPDATE",
"name": "OPERATION_ID",
"targetId": "INSTANCE_NAME",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID",
"targetProject": "PROJECT_ID"
}
허용되는 모든 프로젝트를 삭제하려면 clear-allowed-psc-projects 플래그를 사용합니다. 이 플래그는 실수로 프로젝트가 허용되지 않도록 합니다.
REST v1beta4
요청 데이터를 사용하기 전에 다음을 바꿉니다.
- PROJECT_ID: VPC 네트워크의 Private Service Connect 엔드포인트가 연결할 수 있는 인스턴스가 포함된 Google Cloud 프로젝트의 ID 또는 프로젝트 번호입니다.
- INSTANCE_NAME: VPC 네트워크의 Private Service Connect 엔드포인트가 연결할 수 있는 Cloud SQL 인스턴스의 이름입니다.
- ALLOWED_PROJECTS: 허용되는 프로젝트 ID 또는 숫자의 목록(쉼표로 구분). 이러한 프로젝트는 이미 Private Service Connect를 사용하도록 구성된 프로젝트를 재정의합니다. 프로젝트가 이 목록에 포함되지 않은 경우 이를 사용하여 인스턴스를 만들고 Private Service Connect를 사용 설정할 수 없습니다.
HTTP 메서드 및 URL:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_NAME
JSON 요청 본문:
{
"kind": "sql#instance",
"name": "INSTANCE_NAME",
"project": "PROJECT_ID",
"settings": {
"ipConfiguration": {
"pscConfig": {
"allowedConsumerProjects": [ALLOWED_PROJECTS]
}
},
"kind": "sql#settings"
}
}
요청을 보내려면 다음 옵션 중 하나를 펼칩니다.
다음과 비슷한 JSON 응답이 표시됩니다.
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_NAME",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2020-01-16T02:32:12.281Z",
"operationType": "UPDATE",
"name": "OPERATION_ID",
"targetId": "INSTANCE_NAME",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID",
"targetProject": "PROJECT_ID"
}
허용되는 모든 프로젝트를 삭제하려면 clear-allowed-psc-projects 플래그를 사용합니다. 이 플래그는 실수로 프로젝트가 허용되지 않도록 합니다.
인스턴스의 서버 CA 모드 수정
공유 CA (GOOGLE_MANAGED_CAS_CA) 또는 고객 관리 CA (CUSTOMER_MANAGED_CAS_CA) 옵션을 사용하도록 인스턴스의 서버 인증 기관 (CA) 모드를 변경할 수 있습니다.
기본 구성인 인스턴스별 CA (GOOGLE_MANAGED_INTERNAL_CA) 옵션을 사용하도록 인스턴스를 변경할 수 없습니다.
다양한 서버 CA 모드 옵션에 대한 자세한 내용은 인증 기관 (CA) 계층 구조를 참고하세요.
공유 CA 또는 고객 관리 CA를 사용하도록 인스턴스를 업데이트하기 전에 다음을 수행하세요.
- 공유 CA 또는 고객 관리 CA를 사용하도록 구성된 Cloud SQL 인스턴스에 대한 연결을 지원하지 않는 서비스 목록을 검토합니다. Google Cloud 배포에 서비스 사용이 필요한 경우 업데이트를 지연해야 할 수 있습니다.
- Cloud SQL 인증 프록시 또는 Cloud SQL 언어 커넥터를 사용하여 인스턴스에 연결하는 경우 최소 필수 버전을 실행하고 있는지 확인합니다. 공유 CA의 경우 Cloud SQL 인증 프록시 버전 2.13.0 이상을 사용해야 하고 고객 관리 CA의 경우 Cloud SQL 인증 프록시 버전 2.14.3 이상을 사용해야 합니다. Cloud SQL 언어 커넥터의 최소 필수 버전은 Cloud SQL 언어 커넥터 요구사항을 참고하세요.
- 공유 CA로 전환하는 경우 전역 및 리전 CA 번들을 다운로드하여 데이터베이스 클라이언트에 복사하고 이러한 CA를 신뢰하도록 합니다. 서버 CA 모드 구성을 전환하기 전에 인증서를 설정하면 데이터베이스 클라이언트의 잠재적인 중단을 방지할 수 있습니다.
- 고객 관리 CA로 전환하는 경우 다음을 실행하세요.
- CA 풀을 이미 만들었고 서비스 계정에 CA 풀에 대한 액세스 권한을 제공했는지 확인합니다.
- CA 풀에 CA가 하나 이상 있는지 확인합니다.
- 업데이트 후 중단을 방지하려면 고객 관리 CA에서 인증서를 다운로드하고 CA를 신뢰하도록 데이터베이스 클라이언트를 설정하세요.
콘솔
Google Cloud 콘솔을 사용하여 인스턴스의 서버 CA 모드를 업데이트할 수 없습니다.
인스턴스의 서버 CA 모드를 업데이트하려면 대신 gcloud sql instances patch 명령어를 사용하세요. 변경한 후 인스턴스를 보면 해당 구성이 Google Cloud 콘솔에 표시됩니다.
gcloud
인스턴스별 CA에서 공유 CA를 사용하도록 인스턴스를 업데이트하려면 다음 명령어를 실행하세요.
gcloud sql instances patch INSTANCE_NAME \ --server-ca-mode=GOOGLE_MANAGED_CAS_CA
INSTANCE_NAME: 패치를 적용할 Cloud SQL 인스턴스의 이름입니다.
--server-ca-mode 플래그에 GOOGLE_MANAGED_CAS_CA을 지정합니다.
인스턴스별 CA 또는 공유 CA에서 고객 관리 CA로 인스턴스를 업데이트하려면 고객 관리 CA 사용을 참고하세요.
REST
인스턴스별 CA에서 공유 CA를 사용하도록 인스턴스를 업데이트하려면 instances.patch 메서드를 사용하고 다음 속성을 지정합니다.
요청 데이터를 사용하기 전에 다음을 바꿉니다.
PROJECT_ID를 Cloud SQL 인스턴스가 있는 프로젝트의 ID로 바꿉니다.INSTANCE_ID을 패치를 적용할 Cloud SQL 인스턴스의 이름으로 바꿉니다.
HTTP 메서드 및 URL:
PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID
JSON 요청 본문:
{
"settings":{
"ipConfiguration":
{
"serverCaMode": "GOOGLE_MANAGED_CAS_CA"
}
}
}
요청을 보내려면 다음 옵션 중 하나를 펼칩니다.
다음과 비슷한 JSON 응답이 표시됩니다.
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2025-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"
}
인스턴스별 CA 또는 공유 CA에서 고객 관리 CA로 인스턴스를 업데이트하려면 고객 관리 CA 사용을 참고하세요.
인스턴스의 커스텀 SAN 수정
IP 주소를 사용하는 대신 커스텀 DNS 이름을 사용하여 Cloud SQL 인스턴스에 연결하려면 인스턴스를 만들 때 커스텀 주체 대체 이름(SAN) 설정을 구성합니다. 커스텀 SAN 설정에 삽입한 커스텀 DNS 이름이 인스턴스 서버 인증서의 SAN 필드에 추가됩니다. 이렇게 하면 호스트 이름 검증을 거쳐 커스텀 DNS 이름을 안전하게 사용할 수 있습니다.
인스턴스의 서버 인증서에 커스텀 SAN을 사용하여 다음 작업을 수행할 수 있습니다.
- 인스턴스에 DNS 이름 추가: 커스텀 SAN 설정에 쉼표로 구분된 최대 3개의 커스텀 DNS 이름 목록을 추가합니다. Cloud SQL은 이러한 이름을 서버 인증서의 SAN 필드에 추가합니다. 단일 인증서로 여러 DNS 이름을 보호할 수 있습니다.
- 인스턴스의 DNS 이름 수정: 인스턴스의 서버 인증서의 SAN 필드에 추가할 커스텀 DNS 이름을 변경합니다.
- 인스턴스에서 DNS 이름 삭제: 인스턴스의 서버 인증서의 SAN 필드에서 모든 커스텀 DNS 이름을 삭제합니다.
gcloud CLI 또는 API를 사용하여 인스턴스의 커스텀 SAN을 수정할 수 있습니다.
gcloud
인스턴스의 커스텀 SAN을 수정하려면 gcloud sql instances patch 명령어를 사용합니다.
gcloud sql instances patch INSTANCE_NAME \ --project=PROJECT_ID \ --custom-subject-alternative-names=DNS_NAMES
다음을 바꿉니다.
- INSTANCE_NAME: DNS 이름을 추가, 수정 또는 삭제할 서버 인증서가 있는 Cloud SQL 인스턴스의 이름
- PROJECT_ID: 인스턴스가 포함된 Google Cloud 프로젝트의 ID 또는 프로젝트 번호
- DNS_NAMES: 인스턴스의 서버 인증서에 추가할 DNS 이름 최대 3개가 쉼표로 구분된 목록
Cloud SQL 인스턴스의 서버 인증서에서 모든 DNS 이름을 삭제하려면
gcloud sql instances patch 명령어와 --clear-custom-subject-alternative-names 플래그를 사용합니다.
gcloud sql instances patch INSTANCE_NAME \ --project=PROJECT_ID \ --clear-custom-subject-alternative-names
이 플래그는 의도치 않게 인증서에 DNS 이름이 추가되지 않도록 합니다.
REST
요청 데이터를 사용하기 전에 다음을 바꿉니다.
- PROJECT_ID: Google Cloud 프로젝트의 ID 또는 프로젝트 번호. 이 프로젝트에는 DNS 이름을 추가, 수정 또는 삭제할 서버 인증서가 포함된 Cloud SQL 인스턴스가 있습니다.
- INSTANCE_NAME: 인스턴스 이름
DNS_NAMES: 인스턴스의 서버 인증서에 추가할 DNS 이름을 쉼표로 구분한 목록으로, 최대 3개까지 추가할 수 있습니다.
인증서에 이미 추가된 DNS 이름이 있고 이 파라미터를 사용하여 다른 DNS 이름을 지정하면 Cloud SQL이 인증서에서 원래 DNS 이름을 삭제합니다.
customSubjectAlternativeNames파라미터에 DNS 이름을 지정하지 않고 대신 null[]값을 제공하면 Cloud SQL에서 인스턴스의 서버 인증서에서 모든 DNS 이름을 삭제합니다. 이렇게 하면 인증서에 의도치 않게 DNS 이름이 추가되지 않습니다.
HTTP 메서드 및 URL:
PATCH https://sqladmin.googleapis.com/sql/v1veta4/projects/PROJECT_ID/instances/INSTANCE_NAME
JSON 요청 본문:
{
"kind": "sql#instance",
"name": "INSTANCE_NAME",
"project": "PROJECT_ID",
"settings": {
"ipConfiguration": {
"customSubjectAlternativeNames": "DNS_NAMES"
},
"kind": "sql#settings"
}
}
요청을 보내려면 다음 옵션 중 하나를 펼칩니다.
다음과 비슷한 JSON 응답이 표시됩니다.
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_NAME",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2020-01-16T02:32:12.281Z",
"operationType": "UPDATE",
"name": "OPERATION_ID",
"targetId": "INSTANCE_NAME",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID",
"targetProject": "PROJECT_ID"
}