Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Czy na RDS mogę tworzyć w Read Replica tabele, których nie ma w Master?

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.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Błąd MySQL Za dużo połączeń

  2. połączenie mysqli nie działa wewnątrz funkcji?

  3. Jak zsynchronizować dane między dwiema tabelami w różnych bazach danych (MYSQL) działających na różnych serwerach?

  4. Hibernacja:nie można wykonać natywnego zapytania do manipulacji zbiorczej

  5. Jak dynamicznie tworzyć przygotowane zestawienie - i ponownie wykorzystać zapytanie