도구: update_instance
Cloud SQL 인스턴스의 구성 설정을 부분적으로 업데이트합니다.
- 이 도구는 장기 실행 작업을 반환합니다.
get_operation도구를 사용하여 작업이 완료될 때까지 상태를 폴링합니다.
다음 샘플은 curl를 사용하여 update_instance MCP 도구를 호출하는 방법을 보여줍니다.
| curl 요청 |
|---|
curl --location 'https://sqladmin.googleapis.com/mcp' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "update_instance", "arguments": { // provide these details according to the tool's MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
입력 스키마
MCP의 인스턴스 패치 요청입니다.
SqlInstancesPatchMcpRequest
| JSON 표현 |
|---|
{ "project": string, "instance": string, "databaseFlags": [ { object ( |
| 필드 | |
|---|---|
project |
필수 항목입니다. 인스턴스가 포함된 프로젝트의 프로젝트 ID입니다. |
instance |
필수 항목입니다. Cloud SQL 인스턴스 ID. 여기에는 프로젝트 ID가 포함되지 않습니다. |
databaseFlags[] |
선택사항입니다. 데이터베이스 플래그입니다. |
dataApiAccess |
선택사항입니다. 인스턴스에 대한 데이터 API 액세스를 제어하는 설정입니다. |
DatabaseFlags
| JSON 표현 |
|---|
{ "name": string, "value": string } |
| 필드 | |
|---|---|
name |
플래그의 이름입니다. 이러한 플래그는 인스턴스 시작 시 전달되므로 서버 옵션과 시스템 변수를 모두 포함하세요. 플래그는 하이픈이 아닌 밑줄로 지정됩니다. 자세한 내용은 Cloud SQL 문서의 데이터베이스 플래그 구성을 참고하세요. |
value |
플래그 값입니다. 불리언 플래그는 true의 경우 |
출력 스키마
작업 리소스입니다. 작업이 성공하여 Operation 리소스를 반환하는 경우 리소스에는 작업과 관련된 필드만 채워집니다.
작업
| JSON 표현 |
|---|
{ "kind": string, "targetLink": string, "status": enum ( |
| 필드 | |
|---|---|
kind |
항상 |
targetLink |
|
status |
작업의 상태입니다. |
user |
이 작업을 시작한 사용자의 이메일 주소입니다. |
insertTime |
이 작업이 UTC 시간대의 RFC 3339 형식으로 대기열에 추가된 시간입니다(예: 생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 |
startTime |
이 작업이 RFC 3339 형식으로 실제로 시작된 UTC 시간입니다(예: 생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 |
endTime |
이 작업이 UTC 시간대의 RFC 3339 형식으로 완료된 시간입니다(예: 생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 |
error |
이 작업을 처리하는 동안 오류가 발생하면 이 필드가 채워집니다. |
apiWarning |
Admin API 경고 메시지입니다. |
operationType |
작업 유형입니다. 유효한 값은 다음과 같습니다. * |
importContext |
가져오기 작업의 컨텍스트입니다(해당하는 경우). |
exportContext |
내보내기 작업의 컨텍스트입니다(해당하는 경우). |
backupContext |
백업 작업의 컨텍스트입니다(해당하는 경우). |
preCheckMajorVersionUpgradeContext |
이 필드는 operation_type이 PRE_CHECK_MAJOR_VERSION_UPGRADE인 경우에만 채워집니다. PreCheckMajorVersionUpgradeContext 메시지 자체에는 업그레이드의 타겟 데이터베이스 버전, 발견된 경고 또는 오류를 포함한 검사 결과와 같은 사전 검사 세부정보가 포함됩니다. |
name |
작업을 고유하게 식별하는 식별자입니다. 이 식별자를 사용하여 작업에 관한 정보가 있는 Operations 리소스를 가져올 수 있습니다. |
targetId |
이 작업이 실행되는 리소스의 이름입니다. |
selfLink |
이 리소스의 URI입니다. |
targetProject |
이 작업과 관련된 타겟 인스턴스의 프로젝트 ID입니다. |
acquireSsrsLeaseContext |
SSRS 임대 획득 작업의 컨텍스트입니다(해당하는 경우). |
subOperationType |
선택사항입니다. 작업 유형에 따른 하위 작업입니다. |
타임스탬프
| JSON 표현 |
|---|
{ "seconds": string, "nanos": integer } |
| 필드 | |
|---|---|
seconds |
Unix epoch 1970-01-01T00:00:00Z 이후 UTC 시간의 초 단위로 표현합니다. -62135596800~253402300799 (0001-01-01T00:00:00Z~9999-12-31T23:59:59Z) 사이여야 합니다. |
nanos |
나노초 단위의 음수가 아닌 초수입니다. 이 필드는 기간의 나노초 부분이며 초의 대안이 아닙니다. 음수의 초수 값에는 시간에 반영되는 음수가 아닌 나노초 값이 있어야 합니다. 0~999,999,999(포함) 사이여야 합니다. |
OperationErrors
| JSON 표현 |
|---|
{
"kind": string,
"errors": [
{
object ( |
| 필드 | |
|---|---|
kind |
항상 |
errors[] |
이 작업을 처리하는 동안 발생한 오류 목록입니다. |
OperationError
| JSON 표현 |
|---|
{ "kind": string, "code": string, "message": string } |
| 필드 | |
|---|---|
kind |
항상 |
code |
발생한 특정 오류를 식별합니다. |
message |
발생한 오류에 대한 추가 정보입니다. |
ApiWarning
| JSON 표현 |
|---|
{
"code": enum ( |
| 필드 | |
|---|---|
code |
경고 유형을 고유하게 식별하기 위한 코드입니다. |
message |
경고 메시지입니다. |
region |
REGION_UNREACHABLE 경고의 지역 이름입니다. |
ImportContext
| JSON 표현 |
|---|
{ "uri": string, "database": string, "kind": string, "fileType": enum ( |
| 필드 | |
|---|---|
uri |
Cloud Storage에서 |
database |
가져올 대상 데이터베이스입니다. |
kind |
항상 |
fileType |
지정된 URI의 파일 형식입니다.`SQL |
csvImportOptions |
CSV로 데이터 가져오기 옵션입니다. |
importUser |
가져오기 작업의 PostgreSQL 사용자입니다. PostgreSQL 인스턴스만 해당 |
bakImportOptions |
SQL Server .BAK 파일과 관련된 가져오기 매개변수 |
sqlImportOptions |
선택사항입니다. SQL 문에서 데이터를 가져오기 위한 옵션입니다. |
tdeImportOptions |
선택사항입니다. SQL Server TDE 인증서와 관련된 가져오기 매개변수 |
SqlCsvImportOptions
| JSON 표현 |
|---|
{ "table": string, "columns": [ string ], "escapeCharacter": string, "quoteCharacter": string, "fieldsTerminatedBy": string, "linesTerminatedBy": string } |
| 필드 | |
|---|---|
table |
CSV 데이터를 가져올 테이블입니다. |
columns[] |
CSV 데이터를 가져올 열입니다. 지정하지 않으면 데이터베이스 테이블의 모든 열이 CSV 데이터로 로드됩니다. |
escapeCharacter |
이스케이프 처리해야 하는 데이터 문자 앞에 표시되어야 하는 문자를 지정합니다. |
quoteCharacter |
데이터 값을 따옴표로 묶을 때 사용할 따옴표 문자를 지정합니다. |
fieldsTerminatedBy |
파일의 각 행 (줄)에서 열을 구분하는 문자를 지정합니다. |
linesTerminatedBy |
줄을 구분하는 데 사용됩니다. 한 줄에 모든 필드가 포함되어 있지 않으면 나머지 열은 기본값으로 설정됩니다. |
SqlBakImportOptions
| JSON 표현 |
|---|
{ "encryptionOptions": { object ( |
| 필드 | |
|---|---|
encryptionOptions |
|
striped |
복원되는 백업 세트가 스트라이프인지 여부입니다. SQL Server용 Cloud SQL에만 적용됩니다. |
noRecovery |
백업 가져오기가 NORECOVERY 옵션으로 데이터베이스를 복원하는지 여부입니다. SQL Server용 Cloud SQL에만 적용됩니다. |
recoveryOnly |
백업 가져오기 요청이 Bak 콘텐츠를 다운로드하지 않고 데이터베이스를 온라인 상태로만 전환할지 여부입니다. 'no_recovery'와 'recovery_only' 중 하나만 true일 수 있으며, 그렇지 않으면 오류가 반환됩니다. SQL Server용 Cloud SQL에만 적용됩니다. |
bakType |
bak 콘텐츠 유형(FULL 또는 DIFF) |
stopAt |
선택사항입니다. 가져오기가 중지되어야 하는 타임스탬프입니다. 이 타임스탬프는 RFC 3339 형식입니다 (예: 생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 |
stopAtMark |
선택사항입니다. 가져오기를 중지해야 하는 표시된 트랜잭션입니다. 이 필드는 STOPATMARK 키워드와 동일하며 SQL Server용 Cloud SQL에만 적용됩니다. |
EncryptionOptions
| JSON 표현 |
|---|
{ "certPath": string, "pvkPath": string, "pvkPassword": string, "keepEncrypted": boolean } |
| 필드 | |
|---|---|
certPath |
Cloud Storage의 인증서(.cer) 경로( |
pvkPath |
Cloud Storage의 인증서 비공개 키(.pvk) 경로( |
pvkPassword |
비공개 키를 암호화하는 비밀번호 |
keepEncrypted |
선택사항입니다. 가져온 파일이 암호화된 상태로 유지되는지 여부입니다. |
BoolValue
| JSON 표현 |
|---|
{ "value": boolean } |
| 필드 | |
|---|---|
value |
불리언 값입니다. |
SqlImportOptions
| JSON 표현 |
|---|
{
"threads": integer,
"parallel": boolean,
"postgresImportOptions": {
object ( |
| 필드 | |
|---|---|
threads |
선택사항입니다. 병렬 가져오기에 사용할 스레드 수입니다. |
parallel |
선택사항입니다. 가져오기가 병렬이어야 하는지 여부입니다. |
postgresImportOptions |
선택사항입니다. PostgreSQL용 Cloud SQL 인스턴스에서 가져오기 옵션입니다. |
Int32Value
| JSON 표현 |
|---|
{ "value": integer } |
| 필드 | |
|---|---|
value |
int32 값입니다. |
PostgresImportOptions
| JSON 표현 |
|---|
{ "clean": boolean, "ifExists": boolean } |
| 필드 | |
|---|---|
clean |
선택사항입니다. pg_restore 유틸리티의 --clean 플래그입니다. 이 플래그는 Cloud SQL에서 파일을 병렬로 가져오도록 사용 설정한 경우에만 적용됩니다. |
ifExists |
선택사항입니다. pg_restore 유틸리티의 --if-exists 플래그입니다. 이 플래그는 Cloud SQL에서 파일을 병렬로 가져오도록 사용 설정한 경우에만 적용됩니다. |
SqlTdeImportOptions
| JSON 표현 |
|---|
{ "certificatePath": string, "privateKeyPath": string, "privateKeyPassword": string, "name": string } |
| 필드 | |
|---|---|
certificatePath |
필수 항목입니다. gs://bucketName/fileName 형식의 TDE 인증서 공개 키 경로입니다. 인스턴스에 파일에 대한 읽기 권한이 있어야 합니다. SQL Server 인스턴스에만 적용됩니다. |
privateKeyPath |
필수 항목입니다. TDE 인증서 비공개 키의 경로(gs://bucketName/fileName 형식)입니다. 인스턴스에 파일에 대한 읽기 권한이 있어야 합니다. SQL Server 인스턴스에만 적용됩니다. |
privateKeyPassword |
필수 항목입니다. 비공개 키를 암호화하는 비밀번호입니다. |
name |
필수 항목입니다. 인증서 이름입니다. SQL Server 인스턴스에만 적용됩니다. |
ExportContext
| JSON 표현 |
|---|
{ "uri": string, "databases": [ string ], "kind": string, "sqlExportOptions": { object ( |
| 필드 | |
|---|---|
uri |
내보내기가 저장될 Google Cloud Storage의 파일 경로입니다. URI는 |
databases[] |
내보낼 데이터베이스입니다. |
kind |
항상 |
sqlExportOptions |
데이터를 SQL 문으로 내보내기 옵션입니다. |
csvExportOptions |
데이터를 CSV로 내보내기 옵션입니다. |
fileType |
지정된 URI의 파일 형식입니다. |
offload |
서버리스 내보내기를 실행할지 여부입니다. |
bakExportOptions |
데이터를 BAK 파일로 내보내기 옵션입니다. |
tdeExportOptions |
선택사항입니다. SQL Server TDE 인증서와 관련된 내보내기 매개변수 |
SqlExportOptions
| JSON 표현 |
|---|
{ "tables": [ string ], "schemaOnly": boolean, "mysqlExportOptions": { object ( |
| 필드 | |
|---|---|
tables[] |
지정된 데이터베이스에서 내보낼 테이블 또는 내보낸 테이블입니다. 테이블을 지정하는 경우 하나의 데이터베이스만 지정합니다. PostgreSQL 인스턴스의 경우 하나의 테이블만 지정할 수 있습니다. |
schemaOnly |
스키마만 내보냅니다. |
mysqlExportOptions |
|
threads |
선택사항입니다. 병렬 내보내기에 사용할 스레드 수입니다. |
parallel |
선택사항입니다. 내보내기가 병렬이어야 하는지 여부입니다. |
postgresExportOptions |
선택사항입니다. PostgreSQL용 Cloud SQL 인스턴스에서 내보내기 옵션입니다. |
MysqlExportOptions
| JSON 표현 |
|---|
{ "masterData": integer } |
| 필드 | |
|---|---|
masterData |
복제 설정에 필요한 SQL 문을 포함하는 옵션입니다. |
PostgresExportOptions
| JSON 표현 |
|---|
{ "clean": boolean, "ifExists": boolean } |
| 필드 | |
|---|---|
clean |
선택사항입니다. 이 옵션을 사용하여 DROP 포함
SQL 문 가져오기 작업을 실행하기 전에 이러한 명령문을 사용하여 데이터베이스 객체를 삭제합니다. |
ifExists |
선택사항입니다. clean으로 생성된 각 DROP 문에 IF EXISTS SQL 문을 포함하는 옵션 |
SqlCsvExportOptions
| JSON 표현 |
|---|
{ "selectQuery": string, "escapeCharacter": string, "quoteCharacter": string, "fieldsTerminatedBy": string, "linesTerminatedBy": string } |
| 필드 | |
|---|---|
selectQuery |
데이터를 추출하는 데 사용되는 select 쿼리입니다. |
escapeCharacter |
이스케이프 처리해야 하는 데이터 문자 앞에 표시되어야 하는 문자를 지정합니다. |
quoteCharacter |
데이터 값을 따옴표로 묶을 때 사용할 따옴표 문자를 지정합니다. |
fieldsTerminatedBy |
파일의 각 행 (줄)에서 열을 구분하는 문자를 지정합니다. |
linesTerminatedBy |
줄을 구분하는 데 사용됩니다. 한 줄에 모든 필드가 포함되어 있지 않으면 나머지 열은 기본값으로 설정됩니다. |
SqlBakExportOptions
| JSON 표현 |
|---|
{
"striped": boolean,
"stripeCount": integer,
"bakType": enum ( |
| 필드 | |
|---|---|
striped |
내보내기를 스트라이프 처리해야 하는지 여부입니다. |
stripeCount |
내보내기에 사용할 스트라이프 수를 지정하는 옵션입니다. 비워두고 striped 필드의 값이 true이면 줄무늬 수가 자동으로 선택됩니다. |
bakType |
이 bak 파일의 유형은 export, FULL 또는 DIFF입니다(SQL Server만 해당). |
copyOnly |
지원 중단됨: copy_only가 지원 중단되었습니다. 대신 differential_base 사용 |
differentialBase |
백업을 차등 기준 사본으로 사용할 수 있는지 여부입니다. copy_only 백업은 차등 기준으로 제공될 수 없습니다. |
exportLogStartTime |
선택사항입니다. 트랜잭션 로그가 내보내기 작업에 포함될 시작 타임스탬프입니다. UTC의 RFC 3339 형식 (예: 생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 |
exportLogEndTime |
선택사항입니다. 트랜잭션 로그가 내보내기 작업에 포함되는 종료 타임스탬프입니다. UTC의 RFC 3339 형식 (예: 생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 |
SqlTdeExportOptions
| JSON 표현 |
|---|
{ "certificatePath": string, "privateKeyPath": string, "privateKeyPassword": string, "name": string } |
| 필드 | |
|---|---|
certificatePath |
필수 항목입니다. gs://bucketName/fileName 형식의 TDE 인증서 공개 키 경로입니다. 인스턴스에 버킷에 대한 쓰기 액세스 권한이 있어야 합니다. SQL Server 인스턴스에만 적용됩니다. |
privateKeyPath |
필수 항목입니다. TDE 인증서 비공개 키의 경로(gs://bucketName/fileName 형식)입니다. 인스턴스에 위치에 대한 쓰기 액세스 권한이 있어야 합니다. SQL Server 인스턴스에만 적용됩니다. |
privateKeyPassword |
필수 항목입니다. 비공개 키를 암호화하는 비밀번호입니다. |
name |
필수 항목입니다. 인증서 이름입니다. SQL Server 인스턴스에만 적용됩니다. |
BackupContext
| JSON 표현 |
|---|
{ "backupId": string, "kind": string, "name": string } |
| 필드 | |
|---|---|
backupId |
백업의 식별자입니다. |
kind |
항상 |
name |
백업 이름 형식: projects/{project}/backups/{backup} |
PreCheckMajorVersionUpgradeContext
| JSON 표현 |
|---|
{ "targetDatabaseVersion": enum ( |
| 필드 | |
|---|---|
targetDatabaseVersion |
필수 항목입니다. 업그레이드할 대상 데이터베이스 버전입니다. |
preCheckResponse[] |
출력 전용입니다. 사전 확인 작업의 응답입니다. |
kind |
선택사항입니다. 항상 |
PreCheckResponse
| JSON 표현 |
|---|
{ "actionsRequired": [ string ], // Union field |
| 필드 | |
|---|---|
actionsRequired[] |
사용자가 취해야 하는 조치입니다. 여러 작업에 대해 반복 사용 |
통합 필드
|
|
message |
사용자에게 표시할 메시지입니다. |
통합 필드
|
|
messageType |
정보, 경고, 오류 등 메시지 유형입니다. |
AcquireSsrsLeaseContext
| JSON 표현 |
|---|
{ // Union field |
| 필드 | |
|---|---|
통합 필드
|
|
setupLogin |
SSRS 설정을 위해 데이터베이스 서버에 연결하는 데 설정 로그인으로 사용할 사용자 이름입니다. |
통합 필드
|
|
serviceLogin |
SSRS 설정을 위해 보고서 데이터베이스에 연결하는 서비스 로그인으로 사용할 사용자 이름입니다. |
통합 필드
|
|
reportDatabase |
SSRS 설정에 사용할 보고서 데이터베이스입니다. |
통합 필드
|
|
duration |
SSRS 설정에 필요한 임대 기간입니다. 소수점 아래가 최대 9자리까지이고 ' |
기간
| JSON 표현 |
|---|
{ "seconds": string, "nanos": integer } |
| 필드 | |
|---|---|
seconds |
시간 범위의 부호가 있는 초입니다. -315,576,000,000~+315,576,000,000(포함) 사이여야 합니다. 참고: 이 범위는 60초/분 * 60분/시간 * 24시간/일 * 365.25일/년 * 10,000년에서 계산됩니다. |
nanos |
시간 범위의 나노초 단위로 된 부호가 있는 초수입니다. 1초 미만의 기간은 0 |
SqlSubOperationType
| JSON 표현 |
|---|
{ // Union field |
| 필드 | |
|---|---|
통합 필드 sub_operation_details. 작업 유형에 해당하는 하위 작업 세부정보입니다. sub_operation_details은 다음 중 하나여야 합니다. |
|
maintenanceType |
인스턴스에서 실행할 유지보수의 유형입니다. |
도구 주석
파괴적 힌트: ✅ | 동일한 힌트: ❌ | 읽기 전용 힌트: ❌ | 오픈 월드 힌트: ❌