MySQL, MariaDB e SingleStore

Dialetti che utilizzano queste istruzioni

MySQL, MariaDB e SingleStore (in precedenza MemSQL) condividono i requisiti di configurazione del database descritti in questa pagina.

Crittografia del traffico di rete

È una best practice criptare il traffico di rete tra l'applicazione Looker e il tuo database. Valuta una delle opzioni descritte nella pagina della documentazione Abilitare l'accesso sicuro ai database.

Se ti interessa utilizzare la crittografia SSL, consulta questa pagina della documentazione di MySQL.

Utenti e sicurezza

Per creare e concedere l'accesso richiesto all'utente Looker, segui le istruzioni nella sezione appropriata per la versione e il dialetto del tuo database:

MySQL 8.0.X:

In MySQL 8.0.X, il plug-in di autenticazione predefinito è caching_sha2_password. Looker utilizza il plug-in mysql_native_password per tentare l'autenticazione ai database MySQL tramite il driver JDBC. Perché questa versione di MySQL funzioni correttamente, devi eseguire i seguenti passaggi aggiuntivi:

  1. Configura il database MySQL in modo che utilizzi il plug-in mysql_native_password. Questa operazione può essere eseguita in diversi modi e dipende da come viene implementato il database MySQL 8 e dal tipo di accesso alla configurazione:

    • Inizia la procedura con il flag --default-auth=mysql_native_password

    • Imposta la proprietà nel file di configurazione my.cnf:

    [mysqld]
    default-authentication-plugin=mysql_native_password
    
    • Se l'istanza di database è ospitata tramite AWS RDS, imposta il parametro default_authentication_plugin tramite un gruppo di parametri RDS applicato a questa istanza di database.
  2. Esegui i seguenti comandi, sostituendo some_password_here con una password univoca e sicura:

    CREATE USER looker IDENTIFIED WITH mysql_native_password BY 'some_password_here';
    GRANT SELECT ON database_name.* TO 'looker'@'%';
    

MySQL 5.7.X e versioni precedenti, MariaDB e SingleStore:

Esegui i seguenti comandi, sostituendo some_password_here con una password univoca e sicura:

CREATE USER looker;
SET PASSWORD FOR looker = PASSWORD ('some_password_here');
GRANT SELECT ON database_name.* TO 'looker'@'%';

Configurazione dello schema temporaneo per le tabelle derivate permanenti

Questi dialetti del database supportano la creazione di tabelle derivate permanenti (PDT). Questa funzionalità può essere molto utile e ti consigliamo di attivarla quando possibile.

Per attivare le tabelle derivate persistenti, devi configurare uno schema temporaneo. I seguenti comandi mostrano un esempio di creazione di un database temporaneo e di concessione dei privilegi richiesti all'utente looker.

Puoi specificare il nome del database temporaneo nel campo Database temporaneo quando crei la connessione al database. Se non specifichi un nome per il database temporaneo, Looker genera un database temporaneo denominato looker_tmp. I seguenti comandi utilizzano looker_tmp, ma se hai specificato un nome di database temporaneo diverso, utilizza il tuo nome di database temporaneo anziché looker_tmp.

CREATE SCHEMA looker_tmp;
GRANT
  SELECT,
  INDEX,
  INSERT,
  UPDATE,
  DELETE,
  CREATE,
  DROP,
  ALTER,
  CREATE TEMPORARY TABLES
ON looker_tmp.* TO 'looker'@'%';

Per SingleStore o se il tuo database utilizza la replica basata su GTID, devi utilizzare il parametro LookML create_process per utilizzare le PDT, perché GTID non supporta le istruzioni CREATE TABLE AS SELECT.

Configurazione alternativa per le tabelle derivate regolari

Se non vuoi consentire la creazione di tabelle derivate permanenti, puoi comunque utilizzare le tabelle derivate regolari. Per utilizzare le tabelle derivate regolari, devi comunque aggiungere determinate autorizzazioni a uno schema denominato looker_tmp. Tuttavia, lo schema looker_tmp non deve necessariamente esistere nel tuo database.

GRANT
  SELECT,
  INDEX,
  INSERT,
  DROP,
  CREATE TEMPORARY TABLES
ON looker_tmp.* TO 'looker'@'%';
-- Note that the looker_tmp schema does not need to actually exist,
-- even though these permission grants are still needed

Impostazione della variabile max_allowed_packet

Per MySQL, imposta la variabile MySQL max_allowed_packet sul valore massimo, 1073741824, per evitare errori "SQLException: Packet for query is too large".

Creazione della connessione Looker al tuo database

Dopo aver completato la configurazione del database, puoi connetterti al database da Looker. Segui questi passaggi per creare la connessione da Looker al tuo database:

  1. Nella sezione Amministrazione di Looker, seleziona Connessioni e poi fai clic su Aggiungi connessione.
  2. Dal menu a discesa Dialetto, seleziona il nome del dialetto del database: MySQL, MySQL 8.0.12+, MariaDB, SingleStore o SingleStore 7+.

  3. Compila i dettagli della connessione. La maggior parte delle impostazioni è comune alla maggioranza dei dialetti di database. Per informazioni, consulta la pagina della documentazione Connessione di Looker al tuo database.

  4. Per verificare che la connessione sia riuscita, fai clic su Testa. Per informazioni sulla risoluzione dei problemi, consulta la pagina della documentazione Testare la connettività del database.

  5. Per salvare queste impostazioni, fai clic su Connetti.

Funzionalità supportate

Affinché Looker supporti alcune funzionalità, anche il dialetto del database deve supportarle.

A partire da Looker 25.10, MySQL supporta le seguenti funzionalità:

Funzionalità Supportato?
Livello di assistenza
Supportato
Looker (Google Cloud core)
No
Aggregati simmetrici
Tabelle derivate
Tabelle derivate permanenti basate su SQL
Tabelle derivate native permanenti
Visualizzazioni stabili
Terminazione delle query
Pivot basati su SQL
Fusi orari
SSL
Subtotali
Parametri JDBC aggiuntivi
Sensibile alle maiuscole
No
Tipo di località
Tipo di elenco
Percentile
Percentile valori distinti
SQL Runner Show Processes
SQL Runner Describe Table
SQL Runner Show Indexes
SQL Runner Select 10
Conteggio SQL Runner
SQL Explain
Credenziali OAuth 2.0
No
Commenti contestuali
Pool di connessioni
No
Sketch HLL
No
Aggregate awareness
PDT incrementali
Millisecondi
Microsecondi
Viste materializzate
No
Misure di periodo in periodo
No
Conteggio approssimativo dei valori distinti
No

A partire da Looker 25.10, MySQL 8.0.12+ supporta le seguenti funzionalità:

Funzionalità Supportato?
Livello di assistenza
Supportato
Looker (Google Cloud core)
Aggregati simmetrici
Tabelle derivate
Tabelle derivate permanenti basate su SQL
Tabelle derivate native permanenti
Visualizzazioni stabili
Terminazione delle query
Pivot basati su SQL
Fusi orari
SSL
Subtotali
Parametri JDBC aggiuntivi
Sensibile alle maiuscole
No
Tipo di località
Tipo di elenco
Percentile
Percentile valori distinti
SQL Runner Show Processes
SQL Runner Describe Table
SQL Runner Show Indexes
SQL Runner Select 10
Conteggio SQL Runner
SQL Explain
Credenziali OAuth 2.0
No
Commenti contestuali
Pool di connessioni
No
Sketch HLL
No
Aggregate awareness
PDT incrementali
Millisecondi
Microsecondi
Viste materializzate
No
Misure di periodo in periodo
No
Conteggio approssimativo dei valori distinti
No

A partire da Looker 25.10, MariaDB supporta le seguenti funzionalità:

Funzionalità Supportato?
Livello di assistenza
Supportato
Looker (Google Cloud core)
Aggregati simmetrici
Tabelle derivate
Tabelle derivate permanenti basate su SQL
Tabelle derivate native permanenti
Visualizzazioni stabili
Terminazione delle query
Pivot basati su SQL
No
Fusi orari
SSL
Subtotali
Parametri JDBC aggiuntivi
Sensibile alle maiuscole
No
Tipo di località
Tipo di elenco
Percentile
Percentile valori distinti
SQL Runner Show Processes
SQL Runner Describe Table
SQL Runner Show Indexes
SQL Runner Select 10
Conteggio SQL Runner
SQL Explain
Credenziali OAuth 2.0
No
Commenti contestuali
Pool di connessioni
No
Sketch HLL
No
Aggregate awareness
PDT incrementali
No
Millisecondi
Microsecondi
Viste materializzate
No
Misure di periodo in periodo
No
Conteggio approssimativo dei valori distinti
No

A partire da Looker 25.10, SingleStore supporta le seguenti funzionalità:

Funzionalità Supportato?
Livello di assistenza
Supportato
Looker (Google Cloud core)
No
Aggregati simmetrici
Tabelle derivate
Tabelle derivate permanenti basate su SQL
Tabelle derivate native permanenti
Visualizzazioni stabili
Terminazione delle query
Pivot basati su SQL
Fusi orari
SSL
Subtotali
Parametri JDBC aggiuntivi
Sensibile alle maiuscole
No
Tipo di località
Tipo di elenco
Percentile
No
Percentile valori distinti
No
SQL Runner Show Processes
SQL Runner Describe Table
SQL Runner Show Indexes
SQL Runner Select 10
Conteggio SQL Runner
SQL Explain
Credenziali OAuth 2.0
No
Commenti contestuali
Pool di connessioni
No
Sketch HLL
No
Aggregate awareness
PDT incrementali
No
Millisecondi
Microsecondi
Viste materializzate
No
Misure di periodo in periodo
No
Conteggio approssimativo dei valori distinti
No

A partire da Looker 25.10, SingleStore 7+ supporta le seguenti funzionalità:

Funzionalità Supportato?
Livello di assistenza
Supportato
Looker (Google Cloud core)
Aggregati simmetrici
Tabelle derivate
Tabelle derivate permanenti basate su SQL
Tabelle derivate native permanenti
Visualizzazioni stabili
Terminazione delle query
Pivot basati su SQL
Fusi orari
SSL
Subtotali
Parametri JDBC aggiuntivi
Sensibile alle maiuscole
No
Tipo di località
Tipo di elenco
Percentile
Percentile valori distinti
No
SQL Runner Show Processes
SQL Runner Describe Table
SQL Runner Show Indexes
SQL Runner Select 10
Conteggio SQL Runner
SQL Explain
Credenziali OAuth 2.0
No
Commenti contestuali
Pool di connessioni
No
Sketch HLL
No
Aggregate awareness
PDT incrementali
No
Millisecondi
Microsecondi
Viste materializzate
No
Misure di periodo in periodo
No
Conteggio approssimativo dei valori distinti
No