Criação de um BD Vazio para receber um EXP

DBA Geral (instalação, configuração do banco, scripts do Sql*Plus, shell scripts, batch scripts, etc...)
Responder
flaviademorais
Rank: Estagiário Pleno
Rank: Estagiário Pleno
Mensagens: 6
Registrado em: Qui, 28 Jan 2010 1:32 pm
Localização: São Luis - MA
Flávia de Morais

Olá pessoal,

Antes de abrir esse tópico, pesquisei e muito, mas não encontrei nada que satisfizesse minha dúvida... ou melhor necessidade =)
É o seguinte:
Sou DBA SqlServer e por necessidade da empresa, preciso aprender ORACLE, que confesso ter muita vontade de aprender e dominar... Então, muitos conceitos eu entendo, mas o ORACLE é bem mais complicadinho ainda mais por ele rodar em um ambiente Linux e também não domino Linux...

Pois bem, já tem alguns meses que estudo os dois e gostaria que me ajudassem em uma urgência... Preciso criar um banco de dados "vazio" não sei se é possível, para jogar um EXP full que fiz do banco de produção. Minha dúvida é se posso criar esse banco, sem estrutura nenhuma, no servidor que usamos para testes que tem a mesma estrutura do de produção (Oracle 10g em ambiente Linux RedHat), e apenas jogar o EXP que fiz... Já li em vários lugares sobre a criação, mas todos como se eu fosse criar o banco do zero e sua estrutura, mas apenas queria um banco criado o mais simples possivel. O banco que quero criar é uma cópia fiel do de produção.
Gostaria de saber também se existe algum comando ou ferramenta que dê para extrair o script de criação de um objeto/banco, já que o banco que vou criar é uma cópia fiel do outro, ajudaria também... eu uso o PL/SQL para manipular os dados.

Obrigada pela atenção, e espero que me ajudem, acho que deu pra entender o que quero né???

Abraços...

Informações do Ambiente: Oracle 10g rodando em ambiente Linux
* Versão do Oracle:10g
* Sistema Operacional:Linux RedHat
burga
Rank: DBA Pleno
Rank: DBA Pleno
Mensagens: 232
Registrado em: Qui, 26 Nov 2009 1:05 pm
Localização: SP

Sim você pode executar o import do dump em um banco "vazio" a única necessidade, caso tenha utilizado o comando exp é a de que os usuários (esquemas) e as tablespaces (com mesmo nome das tablespaces da base que foi realizada o export) já devem estar criadas antes de rodar o comando IMP.

Caso tenha feito o export utilizando datapump, a criação dos usuários já não é necessária...
flaviademorais
Rank: Estagiário Pleno
Rank: Estagiário Pleno
Mensagens: 6
Registrado em: Qui, 28 Jan 2010 1:32 pm
Localização: São Luis - MA
Flávia de Morais

Pois é,

Minha dúvida é justamente como criar esse banco o mais simples possivel, se uso um CREATE DATABASE ou não precisa... Tipo criar um todo default, o que é datapump? como eu posso saber o utilitario? Usei o EXP convencional do meu SO...

Obrigada
diegolenhardt
Moderador
Moderador
Mensagens: 1177
Registrado em: Qui, 15 Out 2009 10:28 am
Localização: Recife

Para criar um banco de dados, aconselho utilizar o utilitario dbca, para isso vai precisar de interface gráfica no linux,

lá você cria um banco,

depois usa o imp para importar o seu banco exportado pelo exp,

DataPump é um exp melhorado, mais eficiente em alguns pontos, principalmente velocidade,

vai postando suas duvidas..
flaviademorais
Rank: Estagiário Pleno
Rank: Estagiário Pleno
Mensagens: 6
Registrado em: Qui, 28 Jan 2010 1:32 pm
Localização: São Luis - MA
Flávia de Morais

Aeeeee

Obrigada aos dois, vocês me deram uma luz hehehe o que eu precisava para desenrolar...
É o seguinte...
Instalei o dbca no Linux e mesmo sem ter ambiente gráfico...
Consegui acessá-lo graficamente, usando o VNC Viewer(Acesso remoto)... Coloquei o IP e a porta que foi instalado o dbca e ele abre a tela de comando no ambiente VNC, daí é só digitar na tela de comando "dbca" e abre a ferramenta graficamente, estou hiper mega ultra feliz... agora vou tentar usar e criar o banco...

Pessoal, se vocês acharem interessante eu posso postar passo a passo como eu fiz, talvez sirva de ajuda...

Obrigada
diegolenhardt
Moderador
Moderador
Mensagens: 1177
Registrado em: Qui, 15 Out 2009 10:28 am
Localização: Recife

Acho interessante você rodar um select no banco de produção para ver quais recursos eles utiliza,

XML, Java, Spatial, etc

Selecionar tudo

select * from dba_registry,
o dbca vai lhe pedir sobre quais recursos quer adicionar ao banco,

=]

outra coisa, selecione a opçao Banco Personalizado, com o dbca vai ter que criar as tablespaces tambem

dba_tablespaces
flaviademorais
Rank: Estagiário Pleno
Rank: Estagiário Pleno
Mensagens: 6
Registrado em: Qui, 28 Jan 2010 1:32 pm
Localização: São Luis - MA
Flávia de Morais

Oi Diego,

Ele não traz as tablespaces no EXP do banco?
Como eu faço a importação pelo dbca?

=)

Obrigada
diegolenhardt
Moderador
Moderador
Mensagens: 1177
Registrado em: Qui, 15 Out 2009 10:28 am
Localização: Recife

DBCA - Database Configuration Assistent, serve para criar, editar, excluir,

Exp - Utilitario para exportacao de schemas,

Imp - Utilitario para importação de schemas,

Quando você usa o Exp/Imp você deve criar as tablespaces e owners, (usuarios), create user...

As tablespaces você pode criar já pelo DBCA,

espero ter ajudado

mandei uma mensagem privada com o meu msn, de repente seja mais facil para auxiliar,
pedroedu
Rank: Programador Sênior
Rank: Programador Sênior
Mensagens: 50
Registrado em: Qua, 10 Fev 2010 3:04 pm
Localização: são Luis
Oracle Database 10g/12c Administrator Certified Professional
Oracle Database 11g Security
ISFS Information Security Foundation based on ISO IEC 27001
ITIL® Foundation V3 in IT Service Management

Faz um abackup frio, restaura em uma outra maquina com a mesma estrutura, seta a sid e starta o banco.

Espero ter ajudado.
annubiss
Rank: Programador Júnior
Rank: Programador Júnior
Mensagens: 26
Registrado em: Sex, 05 Fev 2010 12:43 pm
Localização: RS

Eu fiz isso com conexão ssh, sem usar VNC...
Bardelli
Rank: Estagiário Júnior
Rank: Estagiário Júnior
Mensagens: 2
Registrado em: Seg, 29 Mar 2010 5:59 pm
Localização: São Paulo - SP

Flavia, me encontro na mesma situação.. criando um banco vazio para realizar um import.

Você poderia enviar o passo a passo?


Vou lhe enviar meu e-mail por Mp, ou se preferir poste aqui talvez ajude mais pessoas.

Muito obrigado
elidias7
Rank: Analista Sênior
Rank: Analista Sênior
Mensagens: 153
Registrado em: Qui, 01 Nov 2007 2:53 pm
Localização: Osasco
Eli Dias
Oracle Certified Professional

Bom dia pessoal.

Essa historia de criar um banco vazio é um tanto quanto complicada, pois fica complicado saber quais são as necessidades deste novo banco!

Mas para realizar a criação do banco e logo após importar os dados acho que pode ser feita dessa forma

1 - Criar o banco via DBCA da melhor forma ou o mais simples possível.

2 - No banco de produção ou onde foi feito o export tente rodar estas query´s para obter os usuario e tablespaces criadas

Selecionar tudo

select
'create tablespace '||t.tablespace_name||
' datafile '||d.file_name||' size '||round(d.bytes/1048576)||'M 
autoextend on next 100M maxsize unlimited extent_managemente '||t.EXTENT_MANAGEMENT||';'
from dba_data_files d, dba_tablespaces t
where d.tablespace_name = t.tablespace_name
Obs -> o valor de file_name vai ter que ser alterado conforme necessidade do seu novo servidor (novo caminho do arquivo) e tem que ser colocado entre aspas simples

Selecionar tudo

select 
'create user '||username||' identified by values '||password||
' default tablespace '||DEFAULT_TABLESPACE||
' temporary tablespace '||TEMPORARY_TABLESPACE||
' profile '||PROFILE||
' account status '||ACCOUNT_STATUS||';'
from dba_users;
Obs -> o campo password precisará tem aspas simples também

Com isto você terá as tablespaces e os usuarios, para serem criados no banco "vazio" antes de realizar o import.
Qualquer novidade poste aí pra galera ajudar!

Abraços
Bardelli
Rank: Estagiário Júnior
Rank: Estagiário Júnior
Mensagens: 2
Registrado em: Seg, 29 Mar 2010 5:59 pm
Localização: São Paulo - SP

Bom dia!

Não sei se entendi direito:

O primeiro código é "rodado" na máquina de produção e o segundo código na que receberá o import ?

Obrigado pela atenção!
diegolenhardt
Moderador
Moderador
Mensagens: 1177
Registrado em: Qui, 15 Out 2009 10:28 am
Localização: Recife

Sim, para obter informações do ambiente atual, lá em cima tem também na dba_registry pra ver os recursos, XML, Spatial, etc

Você precisa criar as tablespaces e os usuários (schemas) manualmente, o select postado já vai te gerar todos esses comandos, só rodar ele no banco de produção hoje, ele vai dar os comandos pra rodar no novo, depois disso pode começar a tentar carregar o EXP.
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 3 visitantes