Sim, é possível. Estou usando com sucesso usando
RDS
, para caso específico de cache local. Você precisa definir o
read_only
parâmetro em sua réplica para 0
. Eu tive que reiniciar meu servidor para que esse parâmetro funcionasse. Vai funcionar bem se usar nomes de tabelas diferentes, pois o RDS não permite que você defina:
replicate-ignore-table
parâmetro. Lembre-se que não deve haver nenhuma colisão de dados entre master<>slave. Se houver uma instrução que funcione bem em
MASTER
, mas falha em SLAVE
, você acabou de interromper sua replicação. Isso pode acontecer, por exemplo. quando você criou a tabela em SLAVE
primeiro, depois de algum tempo, você adicionou essa tabela ao MASTER
. O CREATE
instrução funcionará limpo em MASTER
, mas falha em SLAVE
, pois a tabela já existe. Supondo que você precise ser muito cuidadoso, permitindo que seu aplicativo grave em
SLAVE
. Se você esquecer / ou cometer um erro e começar a escrever para ler a réplica de alguns de seus outros dados, no final poderá perder dados ou enfrentar problemas difíceis de depurar.