MySQL, Clustrix, MariaDB e SingleStore

Dialetos que usam estas instruções

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

Como criptografar o tráfego de rede

O Looker recomenda 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 Como ativar o acesso seguro ao banco de dados.

Se você tiver interesse em 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 da seção apropriada para seu dialeto e versão do banco de dados:

MySQL 8.0.X:

A opção de dialeto MySQL 8.0.X do Looker foi implementada com a versão de patch 8.0.12+ devido a uma suspensão de uso do MySQL na classificação implícita na cláusula GROUP BY. Isso afeta os subtotais do Looker para MySQL versões 8.0.0 a 8.0.11, causando erros de geração do SQL. O Looker sugere o upgrade de qualquer banco de dados MySQL 8.0.X para pelo menos 8.0.12 para integração completa. No entanto, as versões anteriores do MySQL continuarão funcionando, exceto os subtotais.

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 se autenticar nos bancos de dados do MySQL por meio do 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 qual tipo de acesso você tem à configuração:

    • Inicie o processo com a sinalização --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 estiver hospedada no AWS RDS, defina o parâmetro default_authentication_plugin por meio de um grupo de parâmetros do RDS aplicado a essa instância.
  2. Emita as seguintes instruções, 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 anteriores, Clustrix, MariaDB e SingleStore:

Emita as seguintes instruções, 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 do esquema temporário para tabelas derivadas permanentes

Esses dialetos de banco de dados são compatíveis com a criação de tabelas derivadas permanentes (PDTs, na sigla em inglês). Esse recurso pode ser muito útil, e recomendamos ativá-lo quando possível.

Para ativar as TDPs, você precisa configurar um esquema temporário. Os comandos a seguir mostram um exemplo de como criar um banco de dados temporário e conceder os 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 sua conexão de banco de dados. Se você não especificar um nome de banco de dados temporário, o Looker gerará um banco de dados de rascunho 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 seu nome de banco de dados temporário 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 é compatível com instruções CREATE TABLE AS SELECT.

Configuração alternativa para tabelas derivadas regulares

Se você não quiser permitir a criação de tabelas derivadas permanentes, ainda poderá usar tabelas derivadas regulares. Para usar tabelas derivadas regulares, você ainda precisa adicionar determinadas 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: o pacote para consulta é muito grande".

Como criar a conexão do Looker com seu banco de dados

Depois de concluir a configuração do banco de dados, você poderá se conectar ao Looker no Looker. Na seção Administrador do Looker, selecione Conexões e clique em Adicionar conexão.

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.

Para verificar se a conexão foi concluída, clique em Testar. Consulte a página de documentação Como testar a conectividade do banco de dados para ver informações sobre solução de problemas.

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

Suporte a recursos

Para que o Looker seja compatível com alguns recursos, o dialeto do banco de dados também precisa ser compatível com eles.

O MySQL é compatível com os seguintes recursos a partir do Looker 23.8:

Recurso Compatível?
Nível do suporte
Compatível
Looker (Google Cloud Core)
Sim
Agregados simétricos
Sim
Tabelas derivadas
Sim
Tabelas derivadas do SQL permanente
Sim
Tabelas derivadas nativas nativas
Sim
Visualizações estáveis
Sim
Eliminação de consultas
Sim
Tabelas dinâmicas baseadas em SQL
Sim
Fusos horários
Sim
SSL
Sim
Subtotais
Sim
Parâmetros adicionais de JDBC
Sim
Diferenciar maiúsculas e minúsculas
Não
Tipo de local
Sim
Tipo de lista
Sim
Percentil
Sim
Percentil distinto
Sim
Processos do SQL Runner Show
Sim
Tabela de descrição do SQL Runner
Sim
Índices do SQL Runner Show
Sim
SQL Runner Select 10
Sim
Contagem de executores do SQL
Sim
Explicação do SQL
Sim
Credenciais do OAuth
Não
Comentários de contexto
Sim
Pool de conexão
Não
HLL Sketches
Não
Reconhecimento agregado
Sim
PDTs incrementais
Sim
Milissegundos
Sim
Microssegundos
Sim
Visualizações materializadas
Não
Contagem aproximada diferente
Não

O MySQL 8.0.12+ é compatível com os seguintes recursos a partir do Looker 23.8:

Recurso Compatível?
Nível do suporte
Compatível
Looker (Google Cloud Core)
Sim
Agregados simétricos
Sim
Tabelas derivadas
Sim
Tabelas derivadas do SQL permanente
Sim
Tabelas derivadas nativas nativas
Sim
Visualizações estáveis
Sim
Eliminação de consultas
Sim
Tabelas dinâmicas baseadas em SQL
Sim
Fusos horários
Sim
SSL
Sim
Subtotais
Sim
Parâmetros adicionais de JDBC
Sim
Diferenciar maiúsculas e minúsculas
Não
Tipo de local
Sim
Tipo de lista
Sim
Percentil
Sim
Percentil distinto
Sim
Processos do SQL Runner Show
Sim
Tabela de descrição do SQL Runner
Sim
Índices do SQL Runner Show
Sim
SQL Runner Select 10
Sim
Contagem de executores do SQL
Sim
Explicação do SQL
Sim
Credenciais do OAuth
Não
Comentários de contexto
Sim
Pool de conexão
Não
HLL Sketches
Não
Reconhecimento agregado
Sim
PDTs incrementais
Sim
Milissegundos
Sim
Microssegundos
Sim
Visualizações materializadas
Não
Contagem aproximada diferente
Não

O Clustrix é compatível com os seguintes recursos desde o Looker 23.8:

Recurso Compatível?
Nível do suporte
Compatível
Looker (Google Cloud Core)
Não
Agregados simétricos
Sim
Tabelas derivadas
Sim
Tabelas derivadas do SQL permanente
Sim
Tabelas derivadas nativas nativas
Sim
Visualizações estáveis
Não
Eliminação de consultas
Sim
Tabelas dinâmicas baseadas em SQL
Não
Fusos horários
Sim
SSL
Sim
Subtotais
Não
Parâmetros adicionais de 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
Processos do SQL Runner Show
Não
Tabela de descrição do SQL Runner
Sim
Índices do SQL Runner Show
Sim
SQL Runner Select 10
Sim
Contagem de executores do SQL
Sim
Explicação do SQL
Sim
Credenciais do OAuth
Não
Comentários de contexto
Sim
Pool de conexão
Não
HLL Sketches
Não
Reconhecimento agregado
Sim
PDTs incrementais
Não
Milissegundos
Não
Microssegundos
Não
Visualizações materializadas
Não
Contagem aproximada diferente
Não

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

Recurso Compatível?
Nível do suporte
Compatível
Looker (Google Cloud Core)
Sim
Agregados simétricos
Sim
Tabelas derivadas
Sim
Tabelas derivadas do SQL permanente
Sim
Tabelas derivadas nativas nativas
Sim
Visualizações estáveis
Sim
Eliminação de consultas
Sim
Tabelas dinâmicas baseadas em SQL
Não
Fusos horários
Sim
SSL
Sim
Subtotais
Sim
Parâmetros adicionais de JDBC
Sim
Diferenciar maiúsculas e minúsculas
Não
Tipo de local
Sim
Tipo de lista
Sim
Percentil
Sim
Percentil distinto
Sim
Processos do SQL Runner Show
Sim
Tabela de descrição do SQL Runner
Sim
Índices do SQL Runner Show
Sim
SQL Runner Select 10
Sim
Contagem de executores do SQL
Sim
Explicação do SQL
Sim
Credenciais do OAuth
Não
Comentários de contexto
Sim
Pool de conexão
Não
HLL Sketches
Não
Reconhecimento agregado
Sim
PDTs incrementais
Não
Milissegundos
Sim
Microssegundos
Sim
Visualizações materializadas
Não
Contagem aproximada diferente
Não

O SingleStore é compatível com os seguintes recursos desde o Looker 23.8:

Recurso Compatível?
Nível do suporte
Compatível
Looker (Google Cloud Core)
Não
Agregados simétricos
Sim
Tabelas derivadas
Sim
Tabelas derivadas do SQL permanente
Sim
Tabelas derivadas nativas nativas
Sim
Visualizações estáveis
Sim
Eliminação de consultas
Sim
Tabelas dinâmicas baseadas em SQL
Sim
Fusos horários
Sim
SSL
Sim
Subtotais
Sim
Parâmetros adicionais de 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
Processos do SQL Runner Show
Sim
Tabela de descrição do SQL Runner
Sim
Índices do SQL Runner Show
Sim
SQL Runner Select 10
Sim
Contagem de executores do SQL
Sim
Explicação do SQL
Sim
Credenciais do OAuth
Não
Comentários de contexto
Sim
Pool de conexão
Não
HLL Sketches
Não
Reconhecimento agregado
Sim
PDTs incrementais
Não
Milissegundos
Sim
Microssegundos
Sim
Visualizações materializadas
Não
Contagem aproximada diferente
Não

O SingleStore 7 ou superior é compatível com os seguintes recursos a partir do Looker 23.8:

Recurso Compatível?
Nível do suporte
Compatível
Looker (Google Cloud Core)
Sim
Agregados simétricos
Sim
Tabelas derivadas
Sim
Tabelas derivadas do SQL permanente
Sim
Tabelas derivadas nativas nativas
Sim
Visualizações estáveis
Sim
Eliminação de consultas
Sim
Tabelas dinâmicas baseadas em SQL
Sim
Fusos horários
Sim
SSL
Sim
Subtotais
Sim
Parâmetros adicionais de JDBC
Sim
Diferenciar maiúsculas e minúsculas
Não
Tipo de local
Sim
Tipo de lista
Sim
Percentil
Sim
Percentil distinto
Não
Processos do SQL Runner Show
Sim
Tabela de descrição do SQL Runner
Sim
Índices do SQL Runner Show
Sim
SQL Runner Select 10
Sim
Contagem de executores do SQL
Sim
Explicação do SQL
Sim
Credenciais do OAuth
Não
Comentários de contexto
Sim
Pool de conexão
Não
HLL Sketches
Não
Reconhecimento agregado
Sim
PDTs incrementais
Não
Milissegundos
Sim
Microssegundos
Sim
Visualizações materializadas
Não
Contagem aproximada diferente
Não