Condividi tramite


Panoramica degli strumenti di Database di Azure per MySQL per il server MCP di Azure

Il server MCP di Azure consente di gestire i server, i database e le tabelle di Database di Azure per MySQL usando i prompt del linguaggio naturale. Semplificare la gestione delle risorse mySQL senza sintassi complessa.

Database di Azure per MySQL è un servizio di database relazionale completamente gestito basato sull'edizione community di MySQL. Usarlo per ospitare un database MySQL in Azure. Gestisce carichi di lavoro cruciali con prestazioni prevedibili e scalabilità dinamica.

Annotazioni

Parametri degli strumenti: gli strumenti del server MCP di Azure definiscono i parametri per i dati necessari per completare le attività. Alcuni di questi parametri sono specifici di ogni strumento e sono documentati di seguito. Altri parametri sono globali e condivisi da tutti gli strumenti. Per altre informazioni, vedere Parametri degli strumenti.

Database: elencare tutti i database

Elencare tutti i database disponibili nell'istanza del server flessibile di Database di Azure per MySQL specificata. Questo comando fornisce visibilità sulla struttura del database e consente di identificare i database per le operazioni di connessione ed esecuzione di query.

Alcuni prompt di esempio includono:

  • Elencare i database: "Elencare tutti i database nel server 'my-mysql-server' nel gruppo di risorse 'database-rg' con l'utente 'dbadmin'"
  • Mostra database: "Mostra tutti i database nel server MySQL 'prod-mysql-server' nel gruppo di risorse 'prod-rg' con l'utente 'appuser'"
  • Filtrare in base al nome: "Elencare i database nel server 'dev-mysql-server' nel gruppo di risorse 'dev-rg' con l'utente 'developer' che inizia con 'test'"
  • Elenco nel gruppo di risorse: "Elencare i database nel server 'analytics-mysql-server' nel gruppo di risorse 'analytics-rg' con l'utente 'analyst'"
  • Visualizzare i database accessibili dall'utente: "Elencare i database accessibili dall'utente 'readonly' nel server 'report-mysql-server' nel gruppo di risorse 'reporting-rg'"
Parametro Obbligatorio o facoltativo Description
Gruppo di risorse Obbligatorio Nome del gruppo di risorse di Azure. Si tratta di un contenitore logico per le risorse di Azure.
User Obbligatorio Nome utente per accedere al server MySQL.
Server Obbligatorio Accesso al server MySQL.

Hint per l'annotazione degli strumenti:

Distruttivo: ❌ | Idempotente: ✅ | Open World: ❌ | Sola lettura: ✅ | Segreto: ❌ | Locale obbligatorio: ❌

Database: query

Eseguire una query SQL SELECT sicura di sola lettura su un database in un server flessibile di Database di Azure per MySQL. Usare questo strumento per esplorare o recuperare i dati della tabella senza modificarli.

Procedure consigliate:

  • Elencare solo le colonne necessarie (evitare SELECT *).
  • Aggiungere filtri WHERE per restringere i risultati.
  • Usare LIMIT/OFFSET per il paging.
  • Usare ORDER BY per ottenere risultati deterministici.
  • Evitare di restituire dati sensibili non necessari.

Permesso:

  • Sono consentite solo singole istruzioni SELECT.

Non consentito:

  • Istruzioni non SELECT (INSERT, UPDATE, DELETE, REPLACE, MERGE, TRUNCATE, ALTER, CREATE, DROP).
  • Più istruzioni.
  • Commenti che nascondono le operazioni di scrittura.
  • Istruzioni di controllo delle transazioni (BEGIN, COMMIT, ROLLBACK).
  • INTO OUTFILE e altre parole chiave distruttive.

Esempio:
SELECT ID, name, status FROM customers WHERE status = 'Active' ORDER BY name LIMIT 50;

Alcuni prompt di esempio includono:

  • Eseguire una query: "Eseguire una query 'SELECT id, name FROM customers WHERE status = 'Active' ORDER BY name LIMIT 50' on database 'salesdb' on server 'prod-mysql-server' in resource group 'sales-rg' with user 'appuser'"
  • Conteggio righe: "Esegui query SELECT COUNT(*) FROM orders WHERE status = 'completed' on database 'salesdb' on server 'prod-mysql-server' in resource group 'sales-rg' with user 'analyst'"
  • Query filtrata: "Esegui query 'SELECT name FROM users WHERE created_at > '2025-01-01' ORDER BY created_at LIMIT 25' on database 'appdb' on server 'app-mysql-server' in resource group 'app-rg' with user 'developer'"
  • Prodotti principali: "Esegui query 'SELECT product_id, SUM(quantity) AS total FROM sales WHERE sale_date >= '2025-01-01' GROUP BY product_id ORDER BY total DESC LIMIT 10' on database 'analytics' on server 'analytics-mysql-server' in resource group 'analytics-rg' with user 'analyst'"
  • Valori distinti: "Eseguire query 'SELECT DISTINCT category FROM products LIMIT 20' on database 'inventory' on server 'inventory-mysql-server' in resource group 'inventory-rg' with user 'readonly'" (Esegui query 'SELECT DISTINCT category FROM products LIMIT 20' nel database 'inventory' nel server 'inventory-mysql-server' nel gruppo di risorse 'inventory-rg' con l'utente 'readonly'"
Parametro Obbligatorio o facoltativo Description
Gruppo di risorse Obbligatorio Nome del gruppo di risorse di Azure. Si tratta di un contenitore logico per le risorse di Azure.
User Obbligatorio Nome utente per accedere al server MySQL.
Server Obbligatorio Accesso al server MySQL.
Banca dati Obbligatorio Database MySQL a cui accedere.
Quesito Obbligatorio Query SQL da eseguire su un database MySQL.

Hint per l'annotazione degli strumenti:

Distruttivo: ❌ | Idempotente: ✅ | Open World: ❌ | Sola lettura: ✅ | Segreto: ❌ | Locale obbligatorio: ❌

Server: config get

Recupera i dettagli di configurazione completi per l'istanza del server flessibile di Database di Azure per MySQL specificata. Questo comando fornisce informazioni dettagliate sulle impostazioni del server, i parametri delle prestazioni, le configurazioni di sicurezza e le caratteristiche operative essenziali per l'amministrazione e l'ottimizzazione del database. Restituisce i dati di configurazione in formato JSON, incluse ServerNamele proprietà , LocationVersion, SKUStorageSizeGBBackupRetentionDayse .GeoRedundantBackup

Alcuni prompt di esempio includono:

  • Ottenere la configurazione del server: "Ottenere i dettagli di configurazione per il server 'prod-mysql-server' nel gruppo di risorse 'database-rg' con l'utente 'dbadmin'"
  • Mostra versione e SKU: "Mostra la versione e lo SKU del motore MySQL per il server 'app-mysql-server' nel gruppo di risorse 'app-rg' con l'utente 'developer'"
  • Ottenere la conservazione dei backup: "Qual è il periodo di conservazione dei backup per il server 'backup-mysql-server' nel gruppo di risorse 'backup-rg' con l'utente 'backup-admin'?"
  • Mostra allocazione archiviazione: "Mostra allocazione di archiviazione per il server 'analytics-mysql-server' nel gruppo di risorse 'analytics-rg' con l'utente 'analyst'"
  • Ottenere la configurazione completa: "Ottenere la configurazione completa per il server 'prod-mysql-server' nel gruppo di risorse 'prod-rg' con l'utente 'sysadmin'"
Parametro Obbligatorio o facoltativo Description
Gruppo di risorse Obbligatorio Nome del gruppo di risorse di Azure. Si tratta di un contenitore logico per le risorse di Azure.
User Obbligatorio Nome utente per accedere al server MySQL.
Server Obbligatorio Accesso al server MySQL.

Hint per l'annotazione degli strumenti:

Distruttivo: ❌ | Idempotente: ✅ | Open World: ❌ | Sola lettura: ✅ | Segreto: ❌ | Locale obbligatorio: ❌

Server: elencare tutte le istanze nel gruppo di risorse

Elencare tutte le istanze del server flessibile di Database di Azure per MySQL all'interno del gruppo di risorse specificato. Questo comando fornisce un inventario delle risorse del server MySQL disponibili, inclusi i relativi nomi e lo stato corrente, in modo da poter gestire in modo efficiente i server e pianificare le risorse.

Alcuni prompt di esempio includono:

  • Elencare i server: "Elencare tutte le istanze del server flessibile MySQL nel gruppo di risorse 'database-rg' con l'utente 'dbadmin'"
  • Elencare i server nel gruppo di risorse: "Elencare i server MySQL nel gruppo di risorse 'prod-rg' con l'utente 'sysadmin'"
  • Filtrare in base all'area: "Mostra i server MySQL nell'area 'eastus' nel gruppo di risorse 'eastus-rg' con l'utente 'operator'"
  • Mostra gli stati del server: "Elencare i server insieme al relativo stato corrente nel gruppo di risorse 'monitoring-rg' con l'utente 'monitor'"
  • Trovare il server in base al nome: "Trovare il server denominato 'prod-mysql-server' nel gruppo di risorse 'prod-rg' con l'utente 'developer'"
Parametro Obbligatorio o facoltativo Description
Gruppo di risorse Obbligatorio Nome del gruppo di risorse di Azure. Si tratta di un contenitore logico per le risorse di Azure.
User Obbligatorio Nome utente per accedere al server MySQL.

Hint per l'annotazione degli strumenti:

Distruttivo: ❌ | Idempotente: ✅ | Open World: ❌ | Sola lettura: ✅ | Segreto: ❌ | Locale obbligatorio: ❌

Server: get parameter

Recuperare il valore corrente di un singolo parametro di configurazione del server in un server flessibile di Database di Azure per MySQL. Usare questo comando del server per controllare un'impostazione, ad esempio max_connections, wait_timeouto slow_query_log, prima di modificarla.

Alcuni prompt di esempio includono:

  • Ottenere il valore del parametro: "Ottenere il valore del parametro 'max_connections' per il server 'prod-mysql-server' nel gruppo di risorse 'database-rg' con l'utente 'dbadmin'"
  • Controllare slow_query_log: "Ottenere il parametro 'slow_query_log' nel server 'analytics-mysql-server' nel gruppo di risorse 'analytics-rg' con l'utente 'analyst'"
  • Ottenere wait_timeout: "Mostra il valore del parametro 'wait_timeout' per il server 'app-mysql-server' nel gruppo di risorse 'app-rg' con l'utente 'developer'"
  • Mostra dimensioni pool di buffer: "Ottenere il parametro 'innodb_buffer_pool_size' per il server 'prod-mysql-server' nel gruppo di risorse 'prod-rg' con l'utente 'sysadmin'"
  • Recuperare il parametro prima della modifica: "Recuperare il parametro 'max_allowed_packet' nel server 'perf-mysql-server' nel gruppo di risorse 'performance-rg' con l'utente 'dba' prima dell'aggiornamento"
Parametro Obbligatorio o facoltativo Description
Gruppo di risorse Obbligatorio Nome del gruppo di risorse di Azure. Si tratta di un contenitore logico per le risorse di Azure.
User Obbligatorio Nome utente per accedere al server MySQL.
Server Obbligatorio Accesso al server MySQL.
Parameter Obbligatorio Parametro MySQL a cui accedere.

Hint per l'annotazione degli strumenti:

Distruttivo: ❌ | Idempotente: ✅ | Open World: ❌ | Sola lettura: ✅ | Segreto: ❌ | Locale obbligatorio: ❌

Server: impostare il parametro

Imposta o aggiorna un parametro di configurazione del server MySQL su un nuovo valore. Usare questo comando per ottimizzare le prestazioni, la sicurezza o il comportamento operativo. Questo comando consente la gestione della configurazione ottimizzata con la convalida per garantire che le modifiche dei parametri siano compatibili con lo stato e i vincoli correnti del server.

Alcuni prompt di esempio includono:

  • Impostare il parametro : "Impostare il parametro 'max_connections' sul valore '500' nel server 'prod-mysql-server' nel gruppo di risorse 'database-rg' con l'utente 'dbadmin'"
  • Abilitare il log delle query lente: "Impostare il parametro 'slow_query_log' sul valore 'ON' nel server 'analytics-mysql-server' nel gruppo di risorse 'analytics-rg' con l'utente 'dba'"
  • Modificare il timeout: "Impostare il parametro 'wait_timeout' sul valore '300' nel server 'app-mysql-server' nel gruppo di risorse 'app-rg' con l'utente 'sysadmin'"
  • Aumentare il pool di buffer: "Impostare il parametro 'innodb_buffer_pool_size' sul valore '2G' nel server 'prod-mysql-server' nel gruppo di risorse 'prod-rg' con l'utente 'dba'"
  • Modificare il numero massimo di pacchetti consentiti: "Impostare il parametro 'max_allowed_packet' sul valore '64M' nel server 'perf-mysql-server' nel gruppo di risorse 'performance-rg' con l'utente 'dbadmin'"
Parametro Obbligatorio o facoltativo Description
Gruppo di risorse Obbligatorio Nome del gruppo di risorse di Azure. Si tratta di un contenitore logico per le risorse di Azure.
User Obbligatorio Nome utente per accedere al server MySQL.
Server Obbligatorio Accesso al server MySQL.
Parameter Obbligatorio Parametro MySQL a cui accedere.
Valore Obbligatorio Valore da impostare per il parametro MySQL.

Hint per l'annotazione degli strumenti:

Distruttivo: ✅ | Idempotente: ✅ | Open World: ❌ | Sola lettura: ❌ | Segreto: ❌ | Locale obbligatorio: ❌

Tabella: elencare tutte le tabelle nel database

Enumerare tutte le tabelle all'interno di un database specificato in un'istanza del server flessibile di Database di Azure per MySQL. Questo comando fornisce un inventario completo degli oggetti tabella, semplificando l'esplorazione del database, l'analisi dello schema e la comprensione dell'architettura dei dati per le attività di sviluppo.

Alcuni prompt di esempio includono:

  • Elencare le tabelle: "Elencare tutte le tabelle nel database 'salesdb' nel server 'prod-mysql-server' nel gruppo di risorse 'sales-rg' con l'utente 'appuser'"
  • Mostra tabelle: "Quali tabelle esistono nel database 'inventory' nel server 'inventory-mysql-server' nel gruppo di risorse 'inventory-rg' con l'utente 'developer'?"
  • Filtrare le tabelle: "Elencare le tabelle a partire da 'tmp_' nel database 'appdb' nel server 'app-mysql-server' nel gruppo di risorse 'app-rg' con l'utente 'developer'"
  • Conteggio tabelle: "Quante tabelle si trovano nel database 'analytics' nel server 'analytics-mysql-server' nel gruppo di risorse 'analytics-rg' con l'utente 'analyst'?"
  • Tabella di ricerca: "Trovare la tabella 'orders' nel database 'salesdb' nel server 'sales-mysql-server' nel gruppo di risorse 'sales-rg' con l'utente 'readonly'"
Parametro Obbligatorio o facoltativo Description
Gruppo di risorse Obbligatorio Nome del gruppo di risorse di Azure. Si tratta di un contenitore logico per le risorse di Azure.
User Obbligatorio Nome utente per accedere al server MySQL.
Server Obbligatorio Accesso al server MySQL.
Banca dati Obbligatorio Database MySQL a cui accedere.

Hint per l'annotazione degli strumenti:

Distruttivo: ❌ | Idempotente: ✅ | Open World: ❌ | Sola lettura: ✅ | Segreto: ❌ | Locale obbligatorio: ❌

Tabella: ottenere lo schema della tabella

Recuperare informazioni dettagliate sullo schema per una tabella specifica all'interno di un database del server flessibile di Database di Azure per MySQL. Questo comando fornisce metadati completi, tra cui definizioni di colonna, tipi di dati, vincoli, indici e relazioni. Queste informazioni sono essenziali per comprendere la struttura delle tabelle e supportare lo sviluppo di applicazioni.

Alcuni prompt di esempio includono:

  • Ottenere lo schema della tabella: "Mostra schema per la tabella 'orders' nel database 'salesdb' nel server 'sales-mysql-server' nel gruppo di risorse 'sales-rg' con l'utente 'developer'"
  • Ottenere l'elenco di colonne: "Elencare colonne e tipi di dati per la tabella 'customers' nel database 'crm' nel server 'crm-mysql-server' nel gruppo di risorse 'crm-rg' con l'utente 'appuser'"
  • Mostra informazioni sull'indice: "Mostra indici per la tabella 'transactions' nel database 'billing' nel server 'billing-mysql-server' nel gruppo di risorse 'billing-rg' con l'utente 'analyst'"
  • Trovare la chiave primaria: "Qual è la chiave primaria per la tabella 'users' nel database 'auth' nel server 'auth-mysql-server' nel gruppo di risorse 'auth-rg' con l'utente 'developer'?"
  • Mostra la definizione completa: "Ottenere la definizione di tabella completa per la tabella 'inventory_items' nel database 'inventory' nel server 'inventory-mysql-server' nel gruppo di risorse 'inventory-rg' con l'utente 'readonly'"
Parametro Obbligatorio o facoltativo Description
Gruppo di risorse Obbligatorio Nome del gruppo di risorse di Azure. Si tratta di un contenitore logico per le risorse di Azure.
User Obbligatorio Nome utente per accedere al server MySQL.
Server Obbligatorio Accesso al server MySQL.
Banca dati Obbligatorio Database MySQL a cui accedere.
Tabella Obbligatorio Tabella MySQL a cui accedere.

Hint per l'annotazione degli strumenti:

Distruttivo: ❌ | Idempotente: ✅ | Open World: ❌ | Sola lettura: ✅ | Segreto: ❌ | Locale obbligatorio: ❌