Pular para o conteúdo
  • Este tópico contém 4 respostas, 3 vozes e foi atualizado pela última vez 15 anos atrás por MarceloRO.
Visualizando 5 posts - 1 até 5 (de 5 do total)
  • Autor
    Posts
  • #98515
    MarceloRO
    Participante

      Pessoal,

      meu cenário é o seguinte:
      tenho uma base de testes, utilizada para testar procedimentos do sistema, atualizações, etc. Hoje utilizo o Oracle 10G.
      Sempre que preciso atualizá-la utilizo um script para limpar as tabelas, views e outros objetos do banco(este procedimento era utilizado no 9i).
      Para agilizar o processo de import e parar com os avisos de que o objeto já existe, posso “dropar” o usuário que irei importar? Isto traria algum problema para o banco?

      Explicando:
      Este ambiente de testes é atualizado com dados recentes, sempre que é necessário aplicar alguma atualização dos sistemas atendidos pelo Banco de Dados.

      #98517
      leandrolbs
      Participante

        Você tem o banco producao, e o teste.

        De certos em certos tempos, vc atualiza o banco teste igual ao producao pois precisar testar recursos que ainda não foram para o producao. entendi isso.

        Se os dados do teste não lhe interessa, use:


        drop user owner_schema cascade;

        Com isso vc excluirá todos os objetos do usuario( fucn, proc, pck,tab..etc).

        após o drop, crie o usuario com os mesmos privs, e importe os dados de producao, não terá mensagens de objeto ja existente etc….

        #98518
        MarceloRO
        Participante

          A minha necessidade é essa mesmo. Não me importo com os dados do banco de testes, preciso que este fique igual ao de produção.

          Mas o impdp não irá tentar recriar o usuário igual ao usuário do banco de produção?

          #98519
          Avatar photoRegis Araujo
          Participante

            Fala Marcelo..!

            Sim.. o drop user cascade vai dropar o usuário e todos os objetos abaixo dele.. e o IMPDP vai recriar o usuário com todos os seus grants..!!

            Vc precisa mudar o nome deste owner no banco de teste?!!

            Se for isto.. basta vc usar a clausula REMAP_SCHEMA=owner:newowner

            Bem tranquilo..!!!

            Abraços..!

            #98521
            MarceloRO
            Participante

              Fala Galera,

              o procedimento funcionou.
              Gerei o arquivo teste.bat com o seguinte conteúdo:
              sqlplus /nolog @dropuser.sql
              impdp system/***** DIRECTORY=BACKUP_DP DUMPFILE=TESTE.DMP LOGFILE=LOGIMPDPTESTE.LOG

              Não precisei mudar o nome do usuário pois neste banco o usuário é o mesmo, mas na minha base de homologação precisarei usar a clausula REMAP_SCHEMA

              o arquivo dropuser.sql
              connect system/*****
              DROP USER TESTE CASCADE;
              exit;

              Não sei se há alguma maneira mais fácil ou direta de fazer o procedimento, mas deu certo.

              Mais uma vez, obrigado a todos.

              Marcelo

            Visualizando 5 posts - 1 até 5 (de 5 do total)
            • Você deve fazer login para responder a este tópico.