Quem sou eu

2016 ESTÁ INICIANDO E O PROJETO DESTE BLOG ESTA RESSURGINDO !!!!

sexta-feira, 22 de abril de 2011

dbexport - Extraindo databases

TRABALHANDO COM O DBEXPORT

Existem varias maneiras de extrair dados no INFORMIX as quais você vai encontraremos neste blog , nesta postagem iremos falar sobre o dbexport. 

Quando utilizar o dbexport:  Quando desejamos extrair uma database por completa (dados e schemas) utilizaremos o dbexport. 

Requisitos: 

1 - Existir espaço livre na área onde será construído a extração (é recomendado que a área de disco tenha o mesmo  espaço do banco da dados , os arquivos poderão ficar um pouco menor que o tamanho do banco mas sempre tenham uama era suficiente para que caiba toda a extração) 

2- Usuário Informix ter permissão de gravação no diretório 

3- Database sem nenhum lock , o dbexport ira colocar na database um loco exclusivo durante sua execução, caso isso não seja possível será abortado. 

O dbexport é um programa nativo do informix e sua utilização é muito simples, requer ser usado por um usuário com direitos administradores e que tenha as variáveis de ambiente da instancia carregadas. 

    # dbexport  (database) (sintax)          # com essa simples linha de comando atendendo aos per requisitos acima teremos a database extraída para arquivos texto

    Estrutura da saída: Teremos um diretório chamado .exp dentro deste diretório teremos vários arquivos com a extensão .unl que são arquivos correspondentes aos dados das tabelas extraídas, caso a tabela tenha 0 registros existira também o  o arquivo. 
  Teremos também um arquivo chamado .sql que é responsável pela criação dos objetos (tabelas, índex, permissão, views, seqüente, primary key , trigger , procederes, e tudo mais que seja objetos contidos numa database), no final serra executado um update statistics para todas as tabelas criadas. 

Interrupções: 

   Durante a extração do dbexport pode ser interrompido a qualquer momento, caso seja interrompido o  dbexport vai pedir confirmação antes de terminar. 
   Você pode especificar o diretório onde quer que a extração seja gravada (diretório .exp arquivos .unl e arquivos .sal) caso não especifique será gravado no diretório de trabalho atual. 

 Comentario:  O dbexport não tem limitações com tamanho de arquivos porem existem sistemas operacionais que limitam e como podemos ter tabelas consideravelmente grandes isso pode ser um bloqueio, veja sempre com o S.O os parâmetros de unlimit , na versão do INFOMRMIX 7.31 eu tinha muito problemas pois esta versão não criava arquivos maiores que 2GB. 

Syntax dos comandos do dbexport :

comando: dbexport    (database) (sintax)

Sintaxes:       # caso nenhuma sintax seja passada o dbexport será excutado do mono nativo

Finalidades das sintax:  

-c:  Faz completa exportação ignorando erros que não seja fatal, com este parâmetro só será interrompendo a importação caso aconteça um erro fatal. 

-q:  Não exibe o log da execução do dbexport . 

-ss:  Gera junto com a script de extração as informações especificas como inicial extent , nexo extent , informação das fragmentações , locking mode, dbspace da tabela … todas as características de como os objetos estão construídos. 

-X:  Reconhece dados binários HEX em campos de caracteres

-V: exibe a versão do produto 


Observação: O dbexport só termina quando toda a database estiver extraída para arquivo , isso pode levar bastante tempo , tudo depende do tamanho da database e da capacidade do hardware para leitura e escrita e da versão do INFORMIX. Caso seja um ambiente de produção enquanto estiver fazendo o dbexport ninguém mais utiliza o banco de dados. (A capacidade do Hardware principalmente discos e file sistema tem muita influencia sobre esta pratica)