Eu preciso escrever um gatilho que manterá uma tabela sincronizada com outras 2 tabelas. Eu tenho table_a, table_b e table_c no slave. O mestre possui apenas a tabela_a e sempre que esta tabela for atualizada no mestre, as outras duas tabelas no escravo também devem ser atualizadas usando gatilhos ou qualquer outra forma.
Ou seja, preciso replicar apenas uma tabela deste slave. Como não há orçamento para mais um servidor, usarei o mesmo esquema escravo. Preciso escrever após atualizar, inserir e excluir gatilhos em table_a? Qual é a melhor abordagem?
Se você tiver este cenário
table_a
tem um campo auto_incrementtable_b
etable_c
tem estrutura de tabela idêntica atable_a
você pode criar um procedimento armazenado e um evento MySQL em vez de um gatilho
Por uma questão de exemplo, digamos que se
table_a
parece com isso:Crie um procedimento armazenado no escravo para copiar dados
table_b
etable_c
Em seguida, agende um Evento MySQL no Escravo para que o Procedimento Armazenado seja desativado a cada 5 minutos, começando 5 minutos após a criação do evento:
Não se esqueça de adicionar isto ao arquivo /etc/my.cnf do Slave