Herramienta: update_instance
Actualiza de forma parcial la configuración de una instancia de Cloud SQL.
- Esta herramienta devuelve una operación de larga duración. Usa la herramienta
get_operationpara sondear su estado hasta que se complete la operación.
En el siguiente ejemplo, se muestra cómo usar curl para invocar la herramienta de MCP update_instance.
| Solicitud de 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 }' |
Esquema de entrada
Es la solicitud de parche de instancia para MCP.
SqlInstancesPatchMcpRequest
| Representación JSON |
|---|
{ "project": string, "instance": string, "databaseFlags": [ { object ( |
| Campos | |
|---|---|
project |
Obligatorio. El ID del proyecto que contiene la instancia. |
instance |
Obligatorio. El ID de la instancia de Cloud SQL. Esto no incluye el ID del proyecto. |
databaseFlags[] |
Es opcional. Son las marcas de la base de datos. |
dataApiAccess |
Es opcional. Es la configuración para controlar el acceso a la API de datos de una instancia. |
Marcas de bases de datos
| Representación JSON |
|---|
{ "name": string, "value": string } |
| Campos | |
|---|---|
name |
Es el nombre de la marca. Estas marcas se pasan al inicio de la instancia, por lo que incluyen tanto las opciones del servidor como las variables del sistema. Las marcas se especifican con guiones bajos, no con guiones. Para obtener más información, consulta Configura marcas de bases de datos en la documentación de Cloud SQL. |
value |
Es el valor de la marca. Las marcas booleanas se configuran en |
Esquema de salida
Es un recurso Operation. En el caso de las operaciones exitosas que muestran un recurso Operation, solo se propagan en el recurso los campos pertinentes para la operación.
Operación
| Representación JSON |
|---|
{ "kind": string, "targetLink": string, "status": enum ( |
| Campos | |
|---|---|
kind |
Siempre es |
targetLink |
|
status |
Es el estado de una operación. |
user |
Es la dirección de correo electrónico del usuario que inició esta operación. |
insertTime |
La hora en la que esta operación se colocó en cola en la zona horaria UTC en formato RFC 3339, por ejemplo, Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: |
startTime |
La hora a la que esta operación comenzó realmente en la zona horaria UTC en formato RFC 3339, por ejemplo, Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: |
endTime |
La hora a la que finalizó esta operación en la zona horaria UTC en formato RFC 3339, por ejemplo, Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: |
error |
Si se produjeron errores durante el procesamiento de esta operación, se completará este campo. |
apiWarning |
Es un mensaje de advertencia de la API de Admin. |
operationType |
Es el tipo de operación. Los valores válidos son: * |
importContext |
Es el contexto de la operación de importación, si corresponde. |
exportContext |
Es el contexto de la operación de exportación, si corresponde. |
backupContext |
Es el contexto de la operación de copia de seguridad, si corresponde. |
preCheckMajorVersionUpgradeContext |
Este campo solo se completa cuando operation_type es PRE_CHECK_MAJOR_VERSION_UPGRADE. El mensaje PreCheckMajorVersionUpgradeContext en sí contiene los detalles de esa verificación previa, como la versión de la base de datos de destino para la actualización y los resultados de la verificación (incluidas las advertencias o los errores encontrados). |
name |
Es un identificador que identifica de forma única la operación. Puedes usar este identificador para recuperar el recurso Operations que tiene información sobre la operación. |
targetId |
Nombre del recurso en el que se ejecuta esta operación. |
selfLink |
Es el URI de este recurso. |
targetProject |
Es el ID del proyecto de la instancia de destino relacionada con esta operación. |
acquireSsrsLeaseContext |
Es el contexto para la operación de adquisición de asignación de tiempo de SSRS, si corresponde. |
subOperationType |
Es opcional. Es la operación secundaria basada en el tipo de operación. |
Marca de tiempo
| Representación JSON |
|---|
{ "seconds": string, "nanos": integer } |
| Campos | |
|---|---|
seconds |
Representa los segundos de la hora UTC desde la época de Unix 1970-01-01T00:00:00Z. Debe estar entre -62135596800 y 253402300799 inclusive (lo que corresponde a 0001-01-01T00:00:00Z a 9999-12-31T23:59:59Z). |
nanos |
Fracciones no negativas de un segundo a una resolución de nanosegundos. Este campo es la parte de la duración en nanosegundos, no una alternativa a los segundos. Los valores de segundos negativos con fracciones deben tener valores nanos no negativos que se cuentan hacia adelante en el tiempo. Debe ser un valor entre 0 y 999,999,999, inclusive. |
OperationErrors
| Representación JSON |
|---|
{
"kind": string,
"errors": [
{
object ( |
| Campos | |
|---|---|
kind |
Siempre es |
errors[] |
Es la lista de errores que se encontraron durante el procesamiento de esta operación. |
OperationError
| Representación JSON |
|---|
{ "kind": string, "code": string, "message": string } |
| Campos | |
|---|---|
kind |
Siempre es |
code |
Identifica el error específico que se produjo. |
message |
Información adicional sobre el error encontrado. |
ApiWarning
| Representación JSON |
|---|
{
"code": enum ( |
| Campos | |
|---|---|
code |
Es el código que identifica de forma única el tipo de advertencia. |
message |
Es el mensaje de advertencia. |
region |
Es el nombre de la región para la advertencia REGION_UNREACHABLE. |
ImportContext
| Representación JSON |
|---|
{ "uri": string, "database": string, "kind": string, "fileType": enum ( |
| Campos | |
|---|---|
uri |
Ruta de acceso al archivo de importación en Cloud Storage, con el formato |
database |
Es la base de datos de destino de la importación. Si |
kind |
Siempre es |
fileType |
Tipo de archivo del URI especificado. "SQL |
csvImportOptions |
Opciones para importar datos como CSV. |
importUser |
El usuario de PostgreSQL para esta operación de importación. Solo instancias de PostgreSQL. |
bakImportOptions |
Parámetros de importación específicos para archivos .BAK de SQL Server |
sqlImportOptions |
Es opcional. Son opciones para importar datos de sentencias de SQL. |
tdeImportOptions |
Es opcional. Parámetros de importación específicos para certificados TDE de SQL Server |
SqlCsvImportOptions
| Representación JSON |
|---|
{ "table": string, "columns": [ string ], "escapeCharacter": string, "quoteCharacter": string, "fieldsTerminatedBy": string, "linesTerminatedBy": string } |
| Campos | |
|---|---|
table |
Es la tabla a la que se importan los datos CSV. |
columns[] |
Columnas a las que se importan los datos CSV. Si no se especifica, todas las columnas de la tabla de la base de datos se cargan con datos CSV. |
escapeCharacter |
Especifica el carácter que debe aparecer antes de un carácter de datos que se debe escapar. |
quoteCharacter |
Especifica el carácter de comillas que se usará cuando se coloque un valor de datos entre comillas. |
fieldsTerminatedBy |
Especifica el carácter que separa las columnas dentro de cada fila (línea) del archivo. |
linesTerminatedBy |
Se usa para separar líneas. Si una línea no contiene todos los campos, el resto de las columnas se establecen en sus valores predeterminados. |
SqlBakImportOptions
| Representación JSON |
|---|
{ "encryptionOptions": { object ( |
| Campos | |
|---|---|
encryptionOptions |
|
striped |
Indica si el conjunto de copias de seguridad que se restablece está segmentado. Solo se aplica a Cloud SQL para SQL Server. |
noRecovery |
Indica si la importación de la copia de seguridad restablecerá la base de datos con la opción NORECOVERY. Solo se aplica a Cloud SQL para SQL Server. |
recoveryOnly |
Indica si la solicitud de importación de la copia de seguridad solo pondrá en línea la base de datos sin descargar el contenido de Bak. Solo uno de "no_recovery" y "recovery_only" puede ser verdadero. De lo contrario, se mostrará un error. Solo se aplica a Cloud SQL para SQL Server. |
bakType |
Tipo de contenido de la copia de seguridad, FULL o DIFF |
stopAt |
Es opcional. Es la marca de tiempo en la que debe detenerse la importación. Esta marca de tiempo está en formato RFC 3339 (por ejemplo, Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: |
stopAtMark |
Es opcional. Es la transacción marcada en la que se debe detener la importación. Este campo es equivalente a la palabra clave STOPATMARK y solo se aplica a Cloud SQL para SQL Server. |
EncryptionOptions
| Representación JSON |
|---|
{ "certPath": string, "pvkPath": string, "pvkPassword": string, "keepEncrypted": boolean } |
| Campos | |
|---|---|
certPath |
Ruta de acceso al certificado (.cer) en Cloud Storage, con el formato |
pvkPath |
Ruta de acceso a la clave privada del certificado (.pvk) en Cloud Storage, con el formato |
pvkPassword |
Contraseña que encripta la clave privada |
keepEncrypted |
Es opcional. Indica si el archivo importado permanece encriptado. |
BoolValue
| Representación JSON |
|---|
{ "value": boolean } |
| Campos | |
|---|---|
value |
Es el valor booleano. |
SqlImportOptions
| Representación JSON |
|---|
{
"threads": integer,
"parallel": boolean,
"postgresImportOptions": {
object ( |
| Campos | |
|---|---|
threads |
Es opcional. Cantidad de subprocesos que se usarán para la importación paralela. |
parallel |
Es opcional. Indica si la importación debe ser paralela o no. |
postgresImportOptions |
Es opcional. Opciones para importar desde una instancia de Cloud SQL para PostgreSQL. |
Int32Value
| Representación JSON |
|---|
{ "value": integer } |
| Campos | |
|---|---|
value |
Es el valor int32. |
PostgresImportOptions
| Representación JSON |
|---|
{ "clean": boolean, "ifExists": boolean } |
| Campos | |
|---|---|
clean |
Es opcional. Es la marca --clean para la utilidad pg_restore. Esta marca solo se aplica si habilitaste Cloud SQL para importar archivos en paralelo. |
ifExists |
Es opcional. Es la marca --if-exists para la utilidad pg_restore. Esta marca solo se aplica si habilitaste Cloud SQL para importar archivos en paralelo. |
SqlTdeImportOptions
| Representación JSON |
|---|
{ "certificatePath": string, "privateKeyPath": string, "privateKeyPassword": string, "name": string } |
| Campos | |
|---|---|
certificatePath |
Obligatorio. Es la ruta de acceso a la clave pública del certificado de TDE con el formato gs://bucketName/fileName. La instancia debe tener acceso de lectura al archivo. Solo se aplica a las instancias de SQL Server. |
privateKeyPath |
Obligatorio. Es la ruta de acceso a la clave privada del certificado de TDE con el formato gs://bucketName/fileName. La instancia debe tener acceso de lectura al archivo. Solo se aplica a las instancias de SQL Server. |
privateKeyPassword |
Obligatorio. Contraseña que encripta la clave privada. |
name |
Obligatorio. Nombre del certificado. Solo se aplica a las instancias de SQL Server. |
ExportContext
| Representación JSON |
|---|
{ "uri": string, "databases": [ string ], "kind": string, "sqlExportOptions": { object ( |
| Campos | |
|---|---|
uri |
Es la ruta de acceso al archivo en Google Cloud Storage en el que se almacenará la exportación. El URI tiene el formato |
databases[] |
Bases de datos que se exportarán. |
kind |
Siempre es |
sqlExportOptions |
Son opciones para exportar datos como instrucciones SQL. |
csvExportOptions |
Son las opciones para exportar datos como CSV. Solo instancias de |
fileType |
Es el tipo de archivo del URI especificado. |
offload |
Indica si se debe realizar una exportación sin servidores. |
bakExportOptions |
Opciones para exportar datos como archivos BAK |
tdeExportOptions |
Es opcional. Parámetros de exportación específicos para certificados de TDE de SQL Server |
SqlExportOptions
| Representación JSON |
|---|
{ "tables": [ string ], "schemaOnly": boolean, "mysqlExportOptions": { object ( |
| Campos | |
|---|---|
tables[] |
Son las tablas que se exportarán o que se exportaron de la base de datos especificada. Si especificas tablas, especifica una sola base de datos. En las instancias de PostgreSQL, solo puedes especificar una tabla. |
schemaOnly |
Solo se exportan los esquemas. |
mysqlExportOptions |
|
threads |
Es opcional. Cantidad de subprocesos que se usarán para la exportación paralela. |
parallel |
Es opcional. Indica si la exportación debe ser paralela o no. |
postgresExportOptions |
Es opcional. Son las opciones para exportar desde una instancia de Cloud SQL para PostgreSQL. |
MysqlExportOptions
| Representación JSON |
|---|
{ "masterData": integer } |
| Campos | |
|---|---|
masterData |
Opción para incluir la instrucción de SQL necesaria para configurar la replicación. Si se configura como |
PostgresExportOptions
| Representación JSON |
|---|
{ "clean": boolean, "ifExists": boolean } |
| Campos | |
|---|---|
clean |
Es opcional. Usa esta opción para incluir DROP
Instrucciones de SQL Usa estas instrucciones para borrar objetos de la base de datos antes de ejecutar la operación de importación. |
ifExists |
Es opcional. Opción para incluir una instrucción IF EXISTS de SQL con cada instrucción DROP que produce clean. |
SqlCsvExportOptions
| Representación JSON |
|---|
{ "selectQuery": string, "escapeCharacter": string, "quoteCharacter": string, "fieldsTerminatedBy": string, "linesTerminatedBy": string } |
| Campos | |
|---|---|
selectQuery |
Es la consulta de selección que se usa para extraer los datos. |
escapeCharacter |
Especifica el carácter que debe aparecer antes de un carácter de datos que se debe escapar. |
quoteCharacter |
Especifica el carácter de comillas que se usará cuando se coloque un valor de datos entre comillas. |
fieldsTerminatedBy |
Especifica el carácter que separa las columnas dentro de cada fila (línea) del archivo. |
linesTerminatedBy |
Se usa para separar líneas. Si una línea no contiene todos los campos, el resto de las columnas se establecen en sus valores predeterminados. |
SqlBakExportOptions
| Representación JSON |
|---|
{
"striped": boolean,
"stripeCount": integer,
"bakType": enum ( |
| Campos | |
|---|---|
striped |
Indica si la exportación debe ser segmentada. |
stripeCount |
Opción para especificar cuántas selecciones se usarán para la exportación. Si está en blanco y el valor del campo rayado es verdadero, la cantidad de rayas se elige automáticamente. |
bakType |
El tipo de este archivo bak será export, FULL o DIFF, solo para SQL Server |
copyOnly |
Obsoleto: copy_only está obsoleto. Usa differential_base en su lugar |
differentialBase |
Indica si se puede usar la copia de seguridad como base diferencial. La copia de seguridad copy_only no se puede usar como base diferencial. |
exportLogStartTime |
Es opcional. Es la marca de tiempo de inicio en la que se incluirá el registro de transacciones en la operación de exportación. Formato RFC 3339 (por ejemplo, Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: |
exportLogEndTime |
Es opcional. Es la marca de tiempo de finalización en la que se incluirá el registro de transacciones en la operación de exportación. Formato RFC 3339 (por ejemplo, Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: |
SqlTdeExportOptions
| Representación JSON |
|---|
{ "certificatePath": string, "privateKeyPath": string, "privateKeyPassword": string, "name": string } |
| Campos | |
|---|---|
certificatePath |
Obligatorio. Es la ruta de acceso a la clave pública del certificado de TDE con el formato gs://bucketName/fileName. La instancia debe tener acceso de escritura al bucket. Solo se aplica a las instancias de SQL Server. |
privateKeyPath |
Obligatorio. Es la ruta de acceso a la clave privada del certificado de TDE con el formato gs://bucketName/fileName. La instancia debe tener acceso de escritura a la ubicación. Solo se aplica a las instancias de SQL Server. |
privateKeyPassword |
Obligatorio. Contraseña que encripta la clave privada. |
name |
Obligatorio. Nombre del certificado. Solo se aplica a las instancias de SQL Server. |
BackupContext
| Representación JSON |
|---|
{ "backupId": string, "kind": string, "name": string } |
| Campos | |
|---|---|
backupId |
Es el identificador de la copia de seguridad. |
kind |
Siempre es |
name |
Nombre de la copia de seguridad. Formato: projects/{project}/backups/{backup} |
PreCheckMajorVersionUpgradeContext
| Representación JSON |
|---|
{ "targetDatabaseVersion": enum ( |
| Campos | |
|---|---|
targetDatabaseVersion |
Obligatorio. Es la versión de la base de datos de destino a la que se actualizará. |
preCheckResponse[] |
Solo salida. Son las respuestas de la operación de verificación previa. |
kind |
Es opcional. Siempre es |
PreCheckResponse
| Representación JSON |
|---|
{ "actionsRequired": [ string ], // Union field |
| Campos | |
|---|---|
actionsRequired[] |
Son las acciones que el usuario debe realizar. Usar repeated para varias acciones |
Campo de unión
|
|
message |
Es el mensaje que se mostrará al usuario. |
Campo de unión
|
|
messageType |
Tipo de mensaje: Puede ser informativo, de advertencia o de error. |
AcquireSsrsLeaseContext
| Representación JSON |
|---|
{ // Union field |
| Campos | |
|---|---|
Campo de unión
|
|
setupLogin |
Nombre de usuario que se usará como acceso de configuración para conectarse al servidor de la base de datos para la configuración de SSRS. |
Campo de unión
|
|
serviceLogin |
Nombre de usuario que se usará como acceso de servicio para conectarse a la base de datos de informes para la configuración de SSRS. |
Campo de unión
|
|
reportDatabase |
Base de datos de informes que se usará para la configuración de SSRS. |
Campo de unión
|
|
duration |
Duración de la asignación de tiempo necesaria para la configuración de SSRS. Una duración en segundos con hasta nueve dígitos decimales, que terminan en “ |
Duración
| Representación JSON |
|---|
{ "seconds": string, "nanos": integer } |
| Campos | |
|---|---|
seconds |
Son los segundos firmados del período. Debe estar entre -315,576,000,000 y +315,576,000,000, inclusive. Nota: Estos límites se calculan de la siguiente manera: 60 s/min * 60 min/h * 24 h/día * 365.25 días/año * 10,000 años. |
nanos |
Fracciones firmadas de un segundo con una resolución de nanosegundos del período. Las duraciones inferiores a un segundo se representan con un campo |
SqlSubOperationType
| Representación JSON |
|---|
{ // Union field |
| Campos | |
|---|---|
Campo de unión sub_operation_details. Son los detalles de la operación secundaria que corresponden al tipo de operación. sub_operation_details puede ser solo uno de los parámetros siguientes: |
|
maintenanceType |
Es el tipo de mantenimiento que se realizará en la instancia. |
Anotaciones de herramientas
Sugerencia destructiva: ✅ | Sugerencia idempotente: ❌ | Sugerencia de solo lectura: ❌ | Sugerencia de mundo abierto: ❌