Automatizza la sincronizzazione delle tabelle Oracle con le tabelle MySQL [chiuso]

StackOverflow https://stackoverflow.com/questions/20811

  •  09-06-2019
  •  | 
  •  

Domanda

L'università in cui lavoro utilizza Oracle per il sistema di database.Al momento disponiamo di programmi che eseguiamo di notte per scaricare ciò di cui abbiamo bisogno in alcune tabelle di accesso locale per le nostre esigenze di test.L’accesso sta diventando troppo limitato per questo ora e abbiamo bisogno di qualcosa di più grande.Inoltre, i lavori notturni richiedono una manutenzione costante per continuare a funzionare (a causa di problemi di rete, modifiche alle tabelle, codice errato :)) e vorrei eliminarli per liberarci per cose più importanti.

Ho molta familiarità con MySQL, quindi ho configurato un server MySQL di prova.Qual è il modo migliore per automatizzare la copia delle tabelle necessarie da Oracle a MySQL?

Modificare:Ho accettato la risposta.Non mi piace la risposta, ma sembra corretta sulla base di ulteriori ricerche e della mancanza di altre risposte fornite.Grazie a tutti per aver riflettuto sulla mia domanda e per aver risposto.

È stato utile?

Soluzione

Non penso che ci sia davvero qualcosa che possa fare questo.Se potessi configurare un database Oracle locale, molto probabilmente potresti farlo poiché Oracle ha vari mezzi per mantenere due database "sincronizzati", a condizione che siano entrambi Oracle.

Se devi usare mysql, probabilmente dovrai semplicemente scrivere qualcosa per sincronizzare i dati, questo ovviamente funzionerà sempre con gli stessi problemi che hai attualmente con l'accesso al "database".

Potresti impostare qualcosa con HSODBC e trigger, ma

  1. Ho scoperto che HSODBC è molto affamato di memoria
  2. Questo aggiungerà solo più carico al tuo DB, che secondo te è già pesantemente caricato durante il giorno.

Se la cosa principale che stai facendo è desiderare una copia di prova locale del tuo database Oracle, sarebbe meglio impostare la sincronizzazione con una versione locale di Oracle, per quanto ne so dalle licenze, Oracle è gratuito per le copie di sviluppo (io ho visto alcuni post contrari, ma se trovi che è così, potresti sempre usare qualcosa come Oracle XE)

Altri suggerimenti

Potresti semplicemente copiare le tabelle Oracle e quindi configurarle come tabelle collegate in MS Access?In questo modo il front-end rimane lo stesso e in più mantieni tutto in Oracle (meno parti mobili rispetto all'esportazione e all'importazione).

Come ha detto Kellyn, ci sono molti strumenti gratuiti.Uno di questi è SQLWorkbench http://www.sql-workbench.net/, che funziona con qualsiasi database JDBC, quindi MySQL e Oracle dovrebbero funzionare.Può creare tabelle in Oracle, se necessario, o semplicemente copiare solo i dati (aggiornati).

Sono disponibili molti strumenti per migrare i dati da Oracle a MySQL se il tuo database non è molto complicato.

Puoi utilizzare strumenti open source come lo strumento Kettle pentaho ETL o strumenti aziendali a pagamento come DB convert: https://dbconvert.com/oracle/mysql/

Infine puoi scrivere uno script o un programma che migra i dati.

Puoi trovare i link relativi alla tua domanda:

https://dba.stackexchange.com/questions/150343/how-to-sync-a-mysql-db-with-a-oracle-db

Migrazione da Oracle a MySQL

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top