Eu tenho dois bancos de dados MySQL idênticos, um em um servidor interno e outro em um servidor de hospedagem na web. Quero atualizar o banco de dados no host todos os dias com o banco de dados no servidor interno. Existe uma maneira de automatizar esse processo também como posso fazer isso manualmente? Se devo fazer isso manualmente, é necessário obter um dump SQL do banco de dados no servidor interno e importá-lo no banco de dados no host da web? Alguém pode conselhos por favor.
19
Respostas:
Você tem poucas opções:
Configure a replicação do MySQL entre os servidores. Seu servidor interno pode atuar como mestre e o servidor host como escravo. Quaisquer atualizações realizadas no mestre serão replicadas para o escravo imediatamente (assumindo uma conexão ativa). Esta provavelmente será a opção mais fácil e eficaz de escolher. Para usar a replicação, seu banco de dados interno precisa estar acessível na rede a partir do host da web.
Você pode ler mais sobre replicação aqui .
Todos os dias, você pode executar um mysqldump no servidor interno, fazer upload do arquivo de despejo no host e importar os dados. Como esse é um dump completo, se você tiver um banco de dados muito grande, isso pode não ser viável. Se você preferir, esse procedimento pode ser potencialmente script para evitar a necessidade de fazê-lo manualmente.
Você pode configurar o log binário no servidor interno. Em seguida, você pode enviar os logs binários para o host da Web e aplicá-los ao banco de dados, reproduzindo efetivamente todas as transações que ocorreram naquele dia para o servidor da Web. De fato, é o que acontece com a replicação de qualquer maneira, então você quase sempre acompanha a replicação configurada em vez dessa opção.
Se não houver conexão entre os dois bancos de dados, usar o mysqldumps a cada dia será o caminho mais fácil.
fonte
Você também pode usar opções como symmetricDS, que podem ajudar na sincronização de dois bancos de dados. Com isso, você poderá selecionar as tabelas que precisam ser sincronizadas para economizar a largura de banda da Internet. Isso também seria adequado no cenário em que há falta de conectividade entre dois locais.
fonte
Como configurar a replicação de banco de dados com o MariaDB: https://www.techrepublic.com/article/how-to-set-up-database-replication-with-mariadb/
fonte
Você poderia usar o Navicat . É basicamente um gerenciador de banco de dados, mas possui a funcionalidade de transferência e sincronização de dados, além de um agendador para que você possa automatizar. Não é gratuito, mas há um teste completo de 30 funções.
fonte