MySQL

Il connettore MySQL consente di inserire, leggere, aggiornare ed eliminare righe in un database MySQL.

Versioni supportate

MySQL versioni da 5.0 a 8.0

Prima di iniziare

Prima di utilizzare il connettore MySQL, esegui le seguenti attività:

  • Nel tuo progetto Google Cloud:
    • Concedi il ruolo IAM roles/connectors.admin all'utente che configura il connettore.
    • Concedi i seguenti ruoli IAM all'account di servizio che vuoi utilizzare per il connettore:
      • roles/secretmanager.viewer
      • roles/secretmanager.secretAccessor

      Un account di servizio è un tipo speciale di Account Google destinato a rappresentare un utente non umano che deve autenticarsi ed essere autorizzato ad accedere ai dati nelle API di Google. Se non hai un account di servizio, devi crearne uno. Per maggiori informazioni, consulta la pagina Creazione di un account di servizio.

    • Abilita i seguenti servizi:
      • secretmanager.googleapis.com (API Secret Manager)
      • connectors.googleapis.com (API Connectors)

      Per informazioni su come abilitare i servizi, vedi Attivazione dei servizi.

    Se questi servizi o autorizzazioni non sono stati abilitati in precedenza per il tuo progetto, ti viene richiesto di abilitarli durante la configurazione del connettore.

Configura il connettore

Per configurare il connettore è necessario creare una connessione all'origine dati (sistema di backend). Una connessione è specifica per un'origine dati. Se disponi di molte origini dati, devi creare una connessione separata per ciascuna. Per creare una connessione:

  1. Fai clic su +Crea nuova per aprire la pagina Crea connessione.
  2. Nella sezione Posizione, scegli la località per la connessione.
    1. Nell'elenco Regione, seleziona la regione in cui vuoi creare la connessione.

      Per l'elenco di tutte le aree geografiche supportate, consulta la sezione Località.

    2. Fai clic su Avanti.
  3. Nella sezione Dettagli connessione, inserisci i seguenti dettagli:
    1. Nell'elenco Connettore, seleziona MySQL (anteprima).
    2. Nell'elenco Versione connettore, seleziona la versione del connettore.
    3. Nel campo Nome connessione, inserisci un nome per l'istanza di connessione.

      I nomi delle connessioni devono soddisfare i seguenti criteri:

      • Utilizza lettere, numeri o trattini.
      • Le lettere devono essere minuscole.
      • I nomi devono iniziare con una lettera e terminare con una lettera o un numero.
      • I nomi non possono contenere più di 63 caratteri.
    4. (Facoltativo) Nel campo Descrizione, aggiungi una descrizione dell'istanza di connessione.
    5. (Facoltativo) Abilita Cloud Logging.
    6. Dall'elenco Account di servizio, seleziona un account di servizio che disponga dei ruoli richiesti.
    7. Nel campo Nome database, inserisci il nome del database MySQL.
    8. Facoltativamente, configura le impostazioni del nodo di connessione:

      • Numero minimo di nodi: inserisci il numero minimo di nodi di connessione.
      • Numero massimo di nodi: inserisci il numero massimo di nodi di connessione.

      Un nodo è un'unità (o una replica) di una connessione che elabora le transazioni. Sono necessari più nodi per elaborare più transazioni per una connessione e, al contrario, sono necessari meno nodi per elaborare un numero inferiore di transazioni. Per capire in che modo i nodi influiscono sui prezzi del connettore, consulta Prezzi dei nodi di connessione. Se non inserisci alcun valore, per impostazione predefinita il numero minimo di nodi viene impostato su 2 (per una migliore disponibilità) e il numero massimo di nodi viene impostato su 50.

    9. Utilizza proxy: seleziona questa casella di controllo per configurare un server proxy per la connessione e configurare i seguenti valori:
      • Schema di autenticazione proxy: seleziona il tipo di autenticazione per eseguire l'autenticazione con il server proxy. Sono supportati i seguenti tipi di autenticazione:
        • Di base: autenticazione HTTP di base.
        • Digest: autenticazione HTTP digest.
      • Utente proxy: un nome utente da utilizzare per l'autenticazione con il server proxy.
      • Password proxy: il secret di Secret Manager della password dell'utente.
      • Tipo SSL proxy: il tipo SSL da utilizzare per la connessione al server proxy. Sono supportati i seguenti tipi di autenticazione:
        • Automatica: l'impostazione predefinita. Se l'URL è HTTPS, viene utilizzata l'opzione Tunnel. Se l'URL è HTTP, viene utilizzata l'opzione MAI.
        • Sempre: la connessione è sempre SSL abilitata.
        • Mai: la connessione non è abilitata per SSL.
        • Tunnel: la connessione avviene attraverso un proxy di tunneling. Il server proxy apre una connessione con l'host remoto e il traffico passa attraverso il proxy.
      • Nella sezione Server proxy, inserisci i dettagli del server proxy.
        1. Fai clic su + Aggiungi destinazione.
        2. Seleziona un Tipo di destinazione.
          • Indirizzo host: specifica il nome host o l'indirizzo IP della destinazione.

            Se vuoi stabilire una connessione privata al tuo sistema di backend, segui questi passaggi:

    10. (Facoltativo) Per aggiungere un'etichetta alla connessione, fai clic su +Aggiungi etichetta.
    11. Fai clic su Avanti.
    12. Nella sezione Destinazioni, inserisci i dettagli dell'host remoto (sistema di backend) a cui vuoi connetterti.
      • Nell'elenco Destination Type (Tipo di destinazione), seleziona un indirizzo host.
        • Seleziona Indirizzo host dall'elenco per specificare il nome host o l'indirizzo IP della destinazione.
        • Se vuoi stabilire una connessione privata ai tuoi sistemi di backend, seleziona Collegamento endpoint dall'elenco, quindi seleziona il collegamento dell'endpoint richiesto dall'elenco Collegamento endpoint.

        Se vuoi stabilire una connessione pubblica ai tuoi sistemi di backend con maggiore sicurezza, puoi considerare di configurare indirizzi IP in uscita statici per le tue connessioni e quindi configurare le regole del firewall in modo da inserire nella lista consentita solo gli indirizzi IP statici specifici.

        Per inserire altre destinazioni, fai clic su + Aggiungi destinazione.

      • Fai clic su Avanti.
    13. Nella sezione Autenticazione, puoi fornire le credenziali:
      • Nel campo Nome utente, inserisci il nome utente MySQL per la connessione.
      • Nel campo Password, inserisci il secret di Secret Manager contenente la password associata al nome utente MySQL.
        • Se hai già creato un secret e non è disponibile nell'elenco, seleziona Inserisci il secret manualmente. Nella finestra di dialogo Aggiungi un secret tramite ID risorsa, copia e incolla l'ID risorsa da Secret Manager.
          • Per utilizzare la versione più recente, copia e incolla l'ID risorsa dal secret principale, nel formato: "projects/project-number/secrets/secret-name"
          • Per selezionare una versione specifica, copia e incolla l'ID risorsa per quella versione specifica, nel formato "projects/project-number/secrets/secret-name/versions/1"

          Per aggiungere il secret, fai clic su Add Secret (Aggiungi secret).

        • Se non hai creato un secret da utilizzare con MySQL, fai clic su Crea nuovo secret. Nella finestra di dialogo Crea secret, inserisci i seguenti dettagli:
          • Nel campo Nome, inserisci il nome del secret.
          • Nel campo Valore secret, inserisci i contenuti del secret o carica un file contenente il secret.
          • Fai clic su Crea secret.
      • Nell'elenco Versione secret, seleziona la versione del secret Password dall'elenco delle versioni disponibili nel menu a discesa.
      • Fai clic su Avanti.
  4. Nella sezione Rivedi, esamina i dettagli relativi a connessione e autenticazione.
  5. Fai clic su Crea.

Configura autenticazione

Inserisci i dettagli in base all'autenticazione che vuoi utilizzare.

  • Nome utente e password
    • Nome utente: il nome utente Mysql da utilizzare per la connessione.
    • Password: secret di Secret Manager contenente la password associata al nome utente Mysql.

Entità, operazioni e azioni

Tutti i connettori di integrazione forniscono un livello di astrazione per gli oggetti dell'applicazione connessa. Puoi accedere agli oggetti di un'applicazione solo tramite questa astrazione. L'astrazione ti viene esposta sotto forma di entità, operazioni e azioni.

  • Entità: un'entità può essere considerata come un oggetto o una raccolta di proprietà nell'applicazione o nel servizio collegato. La definizione di un'entità è diversa da un connettore a un connettore. Ad esempio, in un connettore di database le tabelle sono le entità, in un connettore file server le cartelle sono le entità, mentre in un connettore di sistema di messaggistica le code sono le entità.

    Tuttavia, è possibile che un connettore non supporti o non abbia entità. In questo caso, l'elenco Entities sarà vuoto.

  • Operazione: un'operazione è l'attività che è possibile eseguire su un'entità. Su un'entità puoi eseguire una qualsiasi delle seguenti operazioni:

    Selezionando un'entità dall'elenco disponibile, viene generato un elenco di operazioni disponibili per l'entità. Per una descrizione dettagliata delle operazioni, consulta le operazioni sull'entità dell'attività Connectors. Tuttavia, se un connettore non supporta nessuna delle operazioni relative alle entità, le operazioni non supportate non saranno elencate nell'elenco Operations.

  • Azione: un'azione è una funzione di prima classe resa disponibile per l'integrazione tramite l'interfaccia del connettore. Un'azione consente di apportare modifiche a una o più entità e variare da connettore a connettore. Normalmente, un'azione avrà alcuni parametri di input e un parametro di output. Tuttavia, è possibile che un connettore non supporti alcuna azione, nel qual caso l'elenco Actions sarà vuoto.

Limitazioni di sistema

Il connettore MySQL può elaborare 10 transazioni al secondo per nodo e limita qualsiasi transazione oltre questo limite. Per impostazione predefinita, Integration Connectors alloca due nodi (per una migliore disponibilità) per una connessione.

Per informazioni sui limiti applicabili a Integration Connectors, vedi Limiti.

Tipi di dati supportati

Di seguito sono riportati i tipi di dati supportati per questo connettore:

  • GRANDE
  • BINARIO
  • BIT
  • BOOLEANO
  • CHAR
  • DATA
  • DECIMALE
  • DOPPIO
  • FLOAT
  • INTEGER
  • LONGN VARCHAR
  • VARCAR LUNGO
  • NCHAR
  • NUMERIC
  • NVARCHAR
  • REALE
  • INT PICCOLO
  • TEMPO
  • TIMESTAMP
  • TINY INT
  • VARBINARIO
  • VARCHAR

Utilizzare Terraform per creare connessioni

Puoi utilizzare la risorsa Terraform per creare una nuova connessione.

Per scoprire come applicare o rimuovere una configurazione Terraform, vedi Comandi Terraform di base.

Per visualizzare un modello Terraform di esempio per la creazione di connessioni, vedi il modello di esempio.

Quando crei questa connessione utilizzando Terraform, devi impostare le seguenti variabili nel file di configurazione di Terraform:

Nome parametro Tipo di dati Obbligatorio Descrizione
database_name STRING True Il nome del database MySQL a cui connettersi.
proxy_enabled BOOLEANO False Seleziona questa casella di controllo per configurare un server proxy per la connessione.
proxy_auth_scheme ENUM False Il tipo di autenticazione da utilizzare per l'autenticazione sul proxy ProxyServer. I valori supportati sono: BASIC, DIGEST, NONE
proxy_user STRING False Un nome utente da utilizzare per l'autenticazione sul proxy ProxyServer.
proxy_password SECRET False Una password da utilizzare per l'autenticazione sul proxy ProxyServer.
proxy_ssltype ENUM False Il tipo SSL da utilizzare per la connessione al proxy ProxyServer. I valori supportati sono: AUTO, ALWAYS, NEVER, TUNNEL

Azioni

Questo connettore supporta l'esecuzione delle seguenti azioni:

  • stored procedure e funzioni definite dall'utente. Se nel backend sono presenti stored procedure e funzioni, queste sono elencate nella colonna Actions della finestra di dialogo Configure connector task.
  • Query SQL personalizzate. Per eseguire query SQL personalizzate, il connettore fornisce l'azione Esegui query personalizzata.

    Per creare una query personalizzata:

    1. Segui le istruzioni dettagliate per aggiungere un'attività dei connettori.
    2. Quando configuri l'attività del connettore, seleziona Azioni nel tipo di azione che vuoi eseguire.
    3. Nell'elenco Azione, seleziona Esegui query personalizzata, quindi fai clic su Fine.

      immagine che mostra l'esecuzione di una query personalizzata immagine che mostra l'esecuzione di una query personalizzata

    4. Espandi la sezione Input attività, quindi segui questi passaggi:
      1. Nel campo Timeout dopo, inserisci il numero di secondi di attesa prima che la query venga eseguita.

        Valore predefinito: 180 secondi.

      2. Nel campo Numero massimo di righe, inserisci il numero massimo di righe da restituire dal database.

        Valore predefinito: 25.

      3. Per aggiornare la query personalizzata, fai clic su Modifica script personalizzato. Viene visualizzata la finestra di dialogo Editor di script.

        immagine che mostra custom-sql-query immagine che mostra custom-sql-query

      4. Nella finestra di dialogo Editor di script, inserisci la query SQL e fai clic su Salva.

        Puoi utilizzare un punto interrogativo (?) in un'istruzione SQL per rappresentare un singolo parametro che deve essere specificato nell'elenco parametri di ricerca. Ad esempio, la seguente query SQL seleziona tutte le righe della tabella Employees corrispondenti ai valori specificati per la colonna LastName:

        SELECT * FROM Employees where LastName=?

      5. Se hai utilizzato dei punti interrogativi nella query SQL, devi aggiungere il parametro facendo clic su + Aggiungi nome parametro per ciascun punto. Durante l'esecuzione dell'integrazione, questi parametri sostituiscono in sequenza i punti interrogativi (?) nella query SQL. Ad esempio, se hai aggiunto tre punti interrogativi (?), devi aggiungere tre parametri in ordine sequenziale.

        immagine che mostra add-query-param immagine che mostra add-query-param

        Per aggiungere parametri di ricerca:

        1. Nell'elenco Tipo, seleziona il tipo di dati del parametro.
        2. Nel campo Valore, inserisci il valore del parametro.
        3. Per aggiungere più parametri, fai clic su + Aggiungi parametro di query.

Esempi di azioni

Esempio: trovare il valore maggiore

Questo esempio mostra come eseguire una funzione definita dall'utente;utente. In questo esempio, la funzione find_greater confronta due numeri interi e restituisce il numero intero maggiore.

  1. Nella finestra di dialogo Configure connector task, fai clic su Actions.
  2. Seleziona l'azione find_greater e fai clic su Fine.
  3. Nella sezione Input attività dell'attività Connettori, fai clic su connectorInputPayload e inserisci un valore simile al seguente nel campo Default Value:
    {
    "$1": 1.0,
    "$2": 5.0
    }
  4. Se l'esecuzione dell'azione ha esito positivo, il campo connectorOutputPayload dell'attività del connettore avrà un valore simile al seguente:

    [{
    "bignum": 5.0
    }]

Esempi di operazioni con entità

Esempio: elenca i record di un'entità

In questo esempio sono elencati i record dell'entità Users.

  1. Nella finestra di dialogo Configure connector task, fai clic su Entities.
  2. Seleziona Users dall'elenco Entity.
  3. Seleziona l'operazione List e fai clic su Fine.
  4. Nella sezione Input attività dell'attività Connettori, puoi impostare filterClause in base alle tue esigenze.

    Ad esempio, se imposti la clausola di filtro su employeeCode='5100' and startDate='2010-01-01 00:00:00', vengono elencati solo i record il cui dipendenteCode è 5100 e startDate è 2010-01-01 00:00:00.

Esempio: recupero di un singolo record da un'entità

Questo esempio recupera un record dall'entità Users.

  1. Nella finestra di dialogo Configure connector task, fai clic su Entities.
  2. Seleziona User dall'elenco Entity.
  3. Seleziona l'operazione Get e fai clic su Fine.
  4. Nella sezione Input attività dell'attività Connettori, fai clic su entityId e inserisci 103032 nel campo Valore predefinito.

    In questo caso, 103032 è il valore della chiave primaria dell'entità Users.

Esempio: eliminare un record da un'entità

Questo esempio elimina un record dall'entità Users.

  1. Nella finestra di dialogo Configure connector task, fai clic su Entities.
  2. Seleziona Users dall'elenco Entity.
  3. Seleziona l'operazione Delete e fai clic su Fine.
  4. Nella sezione Input attività dell'attività Connettori, fai clic su entityId e inserisci 113132 nel campo Valore predefinito.

    In alternativa, se l'entità ha chiavi primarie composte anziché specificare entityId, puoi impostare filterClause. Ad esempio: employeeCode='5100' and startDate='2010-01-01 00:00:00'.

Esempio: creare un record in un'entità

Questo esempio crea un record nell'entità Users.

  1. Nella finestra di dialogo Configure connector task, fai clic su Entities.
  2. Seleziona Users dall'elenco Entity.
  3. Seleziona l'operazione Create e fai clic su Fine.
  4. Nella sezione Input attività dell'attività Connettori, fai clic su connectorInputPayload e inserisci un valore simile al seguente nel campo Default Value:
    {
    "employeeCode": "5100",
    "startDate": "2010-01-01 00:00:00.0",
    "country": "US"
    }
    
  5. Se l'integrazione ha esito positivo, il campo connectorOutputPayload dell'attività del connettore avrà la risposta dell'operazione di creazione.

Esempio: aggiornare un record in un'entità

Questo esempio aggiorna un record nell'entità Users.

  1. Nella finestra di dialogo Configure connector task, fai clic su Entities.
  2. Seleziona Users dall'elenco Entity.
  3. Seleziona l'operazione Update e fai clic su Fine.
  4. Nella sezione Input attività dell'attività Connettori, fai clic su connectorInputPayload e inserisci un valore simile al seguente nel campo Default Value:
    {
    "country": "IN"
    }
  5. Nella sezione Input attività dell'attività Connettori, fai clic su entityId e inserisci 113132 nel campo Valore predefinito.

    In alternativa, se l'entità ha chiavi primarie composte anziché specificare entityId, puoi impostare filterClause. Ad esempio: employeeCode='5100' and startDate='2010-01-01 00:00:00'.

  6. Se l'integrazione ha esito positivo, il campo connectorOutputPayload dell'attività del connettore avrà la risposta dell'operazione di aggiornamento.

Utilizzare la connessione MySQL in un'integrazione

Dopo aver creato la connessione, la connessione diventa disponibile sia in Apigee Integration che in Application Integration. Puoi usare la connessione in un'integrazione tramite l'attività Connettori.

  • Per capire come creare e utilizzare l'attività Connectors in Apigee Integration, vedi Attività connettori.
  • Per capire come creare e utilizzare l'attività Connettori in Application Integration, vedi Attività connettori.

Inoltre, vedi il tutorial Eseguire operazioni CRUD su un database MySQL che mostra come creare una connessione MySQL e utilizzare la connessione in un'integrazione per eseguire operazioni di lettura e scrittura.

Ricevi assistenza dalla community Google Cloud

Puoi pubblicare le tue domande e discutere di questo connettore nella community Google Cloud nei forum di Cloud.

Passaggi successivi