2010-07-07 15 views
5

Sto configurando la replica MySQL tramite binlog. È una configurazione master/slave.Migliori pratiche di replica MySQL

Ho alcune domande su come farlo nel modo migliore.

  1. Se si deve replicare information_schema, se sì/no, perché?
  2. Se mysql db deve essere replicato, se sì/no, perché?
  3. Se tutto deve essere replicato, non è necessario impostare binlog-do-db?

Cheers.

risposta

13
  1. No, lo schema di informazioni non dovrebbe MAI essere replicato. Si tratta di metadati su tabelle, dbs, routine, trigger, ecc. Permetti al server di popolarlo del proprio information_schema.
  2. mysql db può essere replicato, specialmente nell'istanza in cui si configureranno un numero di utenti. Se il tuo master fallisce, ti serviranno le stesse informazioni utente disponibili sul tuo server slave per poter fallire. Se ciò dovesse accadere, è necessario avere gli stessi privilegi disponibili.
  3. Elenca solo il database che si desidera replicare con binlog-do-db. Se non ne elencherai nessuno, tutto verrà replicato per impostazione predefinita.
+0

Quindi, è necessario definire "binlog-do-db'? Ho molti database da replicare e non desidero elencarli fuori – conandor

+6

Le modifiche a INFORMATION_SCHEMA non vengono scritte nei log binari. Non è un database "reale", è solo un comodo wrapper tabulare attorno ai metadati interni, quindi non ci sono effettive operazioni INSERT/UPDATE/DELETE che si verificano su di esso. Non c'è assolutamente alcun motivo per includere un db binlog-ignore-db o relay-ignore-db per INFORMATION_SCHEMA e molte ragioni * non * per avere filtri di replica, specialmente quelli non necessari. –

+0

Se si utilizza effettivamente binlog-do-db, ricordare che le query tra database non funzioneranno. Preferisco non usare binlog-do-db se non devo sui server che condividono solo un database di produzione. Vedere i documenti per la spiegazione: http://dev.mysql.com/doc/refman/5.5/en/replication-options-binary-log.html#option_mysqld_binlog-do-db – warden

0
  1. No. bisogno di replicare lo schema informazioni leggere questo per i dettagli https://dev.mysql.com/doc/refman/5.0/en/information-schema.html
  2. Sì, è possibile a causa di database mysql contiene tutte le credenziali utente in modo in modo da avere un backup di utenti che è possibile replicare.
  3. Sì, utilizzare binlog-do-db per replicare i database selezionati, altrimenti tutto verrà replicato se non menzionato.