성능 캡처를 사용하면 성능이 저하될 때 인스턴스의 세부 측정항목을 캡처하여 데이터베이스의 일시적인 문제를 진단할 수 있습니다. 성능 캡처를 사용하려면 인스턴스에 성능 캡처를 사용 설정하고 Cloud SQL 인스턴스의 세부 측정항목 기반 스냅샷을 트리거하는 기준점을 구성합니다.
성능 캡처 트리거 구성 가이드라인
성능 캡처 트리거를 구성할 때는 다음 가이드라인에 유의하세요.
다음 성능 캡처 트리거는 기본적으로 사용 중지되어 있습니다.
- 높은 CPU 사용률
- 메모리 사용량이 많음
- 트랜잭션 잠금 대기
- 세마포어 대기
- 방문 기록 목록 길이
이러한 트리거 중 하나의 기준을 구성했지만 나중에 트리거를 사용 중지하려면 기준 값을
0로 설정하세요.과도한 캡처를 방지하려면 이전 실적 데이터를 기반으로 트리거 기준점을 구성하세요.
기준은 이전 범위의 상한 (예: 일반적인 일일 최대 워크로드 이상)으로 설정하는 것이 좋습니다.
임계값이 너무 낮게 설정되거나 일반적인 워크로드에 너무 가까우면 에이전트가 캡처를 반복적으로 트리거할 수 있습니다. 이로 인해 다음과 같은 문제가 발생할 수 있습니다.
- 비용 증가 및 로깅 오버헤드: 불필요한 로그로 인해 Cloud Logging 비용이 빠르게 증가할 수 있습니다.
- 연장된 쿨다운 수면 모드: 인스턴스가 동일한 기준점을 반복적으로 위반하면 적응형 쿨다운 백오프 메커니즘이 트리거됩니다. 이렇게 하면 성능 캡처가 24시간 수면 모드로 전환되어 모든 트리거 확인 및 진단이 일시 중지됩니다. 실제로 심각한 이벤트가 발생하면 이 절전 모드 중에 중요한 진단 데이터가 손실될 수 있습니다.
시작하기 전에
성능 캡처를 구성하기 전에 다음 작업을 완료하세요.
필요한 역할
인스턴스를 수정하고 성능 캡처를 사용 설정하는 데 필요한 권한을 얻으려면 관리자에게 프로젝트에 대한 다음 IAM 역할을 부여해 달라고 요청하세요.
- Cloud SQL 관리자 (
roles/cloudsql.admin) - Compute 뷰어 (
roles/compute.viewer)
역할 부여 방법에 대한 자세한 내용은 프로젝트, 폴더, 조직에 대한 액세스 관리를 참조하세요.
커스텀 역할이나 다른 사전 정의된 역할을 통해 필요한 권한을 얻을 수도 있습니다.
성능 캡처 사용 설정
Cloud SQL 인스턴스를 만들 때 또는 기존 인스턴스를 업데이트할 때 성능 캡처를 사용 설정할 수 있습니다.
성능 캡처를 사용 설정하려면 인스턴스에 대해 쿼리 통계를 사용 설정하세요. 쿼리 통계를 사용 설정하면 인스턴스에서 성능 캡처의 기본 구성과 모든 임계값 기반 트리거의 기본값을 사용합니다. 선택사항인 임계값 기반 트리거의 경우 트리거가 사용 중지됩니다.
기존 인스턴스에서 쿼리 통계 및 성능 캡처를 사용 설정하려면 다음 단계를 따르세요.
-
Google Cloud 콘솔에서 Cloud SQL 인스턴스 페이지로 이동합니다.
- 인스턴스의 개요 페이지를 열려면 인스턴스 이름을 클릭합니다.
- 인스턴스 맞춤설정 섹션에서 구성 옵션 표시를 클릭합니다.
- 쿼리 통계를 펼칩니다.
- 쿼리 통계 사용 설정 체크박스를 선택합니다.
- 추가 기능 사용 설정 섹션에서 성능 캡처 체크박스가 선택되어 있는지 확인합니다.
- 저장을 클릭합니다.
성능 캡처 구성
gcloud CLI 또는 Cloud SQL Admin API를 사용하여 인스턴스를 만들거나 수정할 때 특정 트리거 임계값을 정의하는 등 성능 캡처를 구성할 수 있습니다. 성능 캡처 또는 성능 캡처 트리거 임계값의 구성을 수정해도 인스턴스가 다시 시작되거나 인스턴스가 유지보수 상태로 전환되지 않습니다.
다음 절차에서는 기존 인스턴스를 수정하여 성능 캡처를 구성하는 방법을 설명합니다.
gcloud
기존 Cloud SQL 인스턴스에서 성능 캡처를 구성하려면 다음 명령어를 실행합니다.
gcloud sql instances patch INSTANCE_NAME \ --performance-capture-config="enabled=true,PROBE_CONFIGURATION,PERFORMANCE_CAPTURE_THRESHOLDS"
performance-capture-config 플래그에 enabled=true을 포함합니다.
동일한 플래그에 대해 PROBE_CONFIGURATION 및 PERFORMANCE_CAPTURE_THRESHOLDS의 선택적 구성을 지정할 수 있습니다.
gcloud sql instances patch 명령어를 사용하여 기존 인스턴스에서 성능 캡처의 기준점 구성 값을 수정할 수도 있습니다.
성능 측정항목의 프로브 간격 및 연속 프로브 구성
PROBE_CONFIGURATION을 다음 플래그 설정 중 하나 또는 둘 다로 바꿀 수 있습니다. 플래그를 설정하지 않으면 모니터링 에이전트에서 기본값을 사용합니다.
probing-interval-seconds=SECONDS:20~86400사이의 정수입니다. 측정항목 프로브 간 시간 간격(초)입니다. 예를 들면30,60,100입니다. 기본값은30입니다.probe-threshold=PROBES: 성능 캡처를 트리거하기 위해 기준점을 초과해야 하는 연속 횟수입니다. 유효한 범위는1~20입니다. 기본값은3입니다.
성능 캡처 기준 구성
PERFORMANCE_CAPTURE_THRESHOLDS를 다음 플래그 설정 중 하나 이상으로 바꿀 수 있습니다. 플래그 값을 설정하지 않으면 모니터링 에이전트에서 기준점의 기본값을 사용합니다. 이러한 플래그로 설정된 트리거에 관한 자세한 내용은 성능 캡처 트리거를 참고하세요.
running-threads-threshold=THREADS: 기본 또는 복제본 인스턴스의 경우 기준점을 초과하는 것으로 간주되는 활성 스레드의 최소 수입니다. 예를 들면10입니다.10이상이어야 합니다. 설정하지 않으면 인스턴스 크기에 따라 기본값이 설정됩니다. 기본값은MIN(600, cpuCount * 20)입니다.seconds-behind-source-threshold=SECONDS: 읽기 복제본의 경우 기준점을 초과하는 것으로 간주되는 최소 복제 지연 시간(초)입니다.1보다 커야 합니다. 기본값은900입니다.transaction-duration-threshold=SECONDS: 트랜잭션이 추적되고 성능 캡처 로그에 포함되기 전 커밋되지 않은 트랜잭션의 기간(초)입니다. 예를 들면300입니다. 최솟값은60입니다. 기본값은3600입니다. 장기 실행 트랜잭션을 자동으로 종료할 수도 있습니다.cpu-utilization-threshold-percent=CPU_PERCENTAGE: 지속적으로 초과할 전체 CPU 사용량 비율입니다. 예를 들면90입니다. 최솟값은10이고 최댓값은99입니다. 기본값은0(사용 중지됨)입니다.memory-usage-threshold-percent=MEMORY_PERCENTAGE: 일관되게 초과할 전체 메모리 사용량 비율입니다. 예를 들면90입니다. 최솟값은10이고 최댓값은99입니다. 기본값은0(사용 중지됨)입니다.transaction-lock-wait-threshold-count=TRANSACTION_COUNT: `LOCK WAIT` 상태가 허용되는 트랜잭션의 기준점입니다. 예를 들면50입니다. 최솟값은10이고 최댓값은10000입니다. 기본값은0(사용 중지됨)입니다.semaphore-wait-threshold-count=SEMAPHORE_THREAD_COUNT:SHOW ENGINE INNODB STATUS명령어에서 InnoDB 세마포어를 기다리는 스레드 수의 기준입니다. 예를 들면20입니다. 최솟값은10이고 최댓값은10000입니다. 기본값은0(사용 중지됨)입니다.history-list-length-threshold-count=HISTORY_LIST_LENGTH_COUNT: 데이터베이스에 허용되는 InnoDB 기록 목록 길이 (HLL) 수의 기준입니다. 예를 들면100000입니다. 최솟값은10000이고 최댓값은10000000입니다. 기본값은0(사용 중지됨)입니다.
REST v1
요청 데이터를 사용하기 전에 다음을 바꿉니다.
performanceCaptureConfig 필드에 다음 플래그 설정을 포함합니다.
플래그 값을 설정하지 않으면 성능 캡처에서 기준점의 기본값을 사용합니다. 이러한 플래그로 설정된 트리거에 관한 자세한 내용은 성능 캡처 트리거를 참고하세요.
- PERFORMANCE_CAPTURE_ENABLED: 인스턴스의 성능 캡처를 사용 설정하려면
true로 설정합니다. - PROBING_INTERVAL_SECONDS:
30~86400사이의 정수입니다. 측정항목 프로브 간 시간 간격(초)입니다. 기본값은30입니다. - PROBE_THRESHOLD: 성능 캡처를 트리거하기 위해 기준점을 연속으로 초과해야 하는 횟수입니다. 유효한 범위는
1~20입니다. 기본값은3입니다. - RUNNING_THREADS_THRESHOLD: 기본 인스턴스의 경우 기준점을 초과하는 것으로 간주되는 활성 스레드의 최소 수입니다. 예를 들면
10입니다.10이상이어야 합니다. 설정하지 않으면 인스턴스 크기에 따라 기본값이 설정됩니다. 기본값은MIN(600, cpuCount * 20)입니다. - SECONDS_BEHIND_SOURCE_THRESHOLD: 읽기 복제본의 경우 기준점을 초과하는 것으로 간주되는 최소 복제 지연 시간(초)입니다.
1보다 커야 합니다. 기본값은900입니다. - TRANSACTION_DURATION_THRESHOLD: 트랜잭션이 추적되고 성능 캡처 로그에 포함되기 전 커밋되지 않은 트랜잭션의 기간(초)입니다.
예를 들면
300입니다. 최솟값은60입니다. 기본값은3600입니다. 장기 실행 트랜잭션의 자동 종료를 구성하려면performanceCaptureConfig필드에 추가 구성 설정을 포함하면 됩니다. 자세한 내용은 장기 실행 트랜잭션 자동 종료를 참고하세요. - CPU_UTILIZATION_THRESHOLD_PERCENT: 지속적으로 초과할 전체 CPU 사용량 비율입니다.
예를 들면
90입니다. 최솟값은10이고 최댓값은99입니다. 기본값은0(사용 중지됨)입니다. - MEMORY_USAGE_THRESHOLD_PERCENT: 일관되게 초과할 전체 메모리 사용량 비율입니다.
예를 들면
90입니다. 최솟값은10이고 최댓값은99입니다. 기본값은0(사용 중지됨)입니다. - TRANSACTION_LOCK_WAIT_THRESHOLD_COUNT:
LOCK WAIT상태에 있을 수 있는 트랜잭션의 기준점입니다. 예를 들면50입니다. 최솟값은10이고 최댓값은10000입니다. 기본값은0(사용 중지됨)입니다. - SEMAPHORE_WAIT_THRESHOLD_COUNT:
SHOW ENGINE INNODB STATUS명령어에서 InnoDB 세마포어를 기다리는 스레드 수의 기준입니다. 예를 들면20입니다. 최솟값은10이고 최댓값은10000입니다. 기본값은0(사용 중지됨)입니다. - HISTORY_LIST_LENGTH_THRESHOLD_COUNT:
데이터베이스에 허용되는 InnoDB 기록 목록 길이 (HLL) 수의 기준입니다.
예를 들면
100000입니다. 최솟값은10000이고 최댓값은10000000입니다. 기본값은0(사용 중지됨)입니다.
HTTP 메서드 및 URL:
PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID
JSON 요청 본문:
{
"performanceCaptureConfig": {
"enabled": PERFORMANCE_CAPTURE_ENABLED,
"probingIntervalSeconds": PROBING_INTERVAL_SECONDS,
"probeThreshold": PROBE_THRESHOLD,
"runningThreadsThreshold": RUNNING_THREADS_THRESHOLD,
"secondsBehindSourceThreshold": SECONDS_BEHIND_SOURCE_THRESHOLD,
"transactionDurationThreshold": TRANSACTION_DURATION_THRESHOLD,
"cpuUtilizationThresholdPercent": CPU_UTILIZATION_THRESHOLD_PERCENT,
"memoryUsageThresholdPercent": MEMORY_USAGE_THRESHOLD_PERCENT,
"transactionLockWaitThresholdCount": TRANSACTION_LOCK_WAIT_THRESHOLD_COUNT,
"semaphoreWaitThresholdCount": SEMAPHORE_WAIT_THRESHOLD_COUNT,
"historyListLengthThresholdCount": HISTORY_LIST_LENGTH_THRESHOLD_COUNT
},
}
요청을 보내려면 다음 옵션 중 하나를 펼칩니다.
다음과 비슷한 JSON 응답이 표시됩니다.
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2025-11-10T22:19:33.735Z",
"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
요청 데이터를 사용하기 전에 다음을 바꿉니다.
performanceCaptureConfig 필드에 다음 플래그 설정을 포함합니다.
플래그 값을 설정하지 않으면 모니터링 에이전트에서 기준점의 기본값을 사용합니다. 이러한 플래그로 설정된 트리거에 관한 자세한 내용은 성능 캡처 트리거를 참고하세요.
- PERFORMANCE_CAPTURE_ENABLED: 인스턴스의 성능 캡처를 사용 설정하려면
true로 설정합니다. - PROBING_INTERVAL_SECONDS:
30~86400사이의 정수입니다. 측정항목 프로브 간 시간 간격(초)입니다. 기본값은30입니다. - PROBE_THRESHOLD: 성능 캡처를 트리거하기 위해 기준점을 연속으로 초과해야 하는 횟수입니다. 유효한 범위는
1~20입니다. 기본값은3입니다. - RUNNING_THREADS_THRESHOLD: 기본 인스턴스의 경우 기준점을 초과하는 것으로 간주되는 활성 스레드의 최소 수입니다. 예를 들면
10입니다.10이상이어야 합니다. 설정하지 않으면 인스턴스 크기에 따라 기본값이 설정됩니다. 기본값은MIN(600, cpuCount * 20)입니다. - SECONDS_BEHIND_SOURCE_THRESHOLD: 읽기 복제본의 경우 기준점을 초과하는 것으로 간주되는 최소 복제 지연 시간(초)입니다.
1보다 커야 합니다. 기본값은900입니다. - TRANSACTION_DURATION_THRESHOLD: 트랜잭션이 추적되고 성능 캡처 로그에 포함되기 전 커밋되지 않은 트랜잭션의 기간(초)입니다.
예를 들면
300입니다. 최솟값은60입니다. 기본값은3600입니다. 장기 실행 트랜잭션의 자동 종료를 구성하려면performanceCaptureConfig필드에 추가 구성 설정을 포함하면 됩니다. 자세한 내용은 장기 실행 트랜잭션 자동 종료를 참고하세요. - CPU_UTILIZATION_THRESHOLD_PERCENT: 지속적으로 초과할 전체 CPU 사용량 비율입니다.
예를 들면
90입니다. 최솟값은10이고 최댓값은99입니다. 기본값은0(사용 중지됨)입니다. - MEMORY_USAGE_THRESHOLD_PERCENT: 일관되게 초과할 전체 메모리 사용량 비율입니다.
예를 들면
90입니다. 최솟값은10이고 최댓값은99입니다. 기본값은0(사용 중지됨)입니다. - TRANSACTION_LOCK_WAIT_THRESHOLD_COUNT:
LOCK WAIT상태가 허용되는 트랜잭션의 기준점입니다. 예를 들면50입니다. 최솟값은10이고 최댓값은10000입니다. 기본값은0(사용 중지됨)입니다. - SEMAPHORE_WAIT_THRESHOLD_COUNT:
SHOW ENGINE INNODB STATUS명령어에서 InnoDB 세마포어를 기다리는 스레드 수의 기준입니다. 예를 들면20입니다. 최솟값은10이고 최댓값은10000입니다. 기본값은0(사용 중지됨)입니다. - HISTORY_LIST_LENGTH_THRESHOLD_COUNT:
데이터베이스에 허용되는 InnoDB 기록 목록 길이 (HLL) 수의 기준입니다.
예를 들면
100000입니다. 최솟값은10000이고 최댓값은10000000입니다. 기본값은0(사용 중지됨)입니다.
HTTP 메서드 및 URL:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID
JSON 요청 본문:
{
"performanceCaptureConfig": {
"enabled": PERFORMANCE_CAPTURE_ENABLED,
"probingIntervalSeconds": PROBING_INTERVAL_SECONDS,
"probeThreshold": PROBE_THRESHOLD,
"runningThreadsThreshold": RUNNING_THREADS_THRESHOLD,
"secondsBehindSourceThreshold": SECONDS_BEHIND_SOURCE_THRESHOLD,
"transactionDurationThreshold": TRANSACTION_DURATION_THRESHOLD,
"cpuUtilizationThresholdPercent": CPU_UTILIZATION_THRESHOLD_PERCENT,
"memoryUsageThresholdPercent": MEMORY_USAGE_THRESHOLD_PERCENT,
"transactionLockWaitThresholdCount": TRANSACTION_LOCK_WAIT_THRESHOLD_COUNT,
"semaphoreWaitThresholdCount": SEMAPHORE_WAIT_THRESHOLD_COUNT,
"historyListLengthThresholdCount": HISTORY_LIST_LENGTH_THRESHOLD_COUNT
},
}
요청을 보내려면 다음 옵션 중 하나를 펼칩니다.
다음과 비슷한 JSON 응답이 표시됩니다.
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2025-11-10T22:19:33.735Z",
"operationType": "UPDATE",
"name": "OPERATION_ID",
"targetId": "INSTANCE_ID",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID",
"targetProject": "PROJECT_ID"
}
장기 실행 트랜잭션 자동 종료
성능 캡처를 사용하여 미리 정의된 기간을 초과하는 트랜잭션을 종료할 수 있습니다. 이렇게 하면 인스턴스를 불안정하게 만들 수 있는 비정상 쿼리를 방지할 수 있습니다.
장기 실행 트랜잭션을 자동으로 종료하도록 MySQL용 Cloud SQL 데이터베이스를 구성하려면 gcloud CLI 또는 Cloud SQL Admin API를 사용하세요.
gcloud
장기 실행 트랜잭션의 자동 종료를 사용 설정하려면 트랜잭션의 기준 한도를 설정합니다. 거래 자동 종료를 구성하려면 다음 명령어를 실행합니다.
gcloud sql instances patch INSTANCE_NAME \ --performance-capture-config="transaction-kill-threshold-seconds=SECONDS"
다음을 바꿉니다.
- INSTANCE_NAME: 인스턴스 이름입니다.
- SECONDS: 장기 실행 트랜잭션을 자동으로 종료할 기간 제한(초)입니다. 이 한도는
transaction-duration-threshold또는transactionDurationThreshold트리거에 설정한 값보다 작은 값으로 설정할 수 없습니다.
자동으로 종료할 거래 유형 (기본값은 READ_ONLY_TRANSACTIONS)을 지정하고 제외할 특정 거래 사용자 또는 호스트 목록을 맞춤설정할 수도 있습니다. 이러한 옵션을 구성하려면 다음 명령어를 실행합니다.
gcloud sql instances patch INSTANCE_NAME \ --performance-capture-config="transaction-kill-threshold-seconds=SECONDS,transaction-kill-type=TRANSACTION_TYPE,transaction-kill-excluded-user-hosts=EXCLUSION_LIST"
다음을 바꿉니다.
- TRANSACTION_TYPE: 종료할 트랜잭션의 카테고리를 결정합니다. 다음 값 중 하나를 지정합니다.
READ_ONLY_TRANSACTIONS: 읽기 전용 또는SELECT쿼리만 종료합니다.transaction-kill-type이 지정되지 않은 경우 기본값입니다.ALL_TRANSACTIONS: 쓰기 작업이 포함된 쿼리를 비롯하여 기준점을 초과하는 실행 중인 쿼리를 종료합니다. 여기에는INSERT,UPDATE,DELETE, 기타DDL문이 포함됩니다.
- EXCLUSION_LIST: 제외할 문자열 목록입니다.
user@host와 같은 특정 데이터베이스 사용자 이름과 호스트 조합을 사용하여 항목을 제공하거나 기본값이user@%인 MySQL 스타일 사용자 계정 이름으로 제공할 수 있습니다. 이 목록은 호스트 부분에서 일치하는%및_와일드 카드를 지원합니다.
예를 들어 다음 명령어를 실행하여 모든 읽기 및 쓰기 트랜잭션을 포함한 _모든_ 트랜잭션의 자동 종료를 구성하되 장기 실행 트랜잭션의 특정 알려진 사용자는 제외할 수 있습니다.
gcloud sql instances patch example-instance \ --performance-capture-config="transaction-kill-threshold-seconds=600,transaction-kill-type=ALL_TRANSACTIONS,transaction-kill-excluded-user-hosts=report_user@%;backup_user@localhost"
REST v1
요청 데이터를 사용하기 전에 다음을 바꿉니다.
- SECONDS: 자동으로 종료될 장기 실행 트랜잭션의 기간(초)입니다. 이 한도는
transactionDurationThreshold필드에 설정한 값보다 작은 값으로 설정할 수 없습니다. - TRANSACTION_TYPE: 종료할 트랜잭션의 카테고리를 결정합니다. 다음 값 중 하나를 사용합니다.
READ_ONLY_TRANSACTIONS: 읽기 전용 또는SELECT쿼리만 종료합니다.transactionKillType이 지정되지 않은 경우 기본값입니다.ALL_TRANSACTIONS: 쓰기 작업이 포함된 쿼리를 비롯하여 기준점을 초과하는 실행 중인 쿼리를 종료합니다. 여기에는INSERT,UPDATE,DELETE, 기타DDL문이 포함됩니다.
- EXCLUSION_LIST: 제외할 문자열 목록입니다.
user@host와 같은 특정 데이터베이스 사용자 이름과 호스트 조합을 사용하거나 MySQL 스타일 사용자 계정 이름(기본값은user@%)을 사용하여 항목을 제공할 수 있습니다. 이 목록은 호스트 부분에서 일치하는 와일드 카드%및_를 지원합니다.
HTTP 메서드 및 URL:
PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID
JSON 요청 본문:
{
"performanceCaptureConfig": {
"transactionKillThresholdSeconds": SECONDS,
"transactionKillType": TRANSACTION_TYPE,
"transactionKillExcludedUserHosts": [ EXCLUSION_LIST
]
}
}
요청을 보내려면 다음 옵션 중 하나를 펼칩니다.
다음과 비슷한 JSON 응답이 표시됩니다.
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2025-11-10T22:19:33.735Z",
"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
요청 데이터를 사용하기 전에 다음을 바꿉니다.
- SECONDS: 자동으로 종료될 장기 실행 트랜잭션의 기간(초)입니다. 이 한도는
transactionDurationThreshold필드에 설정한 값보다 작은 값으로 설정할 수 없습니다. - TRANSACTION_TYPE: 종료할 트랜잭션의 카테고리를 결정합니다. 다음 값 중 하나를 사용합니다.
READ_ONLY_TRANSACTIONS: 읽기 전용 또는SELECT쿼리만 종료합니다.transactionKillType이 지정되지 않은 경우 기본값입니다.ALL_TRANSACTIONS: 쓰기 작업이 포함된 쿼리를 비롯하여 기준점을 초과하는 실행 중인 쿼리를 종료합니다. 여기에는INSERT,UPDATE,DELETE, 기타DDL문이 포함됩니다.
- EXCLUSION_LIST: 제외할 문자열 목록입니다.
user@host와 같은 특정 데이터베이스 사용자 이름과 호스트 조합을 사용하거나 MySQL 스타일 사용자 계정 이름(기본값은user@%)을 사용하여 항목을 제공할 수 있습니다. 이 목록은 호스트 부분에서 일치하는 와일드 카드%및_를 지원합니다.
HTTP 메서드 및 URL:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID
JSON 요청 본문:
{
"performanceCaptureConfig": {
"transactionKillThresholdSeconds": SECONDS,
"transactionKillType": TRANSACTION_TYPE,
"transactionKillExcludedUserHosts": [ EXCLUSION_LIST
]
}
}
요청을 보내려면 다음 옵션 중 하나를 펼칩니다.
다음과 비슷한 JSON 응답이 표시됩니다.
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2025-11-10T22:19:33.735Z",
"operationType": "UPDATE",
"name": "OPERATION_ID",
"targetId": "INSTANCE_ID",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID",
"targetProject": "PROJECT_ID"
}
성능 캡처 사용 중지
성능 캡처를 사용 중지하려면 다음 단계를 따르세요.
콘솔
-
Google Cloud 콘솔에서 Cloud SQL 인스턴스 페이지로 이동합니다.
- 인스턴스의 개요 페이지를 열려면 인스턴스 이름을 클릭합니다.
- 수정을 클릭합니다.
- 인스턴스 맞춤설정 섹션에서 구성 옵션 표시를 클릭합니다.
- 쿼리 통계를 펼칩니다.
- 추가 기능 사용 설정 섹션에서 성능 캡처 체크박스를 선택 취소합니다.
- 저장을 클릭합니다.
gcloud
gcloud sql instances patch INSTANCE_NAME \ --performance-capture-config="enabled=false"
INSTANCE_NAME을 성능 캡처를 사용 중지하려는 인스턴스의 이름으로 바꿉니다.
REST v1
HTTP 메서드 및 URL:
PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID
JSON 요청 본문:
{
"performanceCaptureConfig": {
"enabled": false
}
}
요청을 보내려면 다음 옵션 중 하나를 펼칩니다.
다음과 비슷한 JSON 응답이 표시됩니다.
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "INSERT_TIME",
"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
HTTP 메서드 및 URL:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID
JSON 요청 본문:
{
"performanceCaptureConfig": {
"enabled": 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": "2025-11-10T22:19:33.735Z",
"operationType": "UPDATE",
"name": "OPERATION_ID",
"targetId": "INSTANCE_ID",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID",
"targetProject": "PROJECT_ID"
}