Ferramenta: get_operation
Receber o status de uma operação de longa duração. Uma operação de longa duração pode levar vários minutos para ser concluída. Se uma operação levar muito tempo, use uma ferramenta de linha de comando para pausar por 30 segundos antes de verificar novamente o status da operação.
O exemplo a seguir demonstra como usar curl para invocar a ferramenta get_operation MCP.
| Solicitação 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": "get_operation", "arguments": { // provide these details according to the tool's MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
Esquema de entrada
Solicitação GET de operações.
SqlOperationsGetRequest
| Representação JSON |
|---|
{ "operation": string, "project": string } |
| Campos | |
|---|---|
operation |
Obrigatório. Código da operação da instância. |
project |
Obrigatório. ID do projeto com a instância. |
Esquema de saída
Um recurso de operação. Para operações bem-sucedidas que retornam um recurso de operação, somente os campos relevantes à operação são preenchidos no recurso.
Operação
| Representação JSON |
|---|
{ "kind": string, "targetLink": string, "status": enum ( |
| Campos | |
|---|---|
kind |
Esse valor é sempre |
targetLink |
|
status |
O status de uma operação. |
user |
O endereço de e-mail do usuário que iniciou essa operação. |
insertTime |
A hora em que essa operação foi colocada na fila no fuso horário UTC no formato RFC 3339. Por exemplo, Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: |
startTime |
A hora em que essa operação começou no fuso horário UTC no formato RFC 3339. Por exemplo, Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: |
endTime |
A hora em que essa operação foi concluída no fuso horário UTC no formato RFC 3339, por exemplo, Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: |
error |
Se ocorrerem erros durante o processamento dessa operação, esse campo será preenchido. |
apiWarning |
Uma mensagem de aviso da API Admin. |
operationType |
O tipo da operação. Os valores válidos são: * |
importContext |
O contexto da operação de importação, se aplicável. |
exportContext |
O contexto da operação de exportação, se aplicável. |
backupContext |
O contexto da operação de backup, se aplicável. |
preCheckMajorVersionUpgradeContext |
Esse campo só é preenchido quando o "operation_type" é "PRE_CHECK_MAJOR_VERSION_UPGRADE". A mensagem "PreCheckMajorVersionUpgradeContext" contém os detalhes dessa pré-verificação, como a versão de destino do banco de dados para o upgrade e os resultados da verificação (incluindo avisos ou erros encontrados). |
name |
Um identificador que identifica exclusivamente a operação. É possível usar esse identificador para recuperar o recurso Operações que tem informações sobre a operação. |
targetId |
Nome do recurso em que essa operação é executada. |
selfLink |
O URI desse recurso. |
targetProject |
O ID do projeto da instância de destino relacionada a essa operação. |
acquireSsrsLeaseContext |
O contexto da operação de aquisição de concessão do SSRS, se aplicável. |
subOperationType |
Opcional. A suboperação com base no tipo de operação. |
Carimbo de data/hora
| Representação JSON |
|---|
{ "seconds": string, "nanos": integer } |
| Campos | |
|---|---|
seconds |
Representa os segundos do horário UTC desde a época Unix 1970-01-01T00:00:00Z. Precisa estar entre -62135596800 e 253402300799 (o que corresponde a 0001-01-01T00:00:00Z a 9999-12-31T23:59:59Z). |
nanos |
Frações não negativas de um segundo com resolução de nanossegundos. Esse campo é a parte de nanossegundos da duração, não uma alternativa aos segundos. Os valores de segundos negativos com frações ainda precisam ter valores em nanossegundos não negativos que representam períodos posteriores. O valor precisa estar entre 0 e 999.999.999 (inclusive). |
OperationErrors
| Representação JSON |
|---|
{
"kind": string,
"errors": [
{
object ( |
| Campos | |
|---|---|
kind |
Esse valor é sempre |
errors[] |
A lista de erros encontrados durante o processamento dessa operação. |
OperationError
| Representação JSON |
|---|
{ "kind": string, "code": string, "message": string } |
| Campos | |
|---|---|
kind |
Esse valor é sempre |
code |
Identifica o erro específico que ocorreu. |
message |
Informações adicionais sobre o erro encontrado. |
ApiWarning
| Representação JSON |
|---|
{
"code": enum ( |
| Campos | |
|---|---|
code |
Código para identificar exclusivamente o tipo de aviso. |
message |
A mensagem de aviso. |
region |
O nome da região para o aviso REGION_UNREACHABLE. |
ImportContext
| Representação JSON |
|---|
{ "uri": string, "database": string, "kind": string, "fileType": enum ( |
| Campos | |
|---|---|
uri |
Caminho para o arquivo de importação no Cloud Storage, no formato |
database |
O banco de dados de destino da importação. Se |
kind |
Esse valor é sempre |
fileType |
O tipo de arquivo do URI especificado.`SQL |
csvImportOptions |
Opções para importar dados como CSV. |
importUser |
O usuário do PostgreSQL para esta operação de importação. Somente instâncias do PostgreSQL. |
bakImportOptions |
Parâmetros de importação específicos para arquivos .BAK do SQL Server |
sqlImportOptions |
Opcional. Opções para importar dados de instruções SQL. |
tdeImportOptions |
Opcional. Parâmetros de importação específicos para certificados TDE do SQL Server |
SqlCsvImportOptions
| Representação JSON |
|---|
{ "table": string, "columns": [ string ], "escapeCharacter": string, "quoteCharacter": string, "fieldsTerminatedBy": string, "linesTerminatedBy": string } |
| Campos | |
|---|---|
table |
A tabela para a qual os dados CSV são importados. |
columns[] |
As colunas para as quais os dados CSV são importados. Se não for especificado, todas as colunas da tabela do banco de dados serão carregadas com dados CSV. |
escapeCharacter |
Especifica o caractere que precisa aparecer antes de um caractere de dados que precisa de escape. |
quoteCharacter |
Especifica o caractere de aspas a ser usado quando um valor de dados é colocado entre aspas. |
fieldsTerminatedBy |
Especifica o caractere que separa as colunas em cada linha do arquivo. |
linesTerminatedBy |
Usado para separar linhas. Se uma linha não tiver todos os campos, o restante das colunas será definido com os valores padrão. |
SqlBakImportOptions
| Representação JSON |
|---|
{ "encryptionOptions": { object ( |
| Campos | |
|---|---|
encryptionOptions |
|
striped |
Se o conjunto de backup que está sendo restaurado é distribuído ou não. Aplicável apenas ao Cloud SQL para SQL Server. |
noRecovery |
Indica se a importação do backup vai restaurar o banco de dados com a opção NORECOVERY. Aplicável apenas ao Cloud SQL para SQL Server. |
recoveryOnly |
Se a solicitação de importação de backup apenas vai colocar o banco de dados on-line sem baixar o conteúdo Bak. Apenas "no_recovery" e "recovery_only" podem ser verdadeiros. Caso contrário, um erro será retornado. Aplicável apenas ao Cloud SQL para SQL Server. |
bakType |
Tipo do conteúdo bak, FULL ou DIFF |
stopAt |
Opcional. O carimbo de data/hora em que a importação deve ser interrompida. Esse carimbo de data/hora está no formato RFC 3339 (por exemplo, Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: |
stopAtMark |
Opcional. A transação marcada em que a importação deve ser interrompida. Esse campo é equivalente à palavra-chave STOPATMARK e se aplica apenas ao Cloud SQL para SQL Server. |
EncryptionOptions
| Representação JSON |
|---|
{ "certPath": string, "pvkPath": string, "pvkPassword": string, "keepEncrypted": boolean } |
| Campos | |
|---|---|
certPath |
Caminho do certificado (.cer) no Cloud Storage, no formato |
pvkPath |
Caminho da chave particular do certificado (.pvk) no Cloud Storage, no formato |
pvkPassword |
A senha que criptografa a chave particular. |
keepEncrypted |
Opcional. Se o arquivo importado permanece criptografado. |
BoolValue
| Representação JSON |
|---|
{ "value": boolean } |
| Campos | |
|---|---|
value |
O valor booleano. |
SqlImportOptions
| Representação JSON |
|---|
{
"threads": integer,
"parallel": boolean,
"postgresImportOptions": {
object ( |
| Campos | |
|---|---|
threads |
Opcional. O número de linhas de execução a serem usadas para importação paralela. |
parallel |
Opcional. Se a importação deve ser paralela ou não. |
postgresImportOptions |
Opcional. Opções para importar de uma instância do Cloud SQL para PostgreSQL. |
Int32Value
| Representação JSON |
|---|
{ "value": integer } |
| Campos | |
|---|---|
value |
O valor int32. |
PostgresImportOptions
| Representação JSON |
|---|
{ "clean": boolean, "ifExists": boolean } |
| Campos | |
|---|---|
clean |
Opcional. A flag --clean para o utilitário pg_restore. Essa flag só se aplica se você tiver ativado o Cloud SQL para importar arquivos em paralelo. |
ifExists |
Opcional. A flag "--if-exists" para o utilitário pg_restore. Essa flag só se aplica se você tiver ativado o Cloud SQL para importar arquivos em paralelo. |
SqlTdeImportOptions
| Representação JSON |
|---|
{ "certificatePath": string, "privateKeyPath": string, "privateKeyPassword": string, "name": string } |
| Campos | |
|---|---|
certificatePath |
Obrigatório. Caminho para a chave pública do certificado TDE no formato gs://bucketName/fileName. A instância precisa ter acesso de leitura ao arquivo. Aplicável apenas a instâncias do SQL Server. |
privateKeyPath |
Obrigatório. Caminho para a chave privada do certificado TDE no formato gs://bucketName/fileName. A instância precisa ter acesso de leitura ao arquivo. Aplicável apenas a instâncias do SQL Server. |
privateKeyPassword |
Obrigatório. A senha que criptografa a chave privada. |
name |
Obrigatório. Nome do certificado. Aplicável apenas a instâncias do SQL Server. |
ExportContext
| Representação JSON |
|---|
{ "uri": string, "databases": [ string ], "kind": string, "sqlExportOptions": { object ( |
| Campos | |
|---|---|
uri |
O caminho do arquivo no Google Cloud Storage em que a exportação será armazenada. O URI está no formato |
databases[] |
Bancos de dados a serem exportados. |
kind |
Esse valor é sempre |
sqlExportOptions |
Opções para exportar dados como instruções SQL. |
csvExportOptions |
Opções para exportar dados como CSV. Somente instâncias |
fileType |
O tipo de arquivo do URI especificado. |
offload |
Se uma exportação sem servidor será realizada. |
bakExportOptions |
Opções para exportar dados como arquivos BAK. |
tdeExportOptions |
Opcional. Parâmetros de exportação específicos para certificados TDE do SQL Server |
SqlExportOptions
| Representação JSON |
|---|
{ "tables": [ string ], "schemaOnly": boolean, "mysqlExportOptions": { object ( |
| Campos | |
|---|---|
tables[] |
Tabelas a serem exportadas, ou que foram exportadas, do banco de dados especificado. Se você especificar tabelas, especifique apenas um banco de dados. Para instâncias do PostgreSQL, é possível especificar apenas uma tabela. |
schemaOnly |
Exportar apenas esquemas. |
mysqlExportOptions |
|
threads |
Opcional. O número de linhas de execução a serem usadas para exportação paralela. |
parallel |
Opcional. Se a exportação deve ser paralela ou não. |
postgresExportOptions |
Opcional. Opções para exportar de uma instância do Cloud SQL para PostgreSQL. |
MysqlExportOptions
| Representação JSON |
|---|
{ "masterData": integer } |
| Campos | |
|---|---|
masterData |
Opção para incluir a instrução SQL necessária para configurar a replicação. Se definido como |
PostgresExportOptions
| Representação JSON |
|---|
{ "clean": boolean, "ifExists": boolean } |
| Campos | |
|---|---|
clean |
Opcional. Use essa opção para incluir DROP
Instruções SQL. Use estas instruções para excluir objetos do banco de dados antes de executar a operação de importação. |
ifExists |
Opcional. Opção para incluir uma instrução SQL IF EXISTS com cada instrução DROP produzida por clean. |
SqlCsvExportOptions
| Representação JSON |
|---|
{ "selectQuery": string, "escapeCharacter": string, "quoteCharacter": string, "fieldsTerminatedBy": string, "linesTerminatedBy": string } |
| Campos | |
|---|---|
selectQuery |
A consulta de seleção usada para extrair os dados. |
escapeCharacter |
Especifica o caractere que precisa aparecer antes de um caractere de dados que precisa de escape. |
quoteCharacter |
Especifica o caractere de aspas a ser usado quando um valor de dados é colocado entre aspas. |
fieldsTerminatedBy |
Especifica o caractere que separa as colunas em cada linha do arquivo. |
linesTerminatedBy |
Usado para separar linhas. Se uma linha não tiver todos os campos, o restante das colunas será definido com os valores padrão. |
SqlBakExportOptions
| Representação JSON |
|---|
{
"striped": boolean,
"stripeCount": integer,
"bakType": enum ( |
| Campos | |
|---|---|
striped |
Se a exportação deve ser listrada ou não. |
stripeCount |
Opção para especificar quantas listras usar na exportação. Se estiver em branco e o valor do campo listrado for verdadeiro, o número de listras será escolhido automaticamente. |
bakType |
O tipo do arquivo BAK será "export", "FULL" ou "DIFF", somente para SQL Server. |
copyOnly |
Descontinuado: copy_only foi descontinuado. Use differential_base em vez disso |
differentialBase |
Se o backup pode ser usado como uma cópia de base diferencial, o backup copy_only não pode ser usado como base diferencial. |
exportLogStartTime |
Opcional. O carimbo de data/hora de início em que o registro de transações será incluído na operação de exportação. Formato RFC 3339 (por exemplo, Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: |
exportLogEndTime |
Opcional. O carimbo de data/hora de término em que o registro de transações será incluído na operação de exportação. Formato RFC 3339 (por exemplo, Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: |
SqlTdeExportOptions
| Representação JSON |
|---|
{ "certificatePath": string, "privateKeyPath": string, "privateKeyPassword": string, "name": string } |
| Campos | |
|---|---|
certificatePath |
Obrigatório. Caminho para a chave pública do certificado TDE no formato gs://bucketName/fileName. A instância precisa ter acesso de gravação ao bucket. Aplicável apenas a instâncias do SQL Server. |
privateKeyPath |
Obrigatório. Caminho para a chave privada do certificado TDE no formato gs://bucketName/fileName. A instância precisa ter acesso de gravação ao local. Aplicável apenas a instâncias do SQL Server. |
privateKeyPassword |
Obrigatório. A senha que criptografa a chave privada. |
name |
Obrigatório. Nome do certificado. Aplicável apenas a instâncias do SQL Server. |
BackupContext
| Representação JSON |
|---|
{ "backupId": string, "kind": string, "name": string } |
| Campos | |
|---|---|
backupId |
O identificador do backup. |
kind |
Esse valor é sempre |
name |
O nome do backup. Formato: projects/{project}/backups/{backup} |
PreCheckMajorVersionUpgradeContext
| Representação JSON |
|---|
{ "targetDatabaseVersion": enum ( |
| Campos | |
|---|---|
targetDatabaseVersion |
Obrigatório. A versão de destino do banco de dados para fazer upgrade. |
preCheckResponse[] |
Apenas saída. As respostas da operação de pré-verificação. |
kind |
Opcional. Esse valor é sempre |
PreCheckResponse
| Representação JSON |
|---|
{ "actionsRequired": [ string ], // Union field |
| Campos | |
|---|---|
actionsRequired[] |
As ações que o usuário precisa realizar. Use "repeated" para várias ações. |
Campo de união
|
|
message |
A mensagem a ser exibida para o usuário. |
Campo de união
|
|
messageType |
O tipo de mensagem, seja de informação, aviso ou erro. |
AcquireSsrsLeaseContext
| Representação JSON |
|---|
{ // Union field |
| Campos | |
|---|---|
Campo de união
|
|
setupLogin |
O nome de usuário a ser usado como login de configuração para se conectar ao servidor de banco de dados na configuração do SSRS. |
Campo de união
|
|
serviceLogin |
O nome de usuário a ser usado como login de serviço para se conectar ao banco de dados de relatórios na configuração do SSRS. |
Campo de união
|
|
reportDatabase |
O banco de dados de relatórios a ser usado para a configuração do SSRS. |
Campo de união
|
|
duration |
Duração do lease necessária para a configuração do SSRS. Duração em segundos com até nove dígitos fracionários, terminando em " |
Duração
| Representação JSON |
|---|
{ "seconds": string, "nanos": integer } |
| Campos | |
|---|---|
seconds |
Segundos assinados do período. Precisa estar entre -315.576.000.000 e +315.576.000.000 (inclusive). Observação: esses limites são calculados da seguinte forma: 60 s/min * 60 min/h * 24 h/dia * 365,25 dias/ano * 10.000 anos |
nanos |
Frações assinadas de um segundo com resolução de nanossegundos do período. Durações menores que um segundo são representadas com um campo |
SqlSubOperationType
| Representação JSON |
|---|
{ // Union field |
| Campos | |
|---|---|
Campo de união sub_operation_details. Detalhes da suboperação correspondentes ao tipo de operação. sub_operation_details pode ser apenas de um dos tipos a seguir: |
|
maintenanceType |
O tipo de manutenção a ser realizada na instância. |
Anotações de ferramentas
Dica destrutiva: ❌ | Dica idempotente: ❌ | Dica somente leitura: ✅ | Dica de mundo aberto: ❌