sql >> Databasteknik >  >> RDS >> Mysql

På RDS kan jag skapa tabeller i en Read Replica som inte finns på Master?

Ja det är möjligt. Jag använder det med framgång med RDS , för specifika fall av en lokal cache.

Du måste ställa in read_only parametern på din replik till 0 . Jag har varit tvungen att starta om min server för att den parametern ska fungera.

Det kommer att fungera bra om du använder olika tabellnamn, eftersom RDS inte tillåter dig att ställa in:replicate-ignore-table parameter.

Kom ihåg att det inte får vara någon datakollision mellan master<>slave. Om det finns en sats som fungerar ok på MASTER , men misslyckas på SLAVE , då har du precis brutit din replikering. Det kan hända t.ex. när du har skapat en tabell på SLAVE först efter en tid har du lagt till den tabellen i MASTER . CREATE uttalandet kommer att fungera rent på MASTER , men misslyckas på SLAVE , eftersom tabell redan finns.

Förutsatt att du måste vara väldigt försiktig och låta din applikation skriva till SLAVE . Om du glömmer / eller gör ett misstag och börjar skriva för att läsa repliker för vissa av dina andra data, kan du i slutändan förlora data eller uppleva svårfelsökta problem.



  1. MySQL Full Text Search Mystery

  2. Prisma, hur man vänder ordningen

  3. Vad gör CONSTRAINT i MySQL med FKs?

  4. mysql-fråga - formatera datum vid utdata?