DevMedia
Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Para efetuar o download você precisa estar logado. Clique aqui para efetuar o login
Este é um post disponível para assinantes MVP
Este post também está disponível para assinantes da SQL Magazine DIGITAL
ou para quem possui Créditos DevMedia.

Clique aqui para saber como acessar este post

1) Torne-se um assinante MVP e por apenas R$ 59,90 por mês você terá acesso completo a todos os posts. Assinar MVP

2) Adquira Créditos: comprando R$ 180,00 em créditos esse post custará R$ 1,20. Comprar Créditos

post favorito     comentários
SQL Magazine 78 - Índice

Resolvendo incêndios do dia a dia de um DBA- SQL Magazine 78

Apresentar uma discussão a respeito das atitudes técnicas e operacionais que podem ser tomadas quando um problema inesperado no banco de dados surge durante o dia a dia de uma empresa.

[fechar]

Você não gostou da qualidade deste conteúdo?

(opcional) Você poderia comentar o que não lhe agradou?

Confirmo meu voto negativo

Todo o profissional que trabalha com banco de dados na área da computação, seja ele um DBA, um programador, um analista de suporte ou um administrador de infraestrutura, deve possuir a habilidade para resolver problemas inesperados que surgem no dia a dia. Esta habilidade, também conhecida como troubleshooting, é muito importante para manter o correto funcionamento dos sistemas e aplicações computacionais que suportam o modelo de negócio da empresa.

Com base neste contexto, este artigo apresenta uma discussão a respeito das atitudes técnicas e operacionais que podem ser tomadas quando um problema inesperado no banco de dados surge durante o cotidiano de uma empresa. Esta discussão é baseada em questões e alternativas possíveis para a solução dos problemas propostos que evidenciam as atitudes operacionais e que também focam nos aspectos técnicos.

Saber escolher a melhor alternativa para cada situação ou pelo menos a alternativa mais razoável dentre várias é um dos requisitos mais importantes e desejáveis para os profissionais que lidam com tecnologia e sistemas, especialmente bancos de dados e sistemas de missão crítica para a empresa. São vários os benefícios que se obtém ao adquirir esta habilidade incluindo a confiança da gerência, o conhecimento técnico avançado, facilidade para obtenção de recursos e também a autonomia para a realização do trabalho sem supervisão constante.

O ambiente

Antes de apresentar as questões que exploram os problemas no dia a dia é preciso definir um cenário e ambiente para a discussão das mesmas. Vamos imaginar uma empresa de tamanho médio que contém entre 100 e 150 funcionários ou colaboradores. Esta empresa possui um departamento de T.I. (Tecnologia da Informação) que contém desenvolvedores (programadores, analistas e web designers), administradores de infraestrutura (servidores, link com internet, help desk), pessoal de suporte e apenas um DBA. Esta empresa utiliza vários sistemas que incluem ERPs, sistemas de controle de acesso, intranet e um portal na internet coorporativo que realiza transações de B2C (Business to Consumer) e B2B (Business to Business). Do ponto de vista organizacional, existe um gerente que coordena o desenvolvimento e é responsável pela gestão dos programadores, analistas, web designers e do DBA que desenvolvem soluções internas e customizam soluções prontas adquiridas de fornecedores externos. Há também um gerente que coordena os demais profissionais da área técnica: suporte, infraestrutura, fornecedores externos e outros. Além destes, existe um diretor operacional que é superior aos gerentes de desenvolvimento e infraestrutura na hierarquia da empresa.

Do ponto de vista de tecnologia, existem diversos bancos de dados com tamanhos e características variadas em SQL Server, Oracle, MySQL e PostgreSQL, assim como diversas tecnologias utilizadas no desenvolvimento dos sistemas como Java, .NET, PHP, Visual Basic 6.0, Python e outras. Há servidores locais na empresa assim como servidores remotos armazenados em um data center terceirizado. A plataforma é mista e inclui sistemas operacionais de código aberto e fechado, assim como diferentes fabricantes de hardware.

O DBA da empresa, ou seja você, possui o nível pleno e já está acostumado com o ambiente, as aplicações e sistemas que acessam a base de dados. Adicionalmente, as tarefas a serem realizadas fazem parte das tarefas do dia-a-dia de um DBA e desenvolvedores que trabalham com desenvolvimento como, por exemplo, um backup, a importação e exportação de arquivos, a criação de objetos no banco de dados, atribuição de permissão a logins, etc. Contudo, devido à forma desorganizada que as soluções foram desenvolvidas, adquiridas e implantadas, e também devido à diversidade de tecnologias envolvidas é comum acontecerem incêndios, isto é, situações inesperadas que devem ser resolvidas o mais rápido possível pelo DBA.

Além disso, vale a pena destacar que o DBA fez um acordo indicando que ele deve fornecer suporte fora do horário normal de trabalho, uma vez que este tipo de atividade é remunerada de forma diferenciada.

Tarefas inesperadas

Situação 1) O DBA chega para trabalhar, liga o seu computador e descobre que três bancos de dados de dois servidores SQL Server diferentes estão marcados como suspect. Neste momento os funcionários/colaboradores estão começando a chegar e, como os bancos de dados não estão operacionais, a aplicação que faz o controle de ponto não funciona, o que faz com que o horário de entrada dos funcionários não seja computado. O que o DBA deve fazer nesta situação?

a) Não fala nada a ninguém, fica na sua e espera algum chamado urgente ser encaminhado para um desenvolvedor para só então tomar alguma atitude.

b) Já deixa de prontidão os backups e não toma nenhuma atitude antes de receber um chamado urgente de algum usuário ou programador. Quando recebe o chamado gasta mais tempo tentando entender por que os bancos de dados ficaram suspect do que colocando os bancos de dados on-line novamente.

c) Procura resolver o problema e colocar no ar o mais rapidamente possível os bancos de dados sem que ninguém perceba o que aconteceu.

d) Avisa emergencialmente o gerente e os desenvolvedores responsáveis pelo sistema que há um problema nos bancos de dados. Fornece uma estimativa de prazo para a resolução e mergulha de cabeça no problema para resolvê-lo o mais rápido possível.


Situação 2) Horário final do expediente. Com a cabeça cheia devido ao trabalho realizado durante o dia, todos os funcionários de T.I. aguardam ansiosamente pelo fim do expediente para receber as merecidas 8 horas de descanso diário. Tudo caminha bem até que começa a chover e falta força na sala onde está o servidor. O DBA percebe que nem a fonte de força redundante do servidor local e nem o gerador foram acionados. O log de erro do MySQL indica que o arquivo de dados foi corrompido. O blog corporativo e parte do site da empresa fica fora do ar. Olhares dos desenvolvedores se voltam para o DBA. O que fazer?

"

A exibição deste artigo foi interrompida

Este post está disponível para assinantes MVP.



Mauro Pichiliani has the Master of Science degree on collaborative systems by the Aeronatics Institute of Technology (ITA) in Brazil. He is a specialist on database technologies with more than 8 years of experience on the industry [...]

O que você achou deste post?
Publicidade
Serviços

Mais posts