Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Migrando MySQL para PostgreSQL no AWS RDS, Parte 2


O banco de dados MySQL e o banco de dados PostgreSQL são os dois principais sistemas de gerenciamento de banco de dados relacional (RDBMS) de código aberto, cada um oferecendo alguns benefícios exclusivos. No artigo anterior, “Migrando MySQL para PostgreSQL no AWS RDS, Parte 1”, discutimos algumas das vantagens do PostgreSQL sobre o MySQL e apresentamos o AWS Database Migration Service (DMS) para realizar uma migração do MySQL para o PostgreSQL. Começamos criando um usuário do AWS IAM para DMS. Neste tutorial de continuação, criaremos instâncias de bancos de dados MySQL e PostgreSQL no RDS e nos conectaremos a cada um. Este tutorial tem as seguintes seções:
  • Criando instâncias do AWS RDS para um banco de dados MySQL e PostgreSQL
  • Configurando a conectividade entre bancos de dados e o DMS
  • Conectando-se ao banco de dados MySQL
  • Conexão a um banco de dados PostgreSQL
  • Conclusão

Criando instâncias do AWS RDS para um banco de dados MySQL e PostgreSQL


Crie os bancos de dados de origem e destino, banco de dados MySQL e banco de dados PostgreSQL, respectivamente, no AWS RDS. O uso do RDS é discutido em um tutorial anterior. Para o banco de dados de origem, banco de dados MySQL, selecione MySQL, conforme mostrado na Figura 1.


Figura 1: Selecionando MySQL no RDS

Selecione a Produção ou o Desenvolvimento/Teste opção de implantação, conforme mostrado na Figura 2. Clique em Next step.


Figura 2: Selecionando o tipo de implantação

Especifique detalhes do banco de dados , a maioria dos quais possui configurações padrão adequadas. Selecione Classe de instância de banco de dados (db.t2.micro ou db.t1.micro). Especifique um identificador de instância de banco de dados (MYSQLDB), que não deve ser uma palavra reservada do banco de dados MySQL, como 'MYSQL'. Especifique um nome de usuário mestre, senha mestre (deve ter pelo menos 8 caracteres) e clique em Próxima etapa. Em seguida, defina as Configurações avançadas . Para VPC, selecione Criar nova VPC . Para Grupo de sub-rede, selecione Criar novo grupo de sub-rede de banco de dados . Para Acessível ao Público , selecione Sim . Para Zona de Disponibilidade , selecione Sem preferência . Para grupo de segurança da VPC , selecione Criar novo grupo de segurança. Especifique as opções do banco de dados, incluindo um nome do banco de dados (MYSQLDB), que não deve ser uma palavra reservada, como ‘MYSQL’, e a porta do banco de dados (3306). Mantenha as configurações padrão para Backup; backups automáticos são necessários para usar o MySQL no RDS como uma fonte DMS. Mantenha as configurações padrão para monitoramento e manutenção e clique em Iniciar instância de banco de dados . O banco de dados MySQL no RDS é criado.

Para um banco de dados PostgreSQL, selecione o mecanismo de banco de dados RDS como PostgreSQL , como mostrado na Figura 3.


Figura 3: Selecionando o mecanismo de banco de dados PostgreSQL

Selecione o tipo de implantação Dev/Test e clique em Next Step. Especifique detalhes do banco de dados; a maioria das configurações padrão são adequadas. Especifique o DB Instance Identifier (postgresdb), Master Username, Master Password e clique em Next Step. Em seguida, defina as configurações avançadas, incluindo as Opções de banco de dados para Nome do banco de dados (postgresdb), Porta do banco de dados (5432) e clique em Iniciar instância de banco de dados. Um banco de dados PostgreSQL é iniciado no RDS. O banco de dados MySQL e o banco de dados PostgreSQL no RDS são mostrados na Figura 4.


Figura 4: Banco de dados MySQL e PostgreSQL no RDS

Configurando a conectividade entre bancos de dados e o DMS


Por padrão, o Database Migration Service (DMS) não pode se conectar a instâncias de banco de dados do RDS. Precisamos adicionar conectividade aos grupos de segurança para a instância de banco de dados do RDS. Clique no Grupo de segurança link em Detalhes de configuração para a instância de banco de dados MySQL RDS, conforme mostrado na Figura 5.


Figura 5: Grupo de segurança para MySQL no RDS

No console do Grupo de segurança, selecione a guia Entrada e clique em Editar (ver Figura 6).


Figura 6: Grupo de segurança>Editar

Em Editar regras de entrada , selecione Tipo como Todo o tráfego , Protocolo como Todos , Intervalo de portas como 0-65535, Fonte como Em qualquer lugar e clique em Salvar , como mostrado na Figura 7.


Figura 7: Configurando regras de entrada para permitir todo o tráfego

As regras de entrada são configuradas para permitir todo o tráfego, conforme mostrado na Figura 8.


Figura 8: Entrada>Todo o tráfego

A saída as regras também devem ser definidas como Todo o tráfego, conforme mostrado na Figura 9, quando as regras de entrada são configuradas.


Figura 9: Saída>Todo o tráfego

Da mesma forma, clique no link Security Group para a instância de banco de dados PostgreSQL RDS, conforme mostrado na Figura 10, e configure as regras de entrada/saída para permitir todo o tráfego.


Figura 10: Configurando o Security Group para PostgreSQL para permitir todo o tráfego

Conectando-se ao banco de dados MySQL


Ao migrar uma instância de banco de dados MySQL no RDS, o banco de dados completo pode ser migrado, o que inclui todos os esquemas e tabelas, inclusive os esquemas e tabelas do sistema. Nesta seção, vamos nos conectar ao banco de dados MySQL no RDS e conceder alguns privilégios de usuário ao dvohra do utilizador. Para se conectar ao banco de dados MySQL, obtenha o banco de dados Endpoint do RDS Dashboard (veja a Figura 11).


Figura 11: Obtendo ponto final

Em um shell de comando, execute o seguinte comando MySQL no diretório bin do banco de dados MySQL (C:Program FilesMySQLMySQL Server 5.7bin). Isso iniciará uma sessão da CLI do MySQL.
mysql -h mysqldb.crbmlbxmp8qi.us-east-1.rds.amazonaws.com -u dvohra -p

Especifique a senha em Digite a senha: incitar. O SQL> prompt de comando é exibido, conforme mostrado na Figura 12.


Figura 12: Conectando-se ao banco de dados MySQL com CLI

Em seguida, conceda privilégios para a instância do banco de dados MySQL no RDS ao usuário DMS (dvohra).
GRANT ALTER, CREATE, DROP, INDEX, INSERT, UPDATE, DELETE, SELECT ON *.* TO 'dvohra'@'%';GRANT ALL PRIVILEGES ON awsdms_control.* TO 'dvohra'@'%'; 
Os privilégios do usuário são definidos, conforme mostrado na Figura 13.


Figura 13: Adicionando privilégios de usuário

Conectando a um banco de dados PostgreSQL


Para se conectar ao banco de dados PostgreSQL no RDS a partir de um shell de comando, obtenha o banco de dados Endpoint do painel do RDS, conforme mostrado na Figura 14.


Figura 14: Obtendo o endpoint do banco de dados PostgreSQL no RDS

Execute o seguinte comando para se conectar ao banco de dados PostgreSQL e iniciar uma interface de linha de comando (CLI).
psql --host=postgresdb.crbmlbxmp8qi.us-east-1.rds.amazonaws.com --port=5432 --username dvohra --password --dbname=postgresdb

A interface de linha de comando (CLI) do banco de dados PostgreSQL é iniciada, conforme mostrado na Figura 15.


Figura 15: Conectando-se ao banco de dados PostgreSQL no RDS com uma CLI

Liste os esquemas com o dn comando. O esquema público é listado (consulte a Figura 16).


Figura 16: Esquemas de listagem

Conclusão


Neste segundo de quatro tutoriais sobre como migrar uma instância de banco de dados MySQL no RDS para uma instância de banco de dados Postgres no RDS com AWS DMS, criamos instâncias dos dois bancos de dados no RDS e conectamos às instâncias de banco de dados. No próximo tutorial, criaremos uma migração DMS.