Pergunta

A universidade em que trabalho usa Oracle para o sistema de banco de dados.Atualmente, temos programas que executamos à noite para baixar o que precisamos em algumas tabelas locais do Access para nossas necessidades de teste.O acesso está ficando pequeno para isso agora e precisamos de algo maior.Além disso, os trabalhos noturnos exigem manutenção constante para continuar funcionando (por causa de problemas de rede, alterações de tabela, código incorreto :)) e eu gostaria de eliminá-los para nos liberar para coisas mais importantes.

Estou mais familiarizado com o MySQL, então configurei um servidor MySQL de teste.Qual é a melhor maneira de automatizar a cópia das tabelas necessárias do Oracle para o MySQL?

Editar:Aceitei a resposta.Não gosto da resposta, mas parece estar correta com base em pesquisas adicionais e na falta de outras respostas fornecidas.Obrigado a todos por ponderarem minha pergunta e respondê-la.

Foi útil?

Solução

Eu não acho que haja realmente algo que possa fazer isso.Se você pudesse configurar um banco de dados Oracle local, provavelmente poderia, pois o Oracle tem vários meios de manter dois bancos de dados "sincronizados", desde que ambos sejam Oracle.

Se você precisar usar o mysql, provavelmente precisará apenas escrever algo para sincronizar os dados; é claro, isso sempre funcionará nos mesmos problemas que você tem atualmente com o "banco de dados" de acesso.

Você poderia configurar algo com HSODBC e gatilhos, mas

  1. Descobri que o HSODBC tem muita fome de memória
  2. Isso só vai adicionar mais carga ao seu banco de dados, que você diz já estar muito carregado durante o dia.

Se a principal coisa que você está fazendo é querer uma cópia de teste local do seu banco de dados Oracle, seria melhor configurar a sincronização com uma versão local do Oracle, pelo que posso dizer pelas licenças, o Oracle é gratuito para cópias de desenvolvimento (I vi alguns posts em contrário, mas se você achar que é esse o caso, você sempre pode usar algo como Oracle XE)

Outras dicas

Você poderia simplesmente copiar as tabelas Oracle e configurá-las como tabelas vinculadas no MS Access?Dessa forma o front-end permanece o mesmo e você mantém tudo no Oracle (menos partes móveis do que exportar e importar).

Como disse Kellyn, existem muitas ferramentas gratuitas.Um deles é SQLWorkbench http://www.sql-workbench.net/, que funciona com qualquer banco de dados JDBC, portanto MySQL e Oracle devem funcionar.Ele pode criar tabelas no Oracle, se necessário, ou apenas copiar os dados (atualizados).

Existem muitas ferramentas disponíveis para migrar dados de Oracle para MySQL se seu banco de dados não for muito complicado.

Você pode usar ferramentas de código aberto como a ferramenta Kettle pentaho ETL ou ferramentas empresariais pagas como DB convert: https://dbconvert.com/oracle/mysql/

Por último, você pode escrever um script ou programa que migre os dados.

Encontre links relacionados à sua pergunta:

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

Migrar do Oracle para o MySQL

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top