Amazon RDS para MySQL

Como criptografar o tráfego de rede

É uma prática recomendada 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 estiver interessado em 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 executar a função principal sem consultas que possam atrasá-lo.

Este documento descreve como:

  • Modificar um banco de dados de réplicas para trabalhar 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 existente

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

Por padrão, as réplicas de leitura do RDS têm uma flag somente leitura ativada que impede que o Looker grave em tabelas temporárias. O Looker nunca altera os dados existentes, mas o MySQL ainda exige acesso de gravação para usar tabelas temporárias. Isso pode ser resolvido ao mudar o flag no RDS. Em Perguntas frequentes do RDS:

P: Minhas réplicas de leitura podem aceitar apenas 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 completar as instruções SQL de Linguagem de Definição de Dados (DDL) em relação a uma réplica de leitura. Os exemplos podem incluir a adição de 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 do banco de dados de origem correspondente.

O Amazon RDS para MySQL pode ser configurado para permitir instruções SQL DDL em uma réplica de leitura. Se você quiser ativar operações diferentes das leituras para uma determinada réplica de leitura, modifique o DB Parameter Group 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 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. A instrução CREATE TEMPORARY no MySQL precisa estar 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'@'%';

Criando uma nova 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 anteriores à 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

Limpar privilégios:

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 primário. 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 de réplica de leitura e selecione Sim, criar réplica de leitura.

Etapa 4

Enquanto aguarda a criação do banco de dados de réplica de leitura, configure o Grupo de parâmetros do banco de dados, que 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 a Família do grupo de parâmetros do banco de dados e o Nome do grupo de parâmetros do banco de dados e insira uma Descrição do grupo de parâmetros do banco de dados. 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 clique em Editar parâmetros.

Etapa 7

No campo Filtros, em Parâmetros, pesquise por "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 terminar, selecione-a na lista de instâncias do banco de dados, clique no botão Ação de instância e selecione Modificar na ação da instância.

Etapa 9

No pop-up Modificar instância de banco de dados, altere o Grupo de parâmetros dessa instância para o novo grupo de parâmetros de réplica de leitura. Em seguida, marque a caixa Aplicar imediatamente, selecione Continuar e escolha Modificar instância de banco de dados.

Etapa 10

Usando o cliente MySQL, conecte-se à instância de banco de dados de réplica de leitura como looker e teste 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 à maioria dos dialetos de banco de dados. Consulte a página de documentação Como conectar o Looker ao banco de dados para mais informações.

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

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 ser compatível com eles.

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

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 de SQL persistentes
Sim
Tabelas derivadas nativas nativas
Sim
Visualizações estáveis
Sim
Consulta de interrupção
Sim
Dinâmicas baseadas 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 executor do SQL
Sim
Mostrar índices do SQL Runner
Sim
Seleção do SQL Runner 10
Sim
Contagem de executores do SQL
Sim
Explicação do SQL
Sim
Credenciais OAuth
Não
Comentários de contexto
Sim
Pool de conexão
Não
Esboços HLL
Não
Agregar reconhecimento
Sim
TDPs incrementais
Sim
Milissegundos
Sim
Microssegundos
Sim
Visualizações materializadas
Não
Contagem aproximada de valores distintos
Não