Páginas

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). 

   
     O assunto deste artigo, para quem já está na área, acredito que seja mais fácil de entender, mas para quem é iniciante ou ainda pretende ingressar na carreira, não é tão fácil assim! Para quem não trabalha com TI, pior ainda, essas pessoas não tem a mínima idéia do que é ou do que faz um DBA, por isso quando me perguntam qual a minha profissão, para facilitar a conversa, eu prefiro responder: - Sou Analista de Sistemas. A música Hoje eu sou um DBA do The Sprinters explica bem esta situação.
 


  -----------------------------------------------------------------
TAREFAS DO DBA
  
     Resumidamente, um DBA deve gerenciar os bancos de dados de um ou mais sistemas (geralmente muitos sistemas). Em detalhes, as tarefas que ele deve realizar são:

 1- Avaliar o hardware do Servidor de Banco de Dados:
          Avaliar e definir o hardware necessário para instalar o BD e comportar os seus dados e acessos.

 2- Instalar o Software do Banco de Dados:
          Instalar o Software do BD, instalar atualizações e correções de bugs e tudo o que for necessário para manter a estrutura física e lógica do BD.

 3- Planejar e Implementar o Banco de Dados:
          Definir e criar tabelas, indices e outros objetos de BD.
  
 4- Criar e abrir o BD:
          Criar o BD e garantir que ele esteja disponível para os usuários.
  
 5- Fazer backup do BD:
          Efetuar backups dos BD's e garantir que eles sejam recuperáveis.

 6- Gerenciar usuários de BD:
          Criar usuários de BD e dar a eles privilégios de acesso aos dados, priorizando sempre a segurança dos dados, ou seja, os usuários devem ter o menor privilégio possível de acesso aos dados para evitar riscos desnecessários e proteger o BD como um todo.

 7- Recuperar o BD em caso de falhas:
         Definir e implementar estratégias e planos para recuperar o BD em caso de falhas.

 8- Monitorar e ajustar a performance do BD:
         Monitorar constantemente a performance do BD para identificar gargalos de desempenho e definir/implementar soluções para otimizar o seu desempenho.
         Manter o tempo de resposta de acesso aos dados de acordo com as expectativas do usuários é o objetivo principal desta tarefa. Esta é a tarefa que eu mais gosto!
-----------------------------------------------------------------   
     
     Em uma aula que eu dei para uma turma de Oracle Database 10G, gerei uma discussão com os alunos para definirmos  (de acordo com os nossos conhecimentos e experiência) quais eram os 3 principais requisitos que o mercado de trabalho exigia para contratar um DBA. Chegamos nessa aula à seguinte conclusão:
            O DBA tem que no mínimo saber:
                    1- Instalar e gerenciar o Banco de Dados e seus usuários, com segurança;
                    2- Efetuar e recuperar backups (quando o BD for Oracle, tem que saber usar o RMAN);
                    3- Monitorar e ajustar a performance do BD.
    
  
   
  
COMENTÁRIOS:
  
     Já ouvi muitos Desenvolvedores/Analistas de Sistemas afirmarem que uma tecnologia de acesso a dados ou que um determinado sistema não exige o trabalho de um DBA. Já ouvi eles falarem: - Para quê um DBA? A gente otimizou tudo, não precisamos disso! ou - Para quê um DBA, o Hybernate é otimizado e cria todos os objetos no BD. Este sistema não precisa de um DBA. O meu comentário é que estes profissionais estão muito enganados. Sistemas que possuem muitos usuários, em organizações que possuem BD's corporativos, que armazenam dados de múltiplas aplicações, precisam de um DBA.
    
     Desenvolvedores ou Analistas de Sistemas geralmente não são especialistas em gerenciar Bancos de Dados, alguns até fazem isso, mas normalmente não fazem da melhor forma possível, pois eles não tem tempo para estudar a fundo os SGBD´s (Sistemas Gerenciadores de Bancos de Dados). Esta não é a atividade principal deles. Eles tem é que especificar e desenvolver os sistemas. No quesito Banco de Dados, eles precisam apenas modelar os dados (ainda assim, de preferência com o suporte de um DBA).

     Também não acredito que uma ferramenta ou tecnologia de persistência ou acesso a dados (já utilizei algumas) seja tão poderosa a ponto de fazer um trabalho de tuning para acesso a dados melhor que um bom DBA.

     Já trabalhei em várias empresas como Analista/Desenvolvedor de Sistemas, com sistemas de pequeno à grande porte, por isso, de acordo com o que vi no mercado e minha experiência, posso afirmar que, sempre que for necessário armazenar dados de muitos sistemas, com segurança e com a melhor performance possível, o trabalho de um DBA é necessário.
  
     No Submarino (http://www.submarino.com.br/), uma das empresas em que trabalhei, se lá não existisse o trabalho de um bom DBA, além dos dados não terem a segurança necessária, acredito que o desempenho do site em datas próximas à datas comemorativas (Ex.: Natal) seria tão ruim que os clientes iriam desistir de efetuar compras, por causa da lentidão que o site iria apresentar para, por exemplo, carregar os dados de uma página de visualização de produtos.
    

     Bom pessoal, por hoje é só!

 
[]s
 
 
Referências:
    - Material do curso oficial da Oracle: Oracle Database 10G Administration Workshop I.

65 comentários:

  1. Artigo muito interessante, falou com propriedade com palavras simples de de fácil entendimento para todos desde quem já é da área de TI para quem esta chegando agora. Parabéns

    ResponderExcluir
  2. Respostas
    1. Queria me aprofundar mais nessa aérea, como entro em contato com você?
      Se possível, me chama no whats 02199984366595 Victor Viana

      Excluir
  3. Olá Fábio, eu trabalhei como DBA SQL Server em uma grande empresa, agora estou em uma pequena empresa como DBA e desenvolvedor C#. Optei por esta mudança porque eu sinceramente acho que os DBAs atualmente são analistas de help-desk de luxo. Na empresa que eu trabalho atualmente, minhas tarefas de DBA se resumem a copiar banco de dados de um lado para outro (prod -> dev e vice-versa) e executar scripts que os desenvolvedores criam (resultado de um desenvolvimento ou correção de inconsistências da aplicação) no ambiente de produção. Os desenvolvedores trabalham em tarefas bem mais complexas e ganham menos que eu! Eu nem sou envolvido em questões de performance e tuning porque a arquitetura do sistema e o modelo relacional são ruins e o resultado disto é que as consultas da aplicação (p. ex. relatórios) tem subselects estranhos, like, e toda sorte de bizarrice, e nem há como melhorar isso com indices e etc. Realmente acho que DBA que não programa e não se envolve com a aplicação e o negócio fica restrito a estas tarefas de suporte bem básicas. O que você acha? Não sei se com Oracle a história é outra.

    ResponderExcluir
  4. Olá Rafael,

    O que vc relatou é a realidade normalmente de pequenas empresas. Em grandes empresas o trabalho é mais complexo. Nelas, além de fazer tudo isso que vc citou, o DBA tem que se preocupar com segurança e performance do BD. Na empresa em que trabalho, sempre ocorrem problemas de performance nas aplicações e eu estou sempre atuando no tuning da instância do Bd ou tuning de SQL, dando apoio aos desenvolvedores! Outro trabalho muito importante é o gerenciamento de segurança, que inclui,por exemplo, gerenciamento de roles, auditoria e profiles.

    Muitas vezes quando liberam aplicações novas, ela funciona perfeitamente em homologação, mas qdo entra em produção fica uma carroça. Nestes casos tenho sempre que interferir limitando recursos temporários para os usuários destas aplicações, de modo que elas não prejudiquem todas as demais aplicações e usuários do Bd.

    Outras atividades que envolvem bastante conhecimento e atenção dos DBAs são a recuperação de backups e criação de ambientes para manter alta disponibilidade (Oracle RAC) e possibilitar recuperação de desastres (Data Guard). Gerenciar tudo isso em grandes empresas é um trabalho complexo e muito além de um help-desk de luxo!

    Qto ao programar, eu programo bastante para automatizar rotinas de manutenção do Bd, mas nada envolvido com o negócio e aplicações!

    Consegui esclarecer suas dúvidas?

    ResponderExcluir
  5. Muito bom o seu blog, estou no 5º semestre do curso de Sistemas de Informação e pretendo me especializar em Banco de Dados Oracle, Fábio, você tem boas referências dos cursos da KASolution?

    Att,

    Bruno Duque

    ResponderExcluir
    Respostas
    1. Bruno, obrigado pelo comentário! Qto à KaSolution, amanhã dia 21/05/2012 começarei com a minha primeira turma na KaSolution. Ainda é cedo para eu comentar detalhes sobre ela, mas posso te adiantar algumas coisas. A KaSolution está começando uma nova parceria com a Oracle (no programa WDP) e por estar começando esta nova fase, os preços dela estão imbatíveis! Faça um orçamento com eles e vc verá! Além disso, a infra-estrutura da Ka é uma das melhores do mercado e o coffee-break é o melhor que eu conheço em Centros de Treinamento de TI.

      []s

      Excluir
  6. Olá Fabio, tudo bem?
    Estava navegando no teu blog e achei muito interessante as suas qualificações.
    Sempre soube de que a profissão de DBA é muito boa pra quem entende..
    Até então eu nunca tinha trabalhado com BD, e no momento estou tento esse privilegio..
    Trabalho numa empresa de desenvolvimento web.. Sou programador iniciante em SQL e PHP..

    Então gostaria de dicas para me aprofundar, e se vale a pena investir...

    Abraços
    Leslie

    ResponderExcluir
    Respostas
    1. Olá Leslie,
      Vou dar a mesma dica q sempre dou p/ outros leitores do blog e alunos. Invista em uma carreira q vc goste de trabalhar, pois acho que dinheiro é consequencia de um bom trabalho em qq profissão! É claro q algumas profissões remuneram melhor, porém se for não gostar de trabalhar em uma dessas profissões q remuneram melhor, dificilmente vc terá uma boa remuneração, pois seu esforço e rendimento não serão muito bons qdo vc não gosta do q faz!

      Hoje eu gosto de trabalhar como DBA e indico para aqueles que se enquadram no perfil! Descubra se vc tem o perfil para trabalhar como DBA! O salário é bom, mas as portas são bem estreitas. Se vc comparar as oportunidades para Desenvolvedor e DBA, verá que existem muito mais vagas no mercado para Desenvolvedores do que para DBAs.

      Excluir
  7. Ola Fabio!
    Sou formando do curso de Redes de computadores da faculdade Estacio de Sa de SC.
    Me Interessei pela disciplina banco de dados para redes.

    Minha duvida é a seguinte: Por onde devo começar? (qual SGBD que o mercado mais pede como conhecimento de um profissional?)

    qual a diferença de um desenvolvedor para um DBA?


    obs: O mais importante que eu queria saber:
    Existe mercado para profissional autonomo? Com VPN?
    O mercado aqui na minha cidade (florianopolis, SC) é muito escasso, por isso pretendo trabalhar para empresas em outras cidades.

    Cara, acho muito legal voce passar seus conhecimentos para gente como nós que somos leigos.

    Que Deus lhe continue abençoando.










    ResponderExcluir
    Respostas
    1. Anônimo, obrigado pelos comentários e agora vamos às respostas.

      Lendo os artigos http://www.fabioprado.net/2012/01/qual-e-o-melhor-banco-de-dados-oracle.html e http://www.fabioprado.net/2012/08/a-carreira-de-um-dba-requisitos.html você verá que nas grandes empresas brasileiras o SGBD mais utilizado é o Oracle, portanto se vc pretende ser DBA sugiro se especializar no mínimo em Oracle.

      Diferença básica entre Desenvolvedor e DBA: O Desenvolvedor é um programador, um cara que escreve código em uma determinada linguagem de programação (Ex.: JAVA, Dot net) com o objetivo final de gerar um programa ou sistema. Estes programas armazenam dados em algum lugar, que normalmente é o Banco de Dados (BD). Em grandes empresas o(s) BD(s) tem informações de muitos sistemas e usuários. A tarefa principal do DBA é administrar esse(s) BD(s) com segurança e performance.

      Qto ao profissional autônomo, existe sim mercado, mas para DBA, por exemplo, é muito díficil começar como autônomo. As empresas costumam contratar consultorias grandes e/ou conhecidas ou profissionais renomados e/ou experientes para fazer estas atividades.

      []s

      Excluir
  8. Hoje em dia o DBA (principalmente em grandes empresas) compromete-se com um ecossistema de bancos de dados que servem centenas/milhares de aplicações que fica difícil desenvolver e focar-se na aplicação ou aplicações. Dito isso, o DBA acaba engajado com infraestrutura como os objetos da instancia do banco, tunning tanto do banco como do servidor, um pouco de rede, storage, o sistema operacional e por ai vai. Sem contar com os infinitos projetos e instalações pra realizar. Acredito que uma nova figura possa surgir derivada do DBA que seria o analista de dados, podendo envolver-se com aplicação e desenvolvimento. Sou DBA SQL Server de uma multi-nacional e essa é minha rotina, além de liderar pessoas e tratar com o cliente. Fabio, se você quiser posso compartilhar com você uma pesquisa que realizei a pouco sobre o perfil do DBA como trabalho de conclusão do meu pós-graduação em Gestão Estratégica de Negócios.

    ResponderExcluir
    Respostas
    1. Fabiano, obrigado pelos comentários! Eu gostaria sim de ver seu TCC, me manda por email, por favor. Quem sabe o conteúdo dele não vira assunto de um próximo artigo?

      []s

      Excluir
  9. Muito bom o post. Fábio gostaria e saber onde posso achar informações sobre a instalação do oracle no linux?O site da oracle é o mais recomendado?

    Obrigado.

    ResponderExcluir
    Respostas
    1. Sim Aramis, existem muitas fontes, mas a mais confiável (e que eu recomendo) é sempre o site da Oracle: http://docs.oracle.com/cd/E11882_01/install.112/e24321/inst_task.htm.

      Excluir
  10. Ola Fabio.

    Gostei do seu blog cara,parabens.

    Eu estou com uma duvida, quero ser uma Dba tanto oracle como SQL, mas nao sei se faco o curso de banco de dados logo direto ou faco algum mais eapecifico primeiro como por exemplo Sistemas da Informaçao?

    Att.


    Obrigado.

    ResponderExcluir
    Respostas
    1. Cláudio, obrigado pelos comentários. VC não deixou muito claro em sua msg mas estou deduzindo que vc está se referindo a um curso superior. Se for isso mesmo e o curso de banco de dados te der diploma de bacharel, faça ele. Se nenhum destes q vc estiver procurando te der diploma de bacharel, faça o de banco de dados se vc realmente tem certeza de que quer seguir esta profissão, caso contrário, recomendo o outro curso!

      []s

      Excluir
  11. Olá Fábio,

    Adorei seu blog e artigos. Estava pensando em qual carreira seguir (apesar de já ter uma noção, só precisava de um empurrão), e adorei as explicações.

    Um abraço.

    ResponderExcluir
    Respostas
    1. Freiman, que bom que o artigo foi útil. Muito obrigado pelo feedback!
      []s

      Excluir
  12. Olá Fábio, parabéns pelo artigo, "tha´s my man" rs.
    Minha pergunta é a seguinte, eu já escolhi o caminho seguir, e é banco de dados. Porém, leio bastante sobre esse assunto, e vejo muita gente falando que para seguir essa área de BD, é necessário saber desenvolver em java (esqueci de mencionar que , neste contexto estou fanando de oracle ) há veracidade nessa informação ? Pois não quase nada de java, e banco já sei um pouco mais, não sei se é certo dizer que eu sei o básico rs domino alguns comandos que aprendi na faculdade e um pouco fui meio curioso fi atrás e levantei as informações que pra mim era relevante no momento. DML, DCL e DDL, conheço bem esses comandos por isso disse que é o básico, estou estudando pl/sql sozinho pq não quero gastar dinheiro e porque tbm não tenho rs. Então essa é minha pergunta, desculpe por fugir um pouco do assunto porque queria tbm citar o pouco que eu sei. Estou no 7º semestre do curso sistemas de informação, e meu TCC vou falar sobre GED - que acho que cai nessa mesma área em que pretendo entrar. e outra prgunta é possível se certificar sem estagiar ou atuar na área? Obrigado pelas informações do seu blog continue assim serviu de enorme ajuda.MUITOOO OBRIGADO !
    Atenciosamente
    Diogo Gonçalves

    ResponderExcluir
    Respostas
    1. Olá Diogo, é bobagem o que te disseram sobre ser necessário desenvolver em JAVA. Nenhum DBA precisa saber desenvolver em JAVA e tenho certeza de que a grande maioria não sabe. O que pode te ajudar muito é saber desenvolver em PL/SQL, mas isso tbém não é o principal, é um PLUS que te ajudará muito e que pode ser obrigatório em algumas empresas.

      Leia o artigo http://www.fabioprado.net/2012/08/a-carreira-de-um-dba-requisitos.html para vc entender melhor o que pedem de um DBA.

      Qto à certificação, sim é possível tirar qq certificação sem atuar na área, mas te afirmo que para ser OCP isso vai ser bem dificil. Vc terá que estudar muito e montar laboratório para testar e entender melhor tudo o que vc irá estudar.

      Obrigado pelos comentários e boa sorte!

      []s

      Excluir
  13. Olá Fábio, minha pergunta é a seguinte, qual a possibilidade de eu me tornar um DBA sem nunca ter trabalhado com banco de dados? Seria mais fácil, mesmo possuindo a certificação OCA, partir para PL/SQL e com o passar do tempo, adquirindo experiencia e conhecimento, começar a mudar o foco de desenvolvedor PL para administração de BD?

    Obrigado por compartilhar conosco seu conhecimento, creio que assim como eu, muitos outros tiveram as dúvidas esclarecidas a partir do seu conhecimento.

    ResponderExcluir
  14. Marcus, eu acho mais facil comecar como desenvolvedor do que diretamente como DBA, até pq existem mais vagas para desenvolvedor.

    Abs

    ResponderExcluir
  15. Boa tarde Fábio. Seu artigo deu uma ampla visão das atividades de um DBA contudo, surgiram-me dúvidas. Elaborei algumas questões (conforme a seguir) e gostaria que pudesse por gentileza, nos fornecer um melhor entendimento. Acredito que assim como eu, essas também sejam algumas dúvidas de outros profissionais que estão iniciando. Desde já agradeço. Abraços.

    1 - Avaliar o hardware do Servidor de Banco de Dados:
    Q. Partindo do zero..quais são as premissas que devemos considerar (ou atentar) na hora definir o hardware necessário para instalar o BD? Se possível, poderia por favor fornecer um exemplo real?

    2 - Instalar o Software do Banco de Dados:
    Q. Qual cenário é mais comum com instalações Oracle (Unix ou Windows)? No que devemos me atentar para realizar com sucesso estas atividades? De maneira geral, se elaborássemos um “check list”, quais seriam os tópicos mais importantes a serem considerados no processo de instalação do Banco de Dados?

    Q. Caso não tenha sido solicitado e/ou informado, qual é a escolha ideal para o Character Set a ser selecionado na instalação do Banco de Dados? E o que poderia implicar em uma aplicação depois de já instalado o BD? É possível corrigir?

    3 - Planejar e Implementar o Banco de Dados:
    (Definir e criar tabelas, índices e outros objetos de BD)
    Q. As solicitações acima são muito comuns no dia a dia de um DBA?

    5 - Fazer backup do BD:
    Q. O que recomendaria estudar para que possamos nos aprofundar acerca de backup e restore de Banco de Dados?

    Q. O que recomendaria e/ou quais são as melhores práticas para garantir um backup e restore com sucesso? Como se planeja para enfrentar um possível restore?

    6 - Gerenciar usuários de BD:
    Q. Qual seria o mínimo necessário para que um usuário possa realizar suas atividades de modo seguro ao Banco de Dados?

    7 - Recuperar o BD em caso de falhas:
    Q. Recomendaria algum material e/ou curso específico para o ítem acima?

    Q. Quais são as falhas mais comuns de BD que se encontra nas empresas? E como podemos elaborar estratégias caso ocorra falha?

    8 - Monitorar e ajustar a performance do BD:
    Q. Este parece ser um "mundo a parte" e bem interessante. Como e onde podemos aprender e desenvolver habilidades para lidar com situações que envolvem monitoramento e ajuste de performance de Banco de dados? Poderia por favor fornecer uma visão geral?


    ResponderExcluir
    Respostas
    1. Carlos seguem abaixo as respostas. Várias delas são assuntos muito extensos e por isso não estou respondendo-as aqui. A sua numeração de questões estava meio bagunçada, estou enumerando-as novamente de acordo com a ordem das questoes:

      1- Você pode começar lendo a documentação oficial do fabricante do SGBD. A Oracle, por exemplo, nos guias de instalação do seu SGBD, ela diz quais são os requisitos mínimos de hardware. Depois descubra o quanto a empresa em que você trabalha tem para gastar com um servidor de SGBD e tente comprar o melhor servidor possível com essa grana q vocês tem p/ investir, considerando que, quanto a maior a qtde de processadores/núcleos maior será o custo de licenciamento do SGBD. Este não é o cenário ideal, mas é o que normalmente acontece. O ideal é você ter parâmetros de referência. Hoje por exemplo, a empresa tem um servidor com processador x e tantos Gbs de RAM e o servidor está lento. Veja a configuração deste servidor e adquira um melhor. Outro exemplo, se você vai instalar uma nova aplicação que terá mais 1000 usuários, faça um cálculo médio de 5 Mb por usuário, e aumente a RAM em 1000 X 5 MB, ok?

      2- Oracle é mais comum em Linux. Em Windows há muitos recursos que não podem ser utilizados e a performance normalmente é inferior (cerca de -10% conforme artigos que já li na SQL Magazine).

      3- O que normalmente ocorre é o pessoal deixar o character set default do Oracle (WEISO8859P). Eu recomendo deixar ele se você quer melhor performance e as suas aplicações não irão comportar linguagens de outros países, caso contrário, utilize alguma que tenha suporte UTF (EX: AL16UTF). A migraçao de um character set para outro é possível, mas é um processo trabalhoso e que pode implicar em perda de dados na conversao de caracteres especiais.

      4- Deveria ser, mas em geral não é!

      5- Comece por aqui: http://docs.oracle.com/cd/E11882_01/server.112/e10897/backrest.htm#ADMQS12390

      6- Isso é tem para um novo artigo, sugiro que pesquise algo no site www.profissionaloracle.com.br

      7- Isso é tem para um novo artigo, sugiro que pesquise algo no site www.profissionaloracle.com.br

      8- O mesmo link da questao numero 5 para começar. A Oracle tbém tem um treinamento oficial de Backup and Recovery, procure este treinamento em um CT OAEC (para mais informações leia os artigos sobre treinamentos aqui do meu blog).

      9- Isso é tem para um novo artigo, sugiro que pesquise algo no site www.profissionaloracle.com.br

      10- Isso é tem para um novo artigo, mas em meus treinamentos “Performance Tuning for Oracle DBAs” (http://www.fabioprado.net/p/performance-tuning-oracle-database.html) eu ensino o que você está perguntando. Veja aqui no meu blog o conteúdo programático deste treinamento, que ele contém o conjunto de conhecimentos que vc precisaria adquirir para fazer um bom trabalho de tuning.

      []s

      Excluir
    2. Olá Fábio. Muito obrigado pelas respostas. Foram esclarecedoras e puderam-me dar um direcionamento em meus estudos. Abraços.

      Excluir
  16. Olá Fábio,

    Estou tendo um grande desafio de estudar a teoria e a prática de BD, pois tenho que consolidar alguns conhecimentos e estou estudando nos livros do Navathe - 6a edição e Date 8a edição.

    Meu contato com BD foi apenas na formação em Ciência da Computação e alguns pequenos contatos com trabalhos em Mysql.

    Parabéns, gostei muito de sua videoaula Aprendendo SQL e entendi muito mais facilmente do que nos livros, mas não tenho como comprar o restante de suas aulas, pois estou desempregado e estudando para concursos.

    Obrigado!
    angoneto@gmail.com

    ResponderExcluir
    Respostas
    1. Antonio, obrigado pelos comentários. Boa sorte nos estudos!
      []s

      Excluir
  17. Ola Fabio, tenho 22 anos e sou recem formada em Ciencia da Computacao, Gosto da area de bd, porem vi algumas vagas e a maioria exige experiencia, ha alguma dica sua em relacao a isso, pois nao tenho experiencia com b e gostaria de entrar no mercado

    ResponderExcluir
    Respostas
    1. Anonimo, a primeira vaga em uma profissão é realmente a mais difícil. Tive bastante dificuldade p/ entrar na área de TI como Analista de Suporte, e depois p/ trocar de profissão, como Desenvolvedor. Todos começam alguma coisa sem ter experiência, portanto a minha dica é que vc qualifique-se, estude, se possível tire certificações (elas me ajudaram muito na minha carreira), faça um bom currículo (há muitas dicas na internet, inclusive já compartilhei muitas na página do FACE deste blog), aproveite todas as oportunidades e participe de qq entrevista q vc tiver oportunidade.

      De um modo geral, como vc não ainda tem experiência vc precisa se destacar em outra coisas, como estas que acabei de citar!

      Boa sorte!

      Excluir
  18. Olá ...Gostaria de saber o CBO de um DBA Jr.

    ResponderExcluir
    Respostas
    1. Bu, eu nunca havia pesquisado sobre o assunto, mas fazendo uma pesquisa rápida no Google encontrei o seguinte link: http://www.educacao.cc/profissional/cbo-classificacao-brasileira-de-ocupacoes-profissao-e-ocupacao/. Veja o código 2124-20.

      []s

      Excluir
  19. Olá! Primeiramente quero parabenizar você pela maneira técnica e ao mesmo tempo simples e esclarecedora de como aborda o assunto! Tenho algumas duvidas que seguem::
    1) Estou no 3° semestre de Sistema de Informação e percebo que não quero ser necessariamente um analista desenvolvedor, pois tenho um pouco de dificuldade com a logica de tantas linguagens de programação, mas gostei de DB com um minicurso que fiz.- Finalmente a pergunta - É preciso saber programar e entender muito bem de lógica de programação(java,c\c++,PHP entre outras..) para ser DBA?
    2) Como é a atuação de um DBA com a área de infraestrutura (redes, SO,..)?

    ResponderExcluir
    Respostas
    1. Anônimo, essas perguntas eu já respondi nos comentários do artigo http://www.fabioprado.net/2012/08/a-carreira-de-um-dba-requisitos.html. Olhe lá por favor.

      []s

      Excluir
  20. Tudo bem Fabio? Toda minha experiência profissional com TI é como Analista de Suporte Técnico, me formei tem um ano como DBA, porém não tenho experiência como DBA, pois minha experiência profissional é outra. As empresas não vão querer contratar um DBA Jr que não teve contato profissional com nada na área ainda pra cuidar dos dados dela, também não seria estágio pois já terminei a graduação. Como posso procurar vagas na área de banco tendo experiência em outra, sugere alguma coisa? Parabéns pela postagem, melhor explicação impossível. []s

    ResponderExcluir
    Respostas
    1. Rafael, todo mundo algum dia começou sem ter experiência alguma, vc não concorda? Dê uma olhada no artigo http://www.fabioprado.net/2012/08/a-carreira-de-um-dba-requisitos.html que lá vc encontrará mais informações sobre o assunto.

      []s

      Excluir
  21. Olá Fábio.
    Realizando uma pesquisa no São Google encontrei seu nome e não precisei continuar.
    Seu vídeo sobre carreira DBA me tirou muitas dúvidas, porem me restaram algumas particulares.
    Me formo como Pedagogo no final de 2015, mas em 2013 iniciei um curo Técnico em Informática que por diversos motivos tive que parar no final de 2014, porem me apaixonei pela disciplina de Banco de dados e continuo a estudar com afinco através de livros e cursos On Line inclusive através de vídeo aulas de faculdades de Analises e desenvolvimento de Sistemas.
    Minha duvida é, no final de 2015 iniciar um Curso em Analise e Desenv. ou realizar uma Pós em Banco de dados, aproveitando o conhecimento que tenho, digo isso pois não sou mas um garoto (43) e preciso ganhar tempo.
    A propósito, minha idade será um problema para essa carreira?
    Puxa Fabio, são muitas as duvidas, mas desde já agradeço sua paciência.

    ResponderExcluir
  22. Anônimo, sua pergunta com relação à idade, leia os comentários do artigo http://www.fabioprado.net/2012/08/a-carreira-de-um-dba-requisitos.html (já respondi ela por lá).

    Qto ao fazer graduação ou pós-graduação, eu faria uma pós, mas decida primeiro que carreira vc quer seguir antes de começar qq coisa e tenha ciência de que se vc está saindo do zero, sem conhecimento algum, nada será muito rápido e fácil, ok?

    []s

    ResponderExcluir
  23. Puxa Fábio obrigado pela rapidez na resposta.
    O link indicado serviu para me incentivar a não desistir dos meus objetivos, muito obrigado.
    Sobre os cursos, enquanto não inicio a Pós seria uma boa realizar cursos Oracle 10g e 11g baseado nos conhecimentos que já possuo em SQL?
    Como Pedagogo, lhe parabenizo por sua metodologia direcionada porem leve e sua sequencia didática, continue em sua jornada educacional.

    ResponderExcluir
  24. Fabio,

    Boa noite!

    Parabéns pelo blog. Sou do Rio de janeiro formado em Administração de empresas, porém, tenho interesse em entrar na área de TI. Gosto da área, mas nunca atuei diretamente. Sou da área comercial, mas em uma das empresas que trabalhei, aconteceu o processo de implementação do Oracle. Tive treinamento de como utilizar a ferramenta (lecionado por instrutores pagos pela própria empresa) e durante alguns anos tive a vivencia e experiência na ferramenta. Tive aulas de SIG na faculdade e me identificava bem com a matéria. Hoje tenho vontade de entrar de cabeça na área, porém, fico na duvida se posso ir direto para um curso de DBA ou seria interessante começar de outra forma. Pensei em programador, mas acho que desenvolvimento é um dom e sinceramente, acho que não tenho. Gostaria de saber sua opinião sobre o assunto. Seria de grande ajuda.
    Obrigado.

    ResponderExcluir
    Respostas
    1. Olá Jean,

      Obrigado pelos comentários!
      O caminho mais fácil que eu acho para entrar na área de TI é como Desenvolvedor (programador), mas se você acha que não tem aptidão, talvez seja melhor mesmo não começar por aí. Ser DBA talvez seja uma boa opção e acho que o meu curso em videoaulas Administrando Bancos de Dados Oracle (http://www.fabioprado.net/p/videoaulas-administrando-bancos-de_10.html) poderá lhe ajudar a tirar essa dúvida. Na opção de aquisição com suporte posso ainda lhe dar mais orientações em um bate-papo por videoconferência ou presencial (em São Paulo, em local definido por mim), ok?

      []s

      Excluir
  25. Fábio, tire-me uma dúvida: em um questionamento com um DBA do meu trabalho sobre o acesso aos dados do BD ele me falou que é legítimo o DBA visualizar todos os dados do BD, pois um DBA tem acesso full.

    Eu defendo que o DBA não tenha acesso a visualização dos dados, mas como não conheço muito bem o nível de visualização que um DBA tem (ou deveria ter) eu gostaria de saber a sua opinião.

    ResponderExcluir
    Respostas
    1. O DBA não precisa obrigatoriamente ter acesso aos dados, mas ele tem que ter privilégios para conceder acessos a outros usuários, então como fazer isso se ele não tiver os devidos acessos??? Não tem como, certo?

      Se o DBA não pode acessar determinados dados, no Oracle por exemplo, deve-se habilitar auditoria no nível do usuário para saber o que ele está fazendo. No caso do DBA, auditoria pura e simples não basta porque ele também tem privilégios para apagar os dados da auditoria, então neste caso deve auditá-lo com os dados de auditoria sendo gravados em arquivos do SO, onde ele não teria privilégios para apagar os rastros, ok? Em Oracle quando isso é necessário, normalmente usa-se recursos da Option Database Vault, ok?

      Excluir
    2. Fabio , Tudo bem?
      Gostaria de tirar algumas duvidas. Mas antes acho melhor esclarecer minha situação. Atualmente trabalho como Jovem Aprendiz de infraestrutura T.I no hospital sirio libanes, e estou amando tudo. Tenho contato com tudo como datacenter,suites e rackers, minhas principas funções é como suporte técnico. Trabalho com CISCO,Tasy com ordens de chamados etc.

      Mas não sei qual o primeiro passo que eu devo dar, gostaria de cursar Redes de Computadores mas ao mesmo tempo gostaria de seguir as tendencias do mercado, como DBA. Eu só não quero colocar a carroça na frente dos bois,o que você me recomendaria? Partir para DBA de cara ou criar uma base solida primeiro (cursar redes), para experiência, na área que estou? E o que vc acha de redes?

      Agradeço, desde já.

      Excluir
    3. Mr. Robot, você é jovem, tem bastante tempo pela frente, então eu sugiro que você corra atrás daquilo que você gosta. Se você acha que vai gostar mais de trabalhar como DBA do que como Analista de Redes, estude para ser DBA (ou o inverso). Eu nunca trabalhei exclusivamente com redes, o DBA tem que conhecer um pouco de redes, mas não precisa ser especialista. Particularmente não gosto muito de redes, então talvez eu não seja a melhor pessoa para te dar algum conselho ou palpite sobre essa área, ok?

      []s

      Excluir
  26. Ótimo artigo, bem esclarecedor! Obrigado e Deus o abençoe.

    ResponderExcluir
  27. Sensacional! estou começando a estudar BD, e quero me aprofundar no assunto, obrigado por compartilhar seus conhecimentos.

    ResponderExcluir
  28. Mesmo um post de 2014 bastante útil! Os fundamentos se mantém, não é?!
    Muito bom seu material, Fábio.
    Fábio, já teve oportunidade de trabalhar com maxDB?!Teria alguma opinião formada sobre?! Obrigada.

    ResponderExcluir
    Respostas
    1. Sim, os fundamentos se mantém!
      Nunca trabalhei com maxDB.
      Obrigado pelos comentários.
      []s

      Excluir
  29. Olá Fabio Prado,primeiramente quero agradecer pelo artigo. Por favor me tire uma dúvida, pensando no mercado de trabalho atual,onde teria se mais oportunidades,como desenvolvedor ou DBA? fiz um curso técnico de informática voltado para o desenvolvimento Web,onde pude aprender um pouco sobre DBs e gostei muito. Pensando em uma formação superior,para se especializar em DBA(que ainda não tenho),por onde eu poderia começar, Cursando Sistema da Informação Ou Análise de sistemas? Desde já agradeço. Att.: Luciana Cipriano.

    ResponderExcluir
    Respostas
    1. Luciana, tudo bem?
      Sugiro que você leia os artigos dos links a seguir e os comentários deles: http://www.fabioprado.net/2015/02/como-conseguir-um-bom-emprego-na-area.html e http://www.fabioprado.net/2013/07/quero-ser-dba-por-onde-devo-comecar.html. Se ainda restar alguma dúvida específica, deixe um novo comentários nos artigos desses links que passei, ok?
      []s

      Excluir
  30. Olá Fábio Prado, gostei muito do seu artigo. Sempre achei fascinante essa área e depois de alguns anos trabalhando na área de TI vou ter a oportunidade de trabalhar como DBA Junior. Gostaria de saber se você pode me indicar um bom livro para "consulta" do banco SQL? Desde já agradeço.

    ResponderExcluir
    Respostas
    1. Se ao dizer SQL você estava se referindo à SQL Server, sugiro perguntar a outra pessoa, preferencialmente alguém que seja especialista em SQL Server, ok?
      []s

      Excluir
  31. Olá Fabricio, referente as tarefas de um DBA quais seriam as tarefas de um DBA em uma empresa que contratou os serviços RDS da AMAZON (AWS)?, como ficariam as suas atribuições, mudaria algo na lista deste artigo, como um DBA se reinventaria neste cenário?

    ResponderExcluir
    Respostas
    1. Luiz, boa pergunta! O que mudaria nessa lista seria algo relacionado aos itens 1 e 2, pois dependendo do serviço de cloud que você contratar você não tem tanto que se preocupar com hardware e muitas vezes você nem faz a instalação do BD. O DBA estará fazendo menos essas atividades e sobrará tempo para outras mais voltadas do negócio, que comento no artigo https://www.fabioprado.net/2018/03/futuro-do-dba.html, ok?

      Excluir
    2. Legal, mas o DBA terá provavelmente que se especializar também voltado a Serviços em Cloud tal como gerenciar serviços de RDS na AWS, sua resposta e o outro post foram essenciais para melhor entendimento, obrigado pelo Retorno Fabio Prado.

      Excluir
    3. Concordo, mas não é difícil administrador Cloud Services. As suas interfaces de administração são em geral bem intuitivas.

      Excluir
  32. Fabio, parabéns pela explicação! Estou iniciando na área de TI agora e me interessei por banco de dados. Seu post me ajudou a entender as atividades de um DBA, graças a isso, quero ser um DBA!

    Vou inciar minha graduação voltada para banco de dados e big data, você poderia me dar alguns conselhos de cursos que preciso fazer para conseguir meu primeiro emprego como DBA? Quero iniciar nessa área junto com a graduação para poder assimilar melhor o conhecimento.

    ResponderExcluir
    Respostas
    1. Obrigado pelo feedback Fernando. A resposta você poderá encontrar no artigo https://www.fabioprado.net/2013/07/quero-ser-dba-por-onde-devo-comecar.html, ok?

      Excluir
  33. Opa Fábio, tudo tranquilo? Sou formado em contábeis, e notei essa demanda no mercado. É possível me especializar somente em banco de dados? Obs: Não gosto das linguagens de programação tradicionais (desenvolvedor de software, web, mobile) kkkk abraço

    ResponderExcluir
    Respostas
    1. É sim, totalmente possível! Muitos DBAs não mexem com nada de programação, porém é necessário conhecer no mínimo SQL e talvez um pouquinho da linguagem nativa do BD que estende os comandos SQL (no caso do Oracle: PL/SQL).

      Excluir