MySQL, MariaDB e SingleStore

Dialetos que usam essas instruções

O MySQL, o MariaDB e o SingleStore (antigo MemSQL) compartilham os requisitos de configuração de banco de dados descritos nesta página.

Como criptografar o tráfego de rede

É recomendável criptografar o tráfego de rede entre o aplicativo Looker e seu banco de dados. Considere uma das opções descritas na página de documentação Ativar o acesso seguro ao banco de dados.

Se você quiser usar a criptografia SSL, consulte esta página de documentação do MySQL.

Usuários e segurança

Para criar e conceder o acesso necessário ao usuário do Looker, siga as instruções na seção adequada ao seu dialeto e versão do banco de dados:

MySQL 8.0.X:

No MySQL 8.0.X, o plug-in de autenticação padrão é caching_sha2_password. O Looker usa o plug-in mysql_native_password para tentar fazer a autenticação em bancos de dados MySQL pelo driver JDBC. Para que essa versão do MySQL funcione corretamente, siga estas etapas adicionais:

  1. Configure o banco de dados MySQL para usar o plug-in mysql_native_password. Isso pode ser feito de várias maneiras e depende de como o banco de dados MySQL 8 é implantado e de que tipo de acesso você tem à configuração:

    • Inicie o processo com a flag --default-auth=mysql_native_password

    • Defina a propriedade no arquivo de configuração my.cnf:

    [mysqld]
    default-authentication-plugin=mysql_native_password
    
    • Se a instância do banco de dados for hospedada pelo AWS RDS, defina o parâmetro default_authentication_plugin usando um grupo de parâmetros do RDS aplicado a essa instância.
  2. Execute os comandos a seguir, substituindo some_password_here por uma senha exclusiva e segura:

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

MySQL 5.7.X e versões anteriores, MariaDB e SingleStore:

Execute os comandos a seguir, substituindo some_password_here por uma senha exclusiva e segura:

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

Configuração de esquema temporário para tabelas derivadas persistentes

Esses dialetos de banco de dados oferecem suporte à criação de tabelas derivadas persistentes (TDPs). Esse recurso pode ser muito útil, e recomendamos que você o ative sempre que possível.

Para ativar os PDTs, você precisa configurar um esquema temporário. Os comandos a seguir mostram um exemplo de criação de um banco de dados temporário e concessão dos privilégios necessários ao usuário looker.

É possível especificar o nome do banco de dados temporário no campo Banco de dados temporário ao criar a conexão do banco de dados. Se você não especificar um nome de banco de dados temporário, o Looker vai gerar um banco de dados temporário chamado looker_tmp. Os comandos a seguir usam looker_tmp, mas se você tiver especificado um nome de banco de dados temporário diferente, use esse nome em vez de looker_tmp.

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

Para o SingleStore ou se o banco de dados usa a replicação baseada em GTID, use o parâmetro LookML create_process para usar PDTs, porque o GTID não oferece suporte a instruções CREATE TABLE AS SELECT.

Configuração alternativa para tabelas derivadas comuns

Se você não quiser permitir a criação de tabelas derivadas persistentes, ainda poderá usar tabelas derivadas normais. Para usar tabelas derivadas normais, ainda é necessário adicionar algumas permissões a um esquema chamado looker_tmp. No entanto, o esquema looker_tmp não precisa existir no seu banco de dados.

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

Como definir a variável max_allowed_packet

No MySQL, defina a variável max_allowed_packet do MySQL como o valor máximo, 1073741824, para evitar erros "SQLException: Packet for query is too large".

Criar a conexão do Looker com seu banco de dados

Depois de concluir a configuração do banco de dados, você pode se conectar a ele pelo Looker. Siga estas etapas para criar a conexão do Looker com seu banco de dados:

  1. Na seção Administrador do Looker, selecione Conexões e clique em Adicionar conexão.
  2. No menu suspenso Dialect, selecione o nome do dialeto do banco de dados: MySQL, MySQL 8.0.12+, MariaDB, SingleStore ou SingleStore 7+.

  3. Preencher os detalhes de conexão. A maioria das configurações é comum para a maioria dos dialetos de banco de dados. Consulte a página de documentação Como conectar o Looker ao seu banco de dados para mais informações.

  4. Para verificar se a conexão foi bem-sucedida, clique em Testar. Consulte a página de documentação Teste de conectividade do banco de dados para informações sobre solução de problemas.

  5. Para salvar essas configurações, clique em Conectar.

Suporte a recursos

Para que o Looker ofereça suporte a alguns recursos, o dialeto do banco de dados também precisa oferecer suporte a eles.

O MySQL oferece suporte aos seguintes recursos a partir do Looker 24.20:

Recurso Compatível?
Nível de suporte
Compatível
Looker (Google Cloud Core)
Não
Agregações simétricas
Sim
Tabelas derivadas
Sim
Tabelas derivadas persistentes do SQL
Sim
Tabelas derivadas nativas nativas
Sim
Visualizações estáveis
Sim
Consulta de interrupção
Sim
Pivots baseados em SQL
Sim
Fusos horários
Sim
SSL
Sim
Subtotais
Sim
Parâmetros adicionais do JDBC
Sim
Diferenciar maiúsculas e minúsculas
Não
Tipo de local
Sim
Tipo de lista
Sim
Percentil
Sim
Percentil distinto
Sim
SQL Runner Show Processes
Sim
Tabela de descrição do SQL Runner
Sim
Índices de exibição do SQL Runner
Sim
SQL Runner Select 10
Sim
Contagem do SQL Runner
Sim
SQL Explain
Sim
Credenciais do OAuth
Não
Comentários de contexto
Sim
Pooling de conexão
Não
Esboços HLL
Não
Conscientização agregada
Sim
PDTs incrementais
Sim
Milissegundos
Sim
Microssegundos
Sim
Visualizações materializadas
Não
Contagem aproximada de valores distintos
Não

O MySQL 8.0.12 e versões mais recentes oferecem suporte aos seguintes recursos a partir do Looker 24.20:

Recurso Compatível?
Nível de suporte
Compatível
Looker (Google Cloud Core)
Sim
Agregações simétricas
Sim
Tabelas derivadas
Sim
Tabelas derivadas persistentes do SQL
Sim
Tabelas derivadas nativas nativas
Sim
Visualizações estáveis
Sim
Consulta de interrupção
Sim
Pivots baseados em SQL
Sim
Fusos horários
Sim
SSL
Sim
Subtotais
Sim
Parâmetros adicionais do JDBC
Sim
Diferenciar maiúsculas e minúsculas
Não
Tipo de local
Sim
Tipo de lista
Sim
Percentil
Sim
Percentil distinto
Sim
SQL Runner Show Processes
Sim
Tabela de descrição do SQL Runner
Sim
Índices de exibição do SQL Runner
Sim
SQL Runner Select 10
Sim
Contagem do SQL Runner
Sim
SQL Explain
Sim
Credenciais do OAuth
Não
Comentários de contexto
Sim
Pooling de conexão
Não
Esboços HLL
Não
Conscientização agregada
Sim
PDTs incrementais
Sim
Milissegundos
Sim
Microssegundos
Sim
Visualizações materializadas
Não
Contagem aproximada de valores distintos
Não

O MariaDB é compatível com os seguintes recursos a partir do Looker 24.20:

Recurso Compatível?
Nível de suporte
Compatível
Looker (Google Cloud Core)
Sim
Agregações simétricas
Sim
Tabelas derivadas
Sim
Tabelas derivadas persistentes do SQL
Sim
Tabelas derivadas nativas nativas
Sim
Visualizações estáveis
Sim
Consulta de interrupção
Sim
Pivots baseados em SQL
Não
Fusos horários
Sim
SSL
Sim
Subtotais
Sim
Parâmetros adicionais do JDBC
Sim
Diferenciar maiúsculas e minúsculas
Não
Tipo de local
Sim
Tipo de lista
Sim
Percentil
Sim
Percentil distinto
Sim
SQL Runner Show Processes
Sim
Tabela de descrição do SQL Runner
Sim
Índices de exibição do SQL Runner
Sim
SQL Runner Select 10
Sim
Contagem do SQL Runner
Sim
SQL Explain
Sim
Credenciais do OAuth
Não
Comentários de contexto
Sim
Pooling de conexão
Não
Esboços HLL
Não
Conscientização agregada
Sim
PDTs incrementais
Não
Milissegundos
Sim
Microssegundos
Sim
Visualizações materializadas
Não
Contagem aproximada de valores distintos
Não

O SingleStore é compatível com os seguintes recursos a partir do Looker 24.20:

Recurso Compatível?
Nível de suporte
Compatível
Looker (Google Cloud Core)
Não
Agregações simétricas
Sim
Tabelas derivadas
Sim
Tabelas derivadas persistentes do SQL
Sim
Tabelas derivadas nativas nativas
Sim
Visualizações estáveis
Sim
Consulta de interrupção
Sim
Pivots baseados em SQL
Sim
Fusos horários
Sim
SSL
Sim
Subtotais
Sim
Parâmetros adicionais do JDBC
Sim
Diferenciar maiúsculas e minúsculas
Não
Tipo de local
Sim
Tipo de lista
Sim
Percentil
Não
Percentil distinto
Não
SQL Runner Show Processes
Sim
Tabela de descrição do SQL Runner
Sim
Índices de exibição do SQL Runner
Sim
SQL Runner Select 10
Sim
Contagem do SQL Runner
Sim
SQL Explain
Sim
Credenciais do OAuth
Não
Comentários de contexto
Sim
Pooling de conexão
Não
Esboços HLL
Não
Conscientização agregada
Sim
PDTs incrementais
Não
Milissegundos
Sim
Microssegundos
Sim
Visualizações materializadas
Não
Contagem aproximada de valores distintos
Não

O SingleStore 7+ é compatível com os seguintes recursos a partir do Looker 24.20:

Recurso Compatível?
Nível de suporte
Compatível
Looker (Google Cloud Core)
Sim
Agregações simétricas
Sim
Tabelas derivadas
Sim
Tabelas derivadas persistentes do SQL
Sim
Tabelas derivadas nativas nativas
Sim
Visualizações estáveis
Sim
Consulta de interrupção
Sim
Pivots baseados em SQL
Sim
Fusos horários
Sim
SSL
Sim
Subtotais
Sim
Parâmetros adicionais do JDBC
Sim
Diferenciar maiúsculas e minúsculas
Não
Tipo de local
Sim
Tipo de lista
Sim
Percentil
Sim
Percentil distinto
Não
SQL Runner Show Processes
Sim
Tabela de descrição do SQL Runner
Sim
Índices de exibição do SQL Runner
Sim
SQL Runner Select 10
Sim
Contagem do SQL Runner
Sim
SQL Explain
Sim
Credenciais do OAuth
Não
Comentários de contexto
Sim
Pooling de conexão
Não
Esboços HLL
Não
Conscientização agregada
Sim
PDTs incrementais
Não
Milissegundos
Sim
Microssegundos
Sim
Visualizações materializadas
Não
Contagem aproximada de valores distintos
Não