Domanda

Cosa ho:

    .
  • Una macchina Windows con un'istanza di MySQL 5.6 Server.
  • Due database denominati test e test2.
  • Il database Test ha una tabella chiamata activity con colonne id e class

Cosa ho bisogno:

    .
  • Replica della tabella test.activity al database test2 con una condizione che Test.activity.class = 'B'.

So come replicare con un server diverso.Ma non per lo stesso server all'interno di diversi database. Ho controllato questo link , ma lo fanon dare abbastanza informazioni.

È stato utile?

Soluzione

Non sarebbe affatto una situazione normale!Non è possibile modificare il database durante la replica e il master / slave non può avere gli stessi ID server.Consiglierei se è necessario farlo, quindi configurare alcuni trigger sul primo DB, per replicare i comandi Inserisci / Aggiorna contro il secondo.

Altri suggerimenti

Perché è sullo stesso server, perché non usi un trigger per questo?

Se vuoi solo replicare i dati è possibile aggiungere un triger su aggiornamento o inserire o sia quello che è necessario.In questo modo puoi usare facilmente le tue condizioni.La replica master / slave sarebbe migliore per i server diversi.

Puoi guardare qui per gli esempi di trigger mysql. E qui è un campione per il tuo caso.

Se ho capito correttamente la tua necessità, puoi avere 2 istanze MySQL su un singolo server (OS), è possibile configurare uno di essi come Master e un altro come schiavo.Devi creare diversi my.conf, ci ha chiamato My1.Conf e My2.Conf che ognuno dovrebbe essere diverso sul numero di porta e sul percorso del socket e sul percorso di errore del registro e alcuni altri parametri.Con questo approccio, eseguirai 2 daemon MySQL con diverse configurazioni.Per il dotto completo per favore vai a https://dev.mysql.com/doc/refman/5.1/it/multiple-servers.html .

Prova MySQL Sandbox, probabilmente risolverà il tuo problema ( http://mysqlsandbox.net/ )

Perché:

.

Replica del test.activity Tabella per testare2 Database con una condizione Quel test.Activity.class= 'B'.

Replica nativa non aiuta, e in questo caso meglio lasciare sia il database sullo stesso server e basta installare il trigger per inser / update / elimina sul database master, che controllerà le condizioni e apportano modifiche dirette sul secondo database.

Questo è il modo più semplice.Ci sono molti altri possibili.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a dba.stackexchange
scroll top