segunda-feira, 16 de março de 2009

Como Iniciar o MySQL

Pode ser que você apanhe um pouco, antes de conseguir iniciar o MySQL. Se isto acontecer, utilize o procedimento a seguir.

1) Certifique-se de o pacote MySQL está instalado;
2) Logar-se na conta root e ir para diretório onde o MySQL está instalado;

$ su - root
# cd /usr/bin # Neste exemplo utilizamos o /usr/bin

3) Instalar a base de dados;

# ./mysql_install_db

4) Mudar a permissões do diretório onde será instalado o sock;

# chown -R mysql.mysql /var/lib/mysql

5) Iniciar o MySQL;

# ./mysql_safe &

6) Definir a senha do DBA;

# ./mysqladmin -u root password

7) Logar-se no MySQL.

# ./mysql -u root -p

quinta-feira, 21 de agosto de 2008

Comportamento De Tabelas Oracle

Tabelas oracle são segmentos, um segmento pode conter um ou mais extents e um extent pode conter um ou mais blocos. A quantidade de extents é definida em tempo de criação do segmento e pode aumentar na medida em mais blocos são alocados.

O SQL abaixo mosttra quantos extents e blocos há em um tabela.

SELECT segment_name,
extent_id ,
block_id
FROM dba_extents
WHERE dba_extents.segment_name = ‘PAGAMENTOS’
AND segment_type = ‘TABLE’;

Essas informações são importantes para a definição do comportamento de segmentos. Para tabelas muito grandes é recomendável definir extents maiores, se possível apenas 1. Recomenda-se colocar esses segments em tablespaces com blocos maiores.

O controle do crescimento e do encolhimento de tabelas e índices, resulta em melhor desempenho do banco em processamento de grande volume de dados, pois ao alocar ou desalocar um bloco ou um extent o banco de dados oracle necessita realizar updates de diversos registros em seu dicionário de dados. O tempo de execução desses updates está diretamente relacionado a quantidade de extents e blocos de um segmento de banco de dados.

domingo, 17 de agosto de 2008

Recuperação Pós-Desastres

Quando pensamos em sites backup, visualizamos um prédio em uma cidade à quilometros de prédio onde está localizado o site primário. Quando pensamos em backup, visualizamos cópias de arquivos de bancos de dados ou de servidores de aplicação gravados em fitas magnéticas guardadas no site local.

Ambos são métodos de backups e podem ser executados em ambientes locais ou remotos. A vantagem do método de gravação em sites backup está no tempo de recuperação de serviços. Backups convencionais são orientados a recuperação preventiva. Sites backup são destinados a recuperação pós-desastres (disaster recover), mas também podem substituir backups convencionais.

Na empresa em que trabalho existe um banco de dados Oracle, cujo tamanho é de aproximadamente 400 terabytes. Restaurar arquivos backups e recuperar bancos muito grandes pode demorar uma quantidade de tempo não compatível com os níveis de serviço e contratos firmados com o cliente.

Para garantir alta-disponibilidade em base de dados muito grandes é necessário certificar-se de que os métodos de recuperação de serviços de bancos de dados sejam compatíveis com os níveis de serviço exigidos pela aplicação.

quarta-feira, 23 de julho de 2008

Backups Inteligentes

Realizar cópias de segurança é fácil. Difícil é restaurar e recuperar rapidamente os dados contidos em fitas backup. Principalmente quando o conteúdo das cópias de segurança são transformados pelo utilitário de backup no momento em que as cópias são geradas.

Processos de backup mudaram muito pouco nos últimos trinta anos. Esses basicamente copiam e restauram arquivos, sem envolver-se com regras de negócio ou preocupar-se com as questões relacionadas a disponibilidade.

Está muito na moda oferecer serviços 24×7 disponíveis. Manter serviços de banco de dados disponíveis o tempo todo nos dias de hoje é fácil. Difícil é acordos de nível de serviço desta natureza, quando ocorre algum incidente o qual a resolução dependa de recuperação de dados.

Atualmente já existem empresas optando por replicação dinâmica de bases de dados, utilizando técnicas de espelhamento remoto. A principal vantagem é o rápido restabelecimento de serviços, mesmo para bases de dados gigantescas. Cabe ressaltar que com espelhamento de bases de dados, o tempo de recuperação de bancos de dados não está relacionado ao tamanho do banco, mas uma infraestrutura com processo de recuperação de serviços bem-definida.

terça-feira, 15 de julho de 2008

Visão Geral do Oracle ASM

Automatic Storage Manager (ASM) é um gerenciador de volumes e ao mesmo tempo um sistema de arquivos para banco de dados Oracle o qual suporta configurações do tipo single-instance e RAC. O ASM é uma solução alternativa de gerenciamento de volume de discos, sistemas de arquivos e raw devices.

O ASM utiliza agrupamento de discos para armazenar arquivos de dados; um ASM disk group nada mais é do que uma coleção de discos os quais o ASM gerencia como se fosse apenas uma unidade de disco. Dentro de um disk group, os arquivos de banco de dados Oracle são apresentados em uma interface semelhante ao sistema de arquivos unix e linux. O conteúdo dos arquivos são eventualmente redistribuidos para evitar gargalos e garantir estabilidade de desempenho. Seu desempenho é semelhante ao desempenho de raw devices.

Voce pode adicionar ou remover discos de um disk group sem interromper o serviço de banco de dados. Quando você remove ou adiciona discos de um disk group, o ASM automaticamente redistribui os arquivos e, conseqüentemente elimina a necessidade de parada de serviços para redistribuição de conteúdos.

O gerenciador ASM possui flexíveis opções de espelhamento. ASM normal e alta redundância de disk groups, espelhamentos tipo two-way e three-way respectivamente. Permite o uso de redundância externa do tipo RAID.

O ASM também utiliza o Oracle Managed Files (OMF) para simplificar o gerenciamento de arquivos banco de dados. O OMF automaticamente cria os arquivos em sua respectivas pastas. Além disso, atribui nomes aos arquivos e remove-os, defragmentando áreas de disco, quando as tablespaces ou arquivos são excluídos.

O ASM simplifica as tarefas de administração de storage consolidando os dados de storage em um reduzido grupo de discos. Isso possibilita a unificação do storage para diversos bancos de dados e oferece melhorias de desempenhos dos processos de leitura e gravação em discos.

Os arquivos ASM podem ser configurados com outros gerenciadores de storage , como raw devices e sistemas de arquivos de terceiros. Isto simplifica a integração do ASM com os demais sistemas de armazenamento já existentes.

segunda-feira, 14 de julho de 2008

Atribuições de um DBA

O uso de aplicativos via Internet aumenta a cada dia e, consequentemente, cresce significativamente o surgimento de empresas de TI disponibilizando serviços de bancos de dados. Isto implica em contratação de serviços de administração de bancos de dados. Quais são as principais atividades de um DBA. Abaixo temos uma lista de atribuiçoes, a quais considero fundamentais para o dia-a-dia desse especialista.

Avaliação de Recursos de Hardware
Esta diretamente ligada a aquisições de hardware para suprir eventuais faltas de recursos ou atualização tecnológica. O papel do DBA é avaliar o impacto da mudança sobre os serviços de bancos de dados.

Instalação de Produtos
Embora os principais servidores de bancos de dados possuam excelentes programas instaladores, ainda é necessário que o DBA participe ativamente da instalação e configuração desses produtos.

Planejamento de Recursos de Banco
É importante entender como a estrutura lógica de um banco afeta o desempenho do sistema e de diversas operações de gerenciamento de banco de dados.

Por exemplo, antes de criar as tablespaces é necessário definir quais e como os discos serão utilizados.

Criação e Disponibilização de Serviços
A criação de um banco ocorre quando há implementações de novos projetos, migrações e atualização de versões.

A disponibilização de serviços de banco é realizada pela gestão de ambientes TI, baseada em roteiros de comandos de inicialização de servicos.

Cópias de Segurança (Backup)
Embora a tecnologia de armazenamento em discos tenham evoluído bastante, antes de vender serviços de TI, certifique-se de que esses podem ser salvos em fitas backup.

Há diversos métodos de execução de backup. É importante que o método escolhido esteja de acordo com a política de backup definida no acordo de nível de serviços.

Controle de Acesso
Para administrar e ter controle de acesso aos serviços de banco de dados é necessário que o DBA tenha privilégios de superusuário, e, conseqüentemente ter condições de controlar os acesso dos demais usuários.

Ter privilégios de superusuário não significa ter acesso às informações de negócio, mas condições de realizar todas as tarefas de administração de de bancos de dados.

Implementação de Projetos de Banco
Implementar projetos de banco significa preparar o banco para uso a partir de aplicativos, criando ou atualizando os objetos desse aplicativo, tais como: tabelas, índices, procedimentos catalogados.

Desempenho de Serviços de Banco
Produzir e analisar relatórios sobre a saúde do banco de dados é uma das tarefas mais importantes, realizadas pelo DBA.

O principal objetivo dessa atividade é verificar se indicadores de desempenho estão de acordo com os níveis de serviços contratados pelo cliente.

Instalação de Patches
Não existem programas de computadores cem por cento corretos. Portanto, eventualmente é necessário corrigir esses programas instalando correções distribuídas pelos fabricantes.

Essa atividade pode ser realizada por demanda ou automaticamente, mas depende da análise do DBA sobre o impacto da mudança.

Clonagem e Migração de Serviços
A clonagem de serviços de banco muito utilizada em ambientes de TI que possuem vários servidores utilizando a mesma versão de produtos de banco.

Nas grandes empresas de prestação de serviços de TI, ocorre pelo menos uma migração de serviços de banco por semana. Portanto se você é um DBA, então já migrou ou vai migrar pelo banco de dados.


As atribuições listadas acima podem sofrer modificações, tudo depende da evolução tecnológica. Todavia, as grandes empresas são avessas à mudanças que possam comprometer seus negócios.

Processo de Instalação do Oracle Clusterware

O Oracle Clusterware é distribuído como parte integrante do produto Oracle Database. O Oracle Universal Installer (OUI) o instala em uma estrutura específica a qual pode referenciada como CRS_home. Devido ao fato do Oracle Clusterware realizar tarefas específicas do sistema operacional, há necessidade de conceder privilégios de superusuário para alguns de seus componentes

Antes de instalar o Oracle Clusterware, recomenda-se executar o Cluster Verification Utility (CVU) para certificar-se de que o ambiente possui todos os requisitos de instalação do Oracle Clusterware. O OUI também roda automaticamente o CVU ao final da instalação para verificar seus requisitos. Ele simplifica a instalação, configuração e demais tarefas pertinentes ao processo de instalação através de identificação de problemas relacionados ao ambiente clusterware.

Durante a instalação do Oracle Clusterware, deve-se identificar três endereços IP para cada node da arquitetura cluster. Um endereço IP para a interconexão privada e outro para a interconexão pública. O terceiro é um endereço IP virtual ao qual o cliente usará para conectar-se em cada instance.

O processo de instalaçao do Oracle Clusterware cria no storage os arquivos voting disk e OCR. Se selecionada a opção para redundância normal, então automaticamente o Oracle Clusterware manterá uma cópia desses arquivos para evitar o incidente Único Ponto de Falha. A redundância normal evita também a necessidade de soluções de redundância normalmente oferecidas pelo fornecedor do ambiente storage. Quando usamos redundância normal, o Oracle Clusterware automaticamente mantém duas cópias do arquivo OCR e três cópias do arquivo voting disk.

Se você escolher redundância externa para gravação dos arquivos OCR e voting disk, então para que se tenha redundância é necessário configurar espelhamento RAID em seu subsistema de discos para o incidente evitar Único Ponto de Falha.