Amazon RDS para MySQL

Criptografia do tráfego de rede

É uma prática recomendada criptografar o tráfego de rede entre o aplicativo do 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ê quiser usar a criptografia SSL, consulte a documentação do MySQL RDS.

Opções

Por motivos de desempenho, é comum usar bancos de dados de réplica somente leitura, também chamados de réplicas de leitura, com o Looker. Isso libera o banco de dados de produção para realizar a função principal sem que as consultas o deixem mais lento.

Neste documento, descrevemos como:

  • Modificar um banco de dados de réplica para funcionar com o Looker
  • Criar um novo banco de dados de réplica de leitura e configurá-lo para funcionar com o Looker

Como modificar uma réplica atual

Usuários e segurança

Mude <some_password_here> para uma senha exclusiva e segura:

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

RDS e tabelas temporárias

As réplicas de leitura do RDS, por padrão, têm uma sinalização somente leitura ativada que impede o Looker de gravar em tabelas temporárias. O Looker nunca altera os dados, mas o MySQL ainda exige acesso de gravação para usar tabelas temporárias. Isso pode ser resolvido mudando a flag no RDS. Nas Perguntas frequentes sobre o RDS:

P: Minhas réplicas de leitura só podem aceitar operações de leitura do banco de dados?

As réplicas de leitura são projetadas para atender ao tráfego de leitura. No entanto, pode haver casos de uso em que usuários avançados queiram concluir instruções SQL de linguagem de definição de dados (DDL) em uma réplica de leitura. Por exemplo, adicionar um índice de banco de dados a uma réplica de leitura usada para relatórios de negócios sem adicionar o mesmo índice à instância de banco de dados de origem correspondente.

O Amazon RDS para MySQL pode ser configurado para permitir instruções SQL de DDL em uma réplica de leitura. Se você quiser ativar outras operações além de leituras para uma determinada réplica de leitura, modifique o grupo de parâmetros do banco de dados ativo para a réplica de leitura, definindo o parâmetro read_only como 0.

No momento, o Amazon RDS para PostgreSQL não é compatível com a execução de instruções SQL de DDL em uma réplica de leitura.

Se você alterar o grupo de parâmetros do banco de dados, será necessário reiniciar a réplica de leitura para que as mudanças entrem em vigor.

Criar banco de dados e conceder permissões

Crie um banco de dados temporário e conceda ao usuário looker os direitos de gravação nele. A instrução CREATE TEMPORARY no MySQL precisa ser associada a um banco de dados para fins de permissão.

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

Como criar uma réplica

O AWS RDS só pode criar réplicas de leitura com instâncias de banco de dados que tenham a retenção de backup ativada.

Etapas pré-AWS

Etapa 1

mysql no banco de dados que será a instância principal:

mysql -h hostname.uid.region.rds.amazonaws.com -P 3306 -u root -p

Etapa 2

Crie um usuário chamado looker (substitua <some_password_here> por uma senha exclusiva e segura):

CREATE USER looker IDENTIFIED BY '<some_password_here>';

Etapa 3

Crie um banco de dados temporário e conceda privilégios de leitura ao Looker para outros bancos de dados e tabelas. O Looker geralmente não grava no banco de dados looker_tmp, mas o usa para executar comandos CREATE TEMPORARY TABLE.

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

GRANT
  SELECT,
  SHOW DATABASES
ON *.* TO 'looker'@'%';

Etapa 4

Privilégios de liberação:

FLUSH PRIVILEGES;

Etapas da AWS

Etapa 1

Faça login e acesse o painel da AWS. Na seção Banco de dados, selecione RDS.

Etapa 2

No painel do RDS, selecione a instância do banco de dados que você quer especificar como o banco de dados principal. Selecione Ações da instância e, em seguida, Criar réplica de leitura.

Etapa 3

No pop-up Criar instância de banco de dados de réplica de leitura, configure o banco de dados da réplica de leitura e selecione Sim, criar réplica de leitura.

Etapa 4

Enquanto aguarda a criação do banco de dados da réplica de leitura, configure o grupo de parâmetros do banco de dados, que vai conter os valores de configuração do mecanismo aplicados à instância do banco de dados da réplica de leitura. Selecione a página Grupos de parâmetros do banco de dados na barra lateral e clique no botão Criar grupo de parâmetros do banco de dados.

Etapa 5

Selecione DB Parameter Group Family e DB Parameter Group Name e insira uma DB Parameter Group Description. Em seguida, selecione Sim, criar.

Etapa 6

Selecione o ícone de lupa na linha que contém o grupo de parâmetros do banco de dados da réplica de leitura ou selecione essa linha e escolha Editar parâmetros.

Etapa 7

No campo Filtros em Parâmetros, pesquise "read_only". Mude o valor do parâmetro para 0. Em seguida, selecione Salvar alterações.

Etapa 8

Quando a criação da réplica de leitura for concluída, selecione-a na lista de instâncias de banco de dados, selecione o botão Ação da instância e selecione Modificar na ação da instância.

Etapa 9

No pop-up Modificar instância de banco de dados, mude o Grupo de parâmetros da instância de banco de dados para o novo grupo de parâmetros da réplica de leitura. Em seguida, marque a caixa Apply Immediately, selecione Continue e selecione Modify DB Instance.

Etapa 10

Usando o cliente MySQL, conecte-se à instância do banco de dados da réplica de leitura como looker e teste para ver se os dados estão acessíveis.

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

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 bem-sucedida, clique no botão Testar conexão na seção Detalhes do status na parte de baixo da página Configurações de conexões.

Se o Looker exibir Pode se conectar, pressione Conectar para criar a conexão.

A conexão do banco de dados é adicionada à lista na página Administrador de Conexões do Looker.

Parâmetros JDBC compatíveis

Para o Amazon RDS para MySQL, o Looker é compatível com os seguintes parâmetros JDBC no campo Parâmetros JDBC adicionais da conexão. Consulte a documentação do seu banco de dados para mais informações sobre esses parâmetros.

  • allowMultiQueries
  • autocommit
  • characterSetResults
  • clientCertificateKeyStorePassword
  • clientCertificateKeyStoreUrl
  • connectionAttributes
  • connectionCollation
  • connectionTimeZone
  • connectTimeout
  • defaultAuthenticationPlugin
  • disableSslHostnameVerification
  • disconnectOnExpiredPasswords
  • enabledSslCipherSuites
  • failOverReadOnly
  • fallbackToSystemTrustStore
  • forceConnectionTimeZoneToSession
  • interactiveClient
  • lookerFailover
  • maxIdleTime
  • maxQuerySizeToLog
  • oldModeNoPrecisionTimestamp
  • password
  • passwordCharacterEncoding
  • permitMysqlScheme
  • pinGlobalTxToPhysicalConnection
  • preserveInstants
  • queryInterceptors
  • restrictedAuth
  • rewriteBatchedStatements
  • socketTimeout
  • sslMode
  • tcpKeepAlive
  • trustCertificateKeyStorePassword
  • trustCertificateKeyStoreUrl
  • useCompression
  • usePipelineAuth
  • user
  • useServerPrepStmts
  • verifyServerCertificate
  • yearIsDateType

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 26.22:

Recurso Compatível?
Looker (Google Cloud Core)
Conjuntos simétricos
Tabelas derivadas
Tabelas derivadas persistentes em SQL
Tabelas derivadas nativas persistentes
Visualizações estáveis
Encerramento de consultas
Tabelas dinâmicas baseadas em SQL
Fusos horários
SSL
Subtotais
Parâmetros adicionais da JDBC
Diferencia maiúsculas de minúsculas
Tipo de local
Tipo de lista
Percentil
Percentil distinto
Mostrar processos do SQL Runner
Tabela de descrição do SQL Runner
Mostrar índices do SQL Runner
SQL Runner Select 10
Contagem do SQL Runner
Explicação do SQL
Credenciais do OAuth 2.0
Comentários de contexto
Pooling de conexão
Esboços HLL
Reconhecimento agregado
TDPs incrementais
Milissegundos
Microssegundos
Visualizações materializadas
Medidas de comparação de períodos
Contagem aproximada aproximada
Modelos analíticos no banco de dados
Agendas personalizadas