como imp banco de dados inteiro e substituir os dados atuais?

5

Eu tenho dois bancos de dados, diz A e B. Eles são iguais, espere que os registros de dados sejam novos ou antigos. Eu quero exp do mais novo (A) e imp para o mais antigo (B).

quando eu importo para o antigo pelo seguinte comando

nome de usuário / senha imp = xxx.dmp fromuser = Auser touser = Buser

isso não será realmente importado, já que o B já possui todas as tabelas.

Então, qualquer um sabe que existe um comando para importar e substituir o banco de dados atual. Obrigado

A propósito, estou usando o Oracle

    
por jasonfungsing 06.09.2010 / 09:13

3 respostas

7

A importação é destinada ao carregamento de esquemas, objetos e dados inteiros. Embora haja alguma flexibilidade - carregar tabelas individuais, apenas carregar os dados - ela não manipula normalmente a existência de tabelas com dados no esquema de destino. Isso é especialmente um problema se os dados antigos no esquema de destino contiverem registros que foram atualizados ou excluídos no esquema de origem mais recente.

Se você estiver usando o Oracle 10g ou superior, a solução é usar o Data Pump. Esse utilitário tem uma funcionalidade muito mais poderosa, incluindo a capacidade de substituir tabelas ou dados existentes em tabelas existentes no esquema de destino com os dados do esquema de origem. Saiba mais .

Se você estiver usando uma versão anterior do banco de dados, há algumas soluções alternativas. Saiba mais. Mas talvez seja necessário desativar todos os restrições e corrigir os dados em uma rodada de pós-processamento.

    
por 06.09.2010 / 15:59
7

Apenas use Datapump (expdp / impdp em vez de exp / imp) e especifique o TABLE_EXISTS_ACTION = TRUNCATE (ou REPLACE, conforme apropriado).

    
por 08.11.2010 / 14:02
5

Ou, se puder pagar, elimine as tabelas em questão de B e recrie-as usando import ou impdp. Geralmente, descartamos todo o esquema (drop user UUUU cascade) e fazemos uma nova importação, por exemplo, quando "atualizamos" o banco de dados de teste / desenvolvimento da produção.

    
por 28.09.2010 / 16:08