Social Icons

13 de abr. de 2011

Tarefas de um DBA - O que faz um DBA?


Pessoal,

     No artigo de hoje irei escrever sobre as tarefas de um DBA: o que ele faz em seu trabalho e quais são as suas responsabilidades. Para quem não sabe o que significa a sigla DBA, ela vem do inglês e significa Database Administrator (Administrador de Bancos de Dados). 

9 de abr. de 2011

Recuperando dados com o RMAN utilizando Pontos de Restauração


Olá pessoal,

     No artigo de hoje irei demonstrar um recurso muito útil e que sempre demonstro nas aulas dos treinamentos oficiais Oracle Database Administration Workshop II, que é como recuperar dados com o RMAN utilizando Pontos de Restauração.

     Um ponto de restauração pode ser entendido como um apelido para um SCN (System Change Number) ou momento específico do Banco de Dados (BD). Ao criar um ponto de restauração, podemos posteriormente restaurar o estado do BD para o momento em que ele (o ponto de restauração) foi criado. Isso permite voltar o BD no tempo para refletir um estado anterior, ou seja, se às 10h de hoje criarmos um ponto de restauração no BD e às 12h apagarmos dados de 1 tabela, podemos posteriormente recuperar esses dados voltando o BD para o momento em que o ponto de restauração foi criado, pois neste momento os dados ainda existiam na tabela. Este procedimento pode ser útil para executar scripts de atualizações de sistemas. Neste caso, se algo de errado acontecer ao executar os scripts, você poderá voltar o estado anterior do BD e recomeçar a atualização!
  
     O ponto de restauração é armazenado no arquivo de controle e pode ser utilizado para restaurar dados por meio de Flashback (FLASHBACK DATABASE e FLASHBACK TABLEou Backups (RESTORE e RECOVER DATABASE).
       
     Para demonstrar o recurso, executaremos abaixo um passo-a-passo, onde criaremos um ponto de restauração chamado teste e faremos em seguida um backup do BD. Depois, apagaremos dados de uma tabela e posteriormente faremos uma recuperação desses dados, utilizando os comandos RESTORE e RECOVER, através do RMAN.

--------------------------------------------------------------------------
    Para iniciar o passo-a-passo abaixo, é necessário:
         1-  Conectar-se previamente no Banco de Dados desejado, através do SQL Plus ou outra ferramenta compatível, 
com um usuário que tenha o privilégio SYSDBA nos passos 1, 2, 3, 5, 6, 7, 8 e 10 ;
         2- Conectar-se no RMAN em um BD target e opcionalmente em um BD catálogo do RMAN nos passos 4 e 9; 
         3- Ter instalado no BD o schema HR. Se o BD não tiver o schema HR e você precisar de orientação para instalá-lo, 
--------------------------------------------------------------------------


------------------------------------------------------------------------
PASSO-A-PASSO 
------------------------------------------------------------------------

     Passo 1: Criando a tabela EMP2 (que será posteriormente apagada e restaurada )
          SQL> CREATE TABLE HR.EMP2 AS SELECT * FROM HR.EMPLOYEES;

     Passo 2: Verificando se a tabela EMP2 foi criada no passo anterior:
           SQL> SELECT COUNT(1) FROM HR.EMP2;
   
           Resultado: Deverá retornar um valor maior que zero (o normal é que ela retorne o valor 107).
 
     Passo 3: Criando o ponto de restauração (chamado teste):
           SQL> create restore point teste;

     Passo 4: Criando um backup dos dados:
             Neste passo criaremos um backup incremental nível 0, que irá fazer um backup completo de todos os dados do BD. Para efetuar o backup de acordo com o roteiro deste passo-a-passo, é necessário que o BD esteja configurado para gerar archive logs (ver artigo Configurando Bancos de Dados para gerar Archive Logs).
            RMAN> backup incremental level 0 database;

             Obs.: O backup irá conter os dados da tabela EMP2 que serão apagados no próximo passo para possibilitar o teste de restauração e recuperação no Passo 9:

     Passo 5: Apagando os dados da tabela EMP2:
            SQL> TRUNCATE TABLE HR.EMP2;

     Passo 6: Verificando se os dados da tabela EMP2 foram apagados:
            SQL> SELECT COUNT(1) FROM HR.EMP2;
    
             Resultado: Deverá retornar o valor zero.

     Passo 7: Efetuando um shutdown no BD para iniciar a restauração:
             SQL> shutdown immediate;
    
     Passo 8: Startando o BD em estado mount para iniciar a restauração:
             SQL> startup mount;

     Passo 9: Restaurando os dados e abrindo o BD:     
              RMAN> restore database until restore point teste;
              RMAN> recover database until restore point teste;
              RMAN> alter database open resetlogs;

     Passo 10: Verificando se os dados foram restaurados com sucesso:             
              SQL> SELECT COUNT(1) FROM HR.EMP2;
   
      RESULTADO FINAL:
              Se a restauração dos dados ocorrer sem problemas, o retorno do passo 10 será novamente um valor maior que zero, ou seja, os dados da tabela EMP2 que foram apagados no Passo 5 foram restaurados com sucesso.
     

CONCLUSÃO:
       Utilizar um ponto de restauração é um método bastante prático e preciso para restaurar o BD para um estado prévio, caso ocorram falhas ou atualizações indesejadas no BD. Recomendo sempre que possível, criar pontos de restauração seguidos de um backup do BD, antes de efetuar grandes atualizações que possam comprometer a integridade ou consistência dos dados.
 
  
Referências:
    - Curso oficial da Oracle: Oracle Database 10G Administration Workshop II.

3 de abr. de 2011

Conhecendo o novo Oracle SQL Developer 3.0


Olá Pessoal,

      Neste artigo farei apenas alguns comentários sobre algumas das novas características do Oracle SQL Developer 3.0, a nova versão (lançada em 03/2011) da já bastante conhecida e utilizada ferramenta SQL Developer. Para consultar informações gerais sobre o SQL Developer, indico ler o artigo Quickview/Instalação do Oracle SQL Developer 2.1, que foi publicado neste blog em 11/08/2011.

     Na versão 3.0 o SQL Developer está mais completo. Entre as novas características, ele possui agora funcionalidades para efetuar modelagem de dados (Data Modeler) e para administrar bancos de dados, o que poderá agradar bastante aos AD's (Administradores de Dados) e DBA's (Administradores de Bancos de Dados).

     As 3 principais características que eu mais gostei no SQL Developer 3.0 são:

     1- Funcionalidades para administração de bancos de dados:
         Inclusão de funcionalidades para gerenciar a configuração do Bancos de Dados, o Gerenciador de Recursos, Segurança (usuários, roles e profiles) e Armazenamento do Banco de Dados.
          Estas funcionalidades são muito úteis para o dia-a-dia dos DBA's. Para criar usuários, roles e profiles eu utilizava o Console do Enterprise Manager, que é instalado opcionalmente com o cliente do Oracle.

     2- Data Modeler:
          Funcionalidades para projetar e desenvolver modelos de dados.
          A interface gráfica do Data Modeler acoplada ao SQL Developer poderá substituir ferramentas CASE que são utilizadas para esta finalidade.

     3- DBMS Scheduler:
          Funcionalidades gráficas para gerenciar Scheduler Jobs.
          Para criar scheduler jobs eu tenho vários scripts que eu sempre utilizo como base para criar novos  scheduler jobs quando eu preciso. A partir de agora, não precisarei mais destes scripts, pois será mais fácil criar e gerenciar scheduler jobs utilizando a funcionalidade gráfica que foi inclusa no SQL Developer para esta finalidade.


     Segue abaixo uma imagem do SQL Developer 3.0 onde podem ser visualizadas as funcionalidades dos itens acima (ver indicações em vermelho):


     Link para download:
          http://www.oracle.com/technetwork/developer-tools/sql-developer/downloads/index.html
  
   
COMENTÁRIOS FINAIS:
    Na empresa em que trabalho alguns DBA's utilizam versões desatualizadas de outras ferramentas que não são gratuitas, para administrar Bancos de Dados Oracle, porque o SQL Developer em versões anteriores não possuía funcionalidades para administrar Bancos de Dados. Nesta nova versão muitas funcionalidades para administrar bancos de dados foram inclusas, por isso acho que eles e muitos outros DBA's passarão a partir de agora a utilizar o SQL Developer 3.0. Eu que já usava o SQL Developer, estou mais satisfeito, pois gosto bastante desta ferramenta e agora terei que usar com menos frequência outras ferramentas.
     
  
    
Referências:     
     http://www.oracle.com/technetwork/developer-tools/sql-developer/rel3-featurelist-ea-189447.html
 

LINKS ÚTEIS

Total de visualizações de página

Seguidores

Meu One Drive (antigo Sky Drive)