2013-06-17 21 views
8

C'è un modo per mantenere sincronizzati due database? Ho un cliente che esegue WordPress con MySQL. C'è un modo per prendere una copia del database dello stato corrente e usarla per un server di sviluppo, e poi quando le modifiche del dev sono fatte, riportarla sul sito live?Come mantenere sincronizzati due database MySQL?

Il client potrebbe apportare modifiche al sito live mentre lavorerò alla versione dev e mi chiederà se ci saranno conflitti di unione.

Se si importa il database aggiornato tramite phpmyadmin, verrà aggiornato solo con le ultime modifiche o sovrascritto tutto?

+4

Replica di MySQL; ma quali importanti cambiamenti strutturali stai apportando al database dev? –

+0

Non si dovrebbe mai avere due database in esecuzione con lo stesso contenuto. –

+0

@MarkBaker È un sito piccolo, le modifiche che sto aggiungendo sono nuove funzionalità per gli amministratori. Sono per lo più preoccupato per la sovrascrittura delle modifiche più recenti. Nei miei test finora sembra aggiornare solo le tabelle che sono cambiate. Sono solo cauto prima di iniziare a lavorare con il sito del cliente. – Alex

risposta

6

Così ho finalmente trovato una soluzione al mio problema. Poiché questo era un problema per WordPress, ho trovato due plugin che funzionavano molto bene.

Gratuito: Database Sync
Molto semplice e ha una semplice interfaccia push/pull.

Plugin a pagamento $ 40-200: WP Migrate DB Pro
Molto più lucido e ha un'opzione per selezionare tabelle specifiche che si desidera sincronizzare.

1

C'è una risposta al problema di duplicazione here. Tuttavia, questo è solo l'inizio delle tue difficoltà. Se due persone stanno apportando modifiche in modo indipendente a due copie di un database, la fusione delle due inevitabilmente causerà incubi. In breve, sì, ci saranno conflitti di fusione. Esattamente ciò che, e ciò che fai a riguardo, dipenderà dalla natura dei cambiamenti che ciascuno di voi ha fatto. In bocca al lupo!

+0

Non penso che i nostri cambiamenti riguarderanno le stesse tabelle, e tutto sarà fatto con molta cautela e supportato, ma mi piacerebbe che fosse un processo semplice. – Alex

8

Ecco un riferimento rapido di MySQL Replication da @Mark Baker oppure è possibile utilizzare MySQL Workbench Synchronization.

+1

Ah, sembra che potrebbe essere un'ottima soluzione. Indagare ora. – Alex

+0

Anche se è necessario installare MySQL Workbench sul computer. –

+0

MySQL Workbench Sync sembra che stia per fare il ticket. Grazie. – Alex

1

Altro moderno (questo post è piuttosto vecchio) soluzioni a pagamento per il problema sarebbe deevop e mergebot.

Mergebot è un plug-in saas che aiuta con complicate fusioni tra i diversi database di sviluppo e produzione, in particolare per WordPress.

deevop è una soluzione più completa che fornisce l'ambiente di sviluppo ma presenta anche numerose opzioni per la sincronizzazione complessa dei dati tra le fasi (escluse le tabelle, ecc.) Non solo per WordPress ma anche per altre piattaforme.

È anche possibile combinare entrambi e utilizzare deevop come gestore distribuzione (un solo clic per la distribuzione da/per produzione) e quindi utilizzare mergebot per le unioni di database complesse.

+0

deevop sembra interessante. Mergebot appartiene alle stesse persone che hanno creato WP Migrate Pro (Delicious Brains) – Alex

Problemi correlati