Application Design Center에서 Cloud SQL (MySQL) 구성

Cloud SQL (MySQL)은 Google Cloud에서 관계형 데이터베이스를 설정, 유지, 관리할 수 있는 완전 관리형 데이터베이스 서비스입니다. 자세한 내용은 다음을 참조하세요.

이 문서에서는 App Design Center를 사용하여 MySQL용 Cloud SQL 인스턴스를 만들 때 구성할 수 있는 연결 및 매개변수를 설명합니다. 구성 매개변수는 terraform-google-sql-db Terraform 모듈을 기반으로 합니다.

구성요소 연결

다음 표에는 Cloud SQL (MySQL) 인스턴스에 연결할 수 있는 구성요소와 애플리케이션 및 생성된 Terraform 코드의 결과 업데이트가 포함되어 있습니다.

연결된 구성요소

애플리케이션 업데이트

배경 정보

Compute Engine 인스턴스 템플릿

  • Compute Engine 인스턴스는 Cloud SQL (MySQL) 인스턴스에 연결하여 데이터를 읽고 쓸 수 있습니다.
  • Cloud SQL 연결 메타데이터가 Compute Engine 인스턴스 템플릿에 추가됩니다.
  • roles/cloudsql.instanceUserroles/cloudsql.client 역할이 Compute Engine 인스턴스 템플릿 서비스 계정에 추가됩니다.
  • Compute Engine 서비스 계정이 Cloud SQL 인스턴스에 IAM 사용자로 추가됩니다.
Compute Engine에서 연결
Secret Manager
  • Secret Manager 보안 비밀 데이터 필드에는 기본 사용자의 비밀번호가 포함되어 있습니다.
Secret Manager를 사용하여 Cloud SQL에서 보안 비밀 처리

서비스 계정

  • 서비스 계정이 Cloud SQL (MySQL) 인스턴스에 연결할 수 있습니다.
  • roles/cloudsql.instanceUserroles/cloudsql.client 역할이 서비스 계정에 추가됩니다.
  • 서비스 계정 IAM 정보가 Cloud SQL 인스턴스에 추가됩니다.
역할 및 권한

Cloud Run

  • Cloud Run 서비스는 Cloud SQL (MySQL) 인스턴스에서 데이터를 읽고 쓸 수 있습니다.
  • Cloud SQL 연결 메타데이터가 Cloud Run 서비스에 추가됩니다.
  • roles/cloudsql.instanceUserroles/cloudsql.client 역할이 Cloud Run 서비스 계정에 추가됩니다.
  • Cloud Run 서비스 계정이 Cloud SQL 인스턴스에 IAM 사용자로 추가됩니다.
Cloud Run에서 연결

필수 구성 매개변수

템플릿에 Cloud SQL (MySQL) 구성요소가 포함된 경우 배포하기 전에 다음 매개변수를 구성해야 합니다.

매개변수 이름

설명 및 제약 조건 정보

배경 정보

프로젝트 ID

Cloud SQL 리소스를 배포할 프로젝트입니다.

구성요소 구성

이름

name MySQL 인스턴스 만들기

데이터베이스 버전

databaseVersion SqlDatabaseVersion

리전

region 인스턴스 위치 관리

선택적 구성 매개변수

다음 매개변수는 선택사항입니다. 고급 매개변수를 표시하려면 구성 영역에서 고급 필드 표시를 선택합니다.

기능

매개변수 이름

설명 및 제약 조건 정보

배경 정보

영역

gceZone 인스턴스 위치 관리

버전

버전 MySQL용 Cloud SQL 버전 소개

가용성 유형

availabilityType Cloud SQL의 가용성

기본 DB 사용 설정

선택된 경우 기본 데이터베이스를 만듭니다. Db Name 필드에 기본 데이터베이스의 이름을 입력합니다.

Cloud SQL 인스턴스에서 데이터베이스 만들기

기본 사용자 사용 설정

선택된 경우 기본 사용자를 만듭니다. 기본 사용자의 사용자 이름사용자 비밀번호를 입력합니다.

기본 MySQL 사용자

루트 비밀번호

rootPassword

인스턴스가 생성될 때의 초기 루트 비밀번호입니다.

머신

인스턴스의 머신 시리즈와 유형을 선택합니다. 선택한 옵션에 따라 사용 가능한 스토리지 유형 및 구성 옵션이 결정됩니다. 인스턴스를 만든 후에는 머신 시리즈를 변경할 수 없습니다.

머신 시리즈 개요

디스크 자동 크기 조절

디스크 자동 크기 조절

storageAutoResize 스토리지 자동 증가 사용 설정

디스크 자동 크기 조절 한도

storageAutoResizeLimit 저장용량 자동 증가 한도

디스크 크기

dataDiskSizeGb 스토리지 용량

디스크 유형

dataDiskType 스토리지 유형

요금제

pricingPlan SqlPricingPlan

백업 구성

Binary Log Enabled

binaryLogEnabled MySQL 인스턴스 만들기

사용 설정됨

사용 설정됨 MySQL 인스턴스 만들기

시작 시간

start_time

MySQL 인스턴스 만들기

리전

location 맞춤 백업 위치

영역

location 맞춤 백업 위치

트랜잭션 로그 보관 일수

transactionLogRetentionDays 로그 보관 기간

보관된 백업

retainedBackups 로그 및 디스크 사용량

보관 단위

retentionUnit 로그 및 디스크 사용량

IP 구성

승인된 네트워크 키

authorizedNetworks[] 승인된 네트워크로 승인

승인된 네트워크 값

authorizedNetworks[] 승인된 네트워크로 승인

IPv4 사용 설정

ipv4Enabled 공개 IP 구성

비공개 네트워크

privateNetwork 비공개 IP 구성

SSL 모드

sslMode SSL 모드

할당된 IP 범위

allocatedIpRange 서비스에 할당된 IP 주소 범위

Google Cloud 서비스의 비공개 경로 사용 설정

Google Cloud 서비스의 비공개 경로 비공개 서비스 액세스 및 Private Service Connect를 지원하는 인스턴스 만들기

PSC 사용 설정됨

pscEnabled Private Service Connect 개요

PSC 허용 소비자 프로젝트

allowedConsumerProjects 비공개 서비스 액세스 및 Private Service Connect를 지원하는 인스턴스 만들기

유지보수 버전

maintenanceVersion 셀프서비스 유지보수

사용자 호스트

기본 사용자의 호스트입니다.

호스트

삭제 보호

선택하면 Cloud SQL 인스턴스를 삭제할 수 없습니다. 인스턴스 삭제 방지

사용자 삭제 정책

사용자를 삭제하는 대신 포기하도록 허용하려면 ABANDON를 입력합니다.

SQL 역할을 부여받은 MySQL 사용자는 삭제할 수 없습니다.

데이터 캐시 사용 설정됨

데이터 캐시 데이터 캐시 개요

추가 데이터베이스

이름

name 데이터베이스 생성 및 관리

대조

collation 데이터베이스 생성 및 관리

추가 사용자

이름

name MySQL 사용자 및 역할 정보

비밀번호

비밀번호를 입력하거나 임의 비밀번호를 선택하여 비밀번호를 생성합니다.

MySQL 사용자 및 역할 정보

유형

SqlUserType MySQL 사용자 및 역할 정보

호스트

호스트 MySQL 사용자 및 역할 정보

IAM 사용자

ID

IAM 사용자의 ID입니다.

IAM 인증

이메일

IAM 사용자의 이메일입니다.

Cloud SQL 인스턴스에 개별 IAM 사용자 또는 서비스 계정 추가

유형

type Cloud SQL 인스턴스에 개별 IAM 사용자 또는 서비스 계정 추가

무작위 인스턴스 이름

인스턴스 이름 끝에 임의의 접미사를 추가합니다.

random_instance_name

복제본 데이터베이스 버전

사용할 읽기 복제본 데이터베이스 버전입니다. 데이터베이스 업데이트 중에만 사용하세요.

SqlDatabaseVersion

마스터 인스턴스 이름

masterInstanceName 읽기 복제본 만들기

인스턴스 유형

instanceType SqlInstanceType

Secondary Zone(보조 구역)

복제본 인스턴스의 기본 영역입니다.

secondaryZone

GAE 애플리케이션 팔로우

팔로우할 App Engine 애플리케이션입니다. Cloud SQL 인스턴스와 동일한 리전에 있어야 합니다.

followGaeApplication

활성화 정책

activationPolicy 활성화 정책

삭제 보호 사용 설정됨

deletionProtectionEnabled 인스턴스 삭제 방지

읽기 복제본 삭제 보호 사용 설정됨

Terraform에서 복제본 SQL 인스턴스를 삭제하지 못하도록 하려면 체크박스를 선택합니다.

읽기 복제본의 삭제 보호 고려

유지보수 기간

유지보수 기간 요일

Cloud SQL 인스턴스의 유지보수 정보

유지보수 기간 시간

시간 Cloud SQL 인스턴스의 유지보수 정보

유지보수 기간 업데이트 추적

updateTrack Cloud SQL 인스턴스의 유지보수 정보

데이터베이스 플래그

이름

databaseFlags 데이터베이스 플래그 구성

databaseFlags 데이터베이스 플래그 구성

사용자 라벨

Cloud SQL 인스턴스의 키 라벨입니다.

userLabels

Cloud SQL 인스턴스의 값 라벨입니다.

userLabels

유지보수 거부 기간

종료일

endDate 유지보수 거부 기간 구성

시작일

startDate 유지보수 거부 기간 구성

시간

time 유지보수 거부 기간 구성

통계 구성

분당 쿼리 계획

queryPlansPerMinute 쿼리 통계를 사용하여 쿼리 성능 향상

Query String Length(쿼리 문자열 길이)

queryStringLength 쿼리 통계를 사용하여 쿼리 성능 향상

애플리케이션 태그 기록

recordApplicationTags 쿼리 통계 사용 설정

클라이언트 주소 기록

recordClientAddress 쿼리 통계 사용 설정

비밀번호 유효성 검사 정책 구성

비밀번호 정책 사용 설정

enablePasswordPolicy 비밀번호 정책 설정

최소 길이

minLength 비밀번호 정책 설정

복잡성

복잡성 비밀번호 정책 설정

사용자 이름 부분 문자열 허용 안함

disallowUsernameSubstring 비밀번호 정책 설정

재사용 간격

reuseInterval 비밀번호 정책 설정

읽기 복제본

이름

read_replicas 읽기 복제본

이름 재정의

기본 읽기 복제본 이름을 재정의하는 문자열입니다. read_replicas

읽기 복제본 이름 접미사

읽기 인스턴스 이름에 추가할 선택적 접미사입니다.

읽기 복제본

DB 문자 집합

charset Cloud SQL 인스턴스에서 데이터베이스 만들기

DB Collation(DB 콜레이션)

collation Cloud SQL 인스턴스에서 데이터베이스 만들기

제한 시간 만들기

긴 데이터베이스 생성을 제한하는 데 적용되는 선택적 제한 시간입니다.

create_timeout

업데이트 제한 시간

긴 데이터베이스 업데이트를 제한하는 데 적용되는 선택적 제한 시간입니다.

update_timeout

삭제 제한 시간

긴 데이터베이스 삭제를 제한하는 데 적용되는 선택적 제한 시간입니다.

delete_timeout

암호화 키 이름

encryption_key_name 클라이언트 측 암호화에 관한 정보

읽기 복제본 삭제 보호

선택하면 Terraform이 복제본 SQL 인스턴스를 삭제하는 것을 차단합니다.

deletion_protection

Enable Random Password Special(무작위 비밀번호 특수문자 사용 설정)

선택하면 생성된 임의 비밀번호에서 특수문자를 사용할 수 있습니다.

enable_random_password_special

커넥터 시행

connectorEnforcement Cloud SQL 언어 커넥터 개요

Google ML 통합 사용 설정

enable_google_ml_integration Cloud SQL을 사용하여 생성형 AI 애플리케이션 빌드

데이터베이스 통합 역할

Google Cloud 서비스와의 통합을 위해 기본 데이터베이스 인스턴스 서비스 계정에 필요한 역할입니다.

시작하기 전에