Tak to mozliwe. Używam go z powodzeniem używając RDS , dla konkretnego przypadku lokalnej pamięci podręcznej.
Musisz ustawić read_only parametr w Twojej replice na 0 . Musiałem zrestartować serwer, aby ten parametr zadziałał.
Będzie dobrze działać, jeśli użyjesz różnych nazw tabel, ponieważ RDS nie pozwala na ustawienie:replicate-ignore-table parametr.
Pamiętaj, że między master<>slave nie może dojść do kolizji danych. Jeśli istnieje instrukcja, która działa dobrze na MASTER , ale nie działa na SLAVE , to właśnie zepsułeś swoją replikację. Może się to zdarzyć m.in. po utworzeniu tabeli na SLAVE najpierw po pewnym czasie dodałeś tę tabelę do MASTER . CREATE Instrukcja będzie działać czysto na MASTER , ale nie powiedzie się na SLAVE , ponieważ tabela już istnieje.
Zakładając, że musisz być naprawdę ostrożny, pozwalając aplikacji pisać do SLAVE . Jeśli zapomnisz / lub popełnisz błąd i zaczniesz pisać, aby odczytać replikę dla niektórych innych danych, w końcu możesz utracić dane lub napotkać trudne do debugowania problemy.