Planejamento Parte Visão Geral do Ajuste de Desempenho do Banco de Dados 02 - Arquivos de Alert e Trace do Oracle

Documentos relacionados
A instância Oracle é composta de :

Backup e Restauração Banco de Dados. Evandro Deliberal

Planejamento Parte Visão Geral do Ajuste de Desempenho do Banco de Dados 02 - Arquivos de Alert e Trace do Oracle

Oracle Database 10g: Workshop de Administração II Release 2: Nova Versão

Administração de Banco de Dados. Arquitetura Física do Banco de Dados. Arquitetura. Arquitetura. Instância. Base de Dados. Processos User e Server

Oracle Database 11g: Workshop de Administração II Novo

01 - Visão Geral do Ajuste de Desempenho do Banco de Dados 02 - Arquivos de Alert e Trace do Oracle

Oracle Database 12c: Workshop de Administração

ORACLE ARQUITETURA FÍSICA

Administração de Banco de Dados

Administração de Banco de Dados

consistent gets é o número de vezes que uma leitura consistente foi requisitada para um bloco do buffer cache.

STD SERVIÇO DE BACKUP EM NUVEM

ADMINISTRAÇÃO DE BANCOS DE DADOS DO MICROSOFT SQL SERVER

Planejamento Parte Visão Geral do Ajuste de Desempenho do Banco de Dados 02 - Arquivos de Alert e Trace do Oracle

Tabelas. Banco de Dados I MySQL

Spectrum Miner. Versão 8.0. Guia de administração para a integração do Portrait Dialogue

Configurações de performance no SQL Server José Antônio da Cunha CEFET-RN

Em nosso exemplo, o banco de dados XE está trabalhando no modo NOARCHIVELOG, e para verificar isso, basta executar as seguintes tarefas:

Módulo 5. Arquitetura do SQL Server. Estruturas de Armazenamento. Armazenamento físico e lógico. Páginas

FACULDADE DE ADMINISTRAÇÃO E NEGÓCIOS DE SERGIPE - FANESE NÚCLEO DE PÓS-GRADUAÇÃO E EXTENSÃO NPGE

Administração de Sistemas Operacionais. Prof. Marlon Marcon

Cada instância exibe uma instalação separada, por exemplo, produção rodando sql server 2008 e testes rodando sql server 2012.

INSTALAÇÃO DO LOGIX COM BANCO ORACLE

Oracle Database 12c R2: Administração - Workshop Ed 3

Oracle Database 11g: Novos Recursos para Administradores Release 2

Kemio - Requisitos Técnicos

Banco de Dados II. Administração do SGBD Oracle. Tablespaces, usuários, privilégios, papéis e perfis. Gustavo Dibbern Piva

Determine a separação que é usada altamente. O comando seguinte mostra a utilização do disco:

Curso de Banco de Dados Plataforma: MS SQL Server. Instalando o Microsoft SQL Server 2014 Express

BANCO DE DADOS 2 TRANSAÇÃO

Oracle Performance Diagnostics & Tuning Ricardo Portilho Proni

Linha de Sistemas Folhamatic

Administração de Banco de Dados

Notas sobre a Versão do Controlador de arquivos para HP 3PAR StoreServ

Curso PostgreSQL - Treinamento PostgreSQL - Fundamental

Requisitos de Hardware e Software Engeman. Versão 2018/06

Leia-me do Veritas System Recovery 16 Management Solution

EasyAzure. EasyAzure. Guia do programa. Ingram Micro Brasil. Versão 1.7

Sumário. Capítulo 2 Conceitos Importantes Tópicos Relevantes Instance Base de Dados Conclusão... 37

Instalação do IBM SPSS Modeler Entity Analytics

Manual do Usuário Brother Meter Read Tool

Backup Exec Guia de Instalação Rápida

Estruturas de Sistemas Operacionais

Se a tela de instalação não for exibida após um minuto, inicie o CD manualmente:

Bauru SP Brasil. (FATEC) Bauru SP Brasil.

Apresentação. Objetivos. Dados Principais

Oracle 12c: Multitenant Architecture

ORACLE IN-MEMORY 12c. Vantagens e Cenários de Utilização do Oracle In-Memory 12c. Willian Frasson

Secure Client. Manual do Usuário. IPNv2. Secure Client IPNv2

Sistemas de arquivos distribuídos. ECO036 - Sistemas Paralelos e Distribuídos

MANUAL DE INSTALAÇÃO SISTEMA DE GERÊNCIA CONSCIUS

1 Arquitetura do Banco de Dados e o ASM

Pedro F. Carvalho Analista de Sistemas RMAN: Ambiente de backup

Leia-me do Veritas System Recovery 16 Management Solution

Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri. Banco de Dados Processamento e Otimização de Consultas

Estácio-FIC Graduação em Redes de Computadores

Guia de instalação. Configuração necessária Instalação e ativação - 1 -

IoT-FND: Incapaz de verificar a Conexão ao base de dados. Exceção: java.sql.sqlexception: ORA-28001: a senha expirou

Os dados de um banco de dados são armazenados coletivamente nos arquivos de dados que constituem cada tablespace do banco de dados.

Copyright Smar

Administração de Sistemas Operacionais. Prof.: Marlon Marcon

Banco de Dados Oracle. Faculdade Pernambucana - FAPE

OTIMIZAÇÃO DE CONSULTAS - MYSQL. Prof. Antonio Almeida de Barros Junior

IBM Tivoli Storage Manager para Linux Versão Guia de Instalação IBM

Workshop Oracle Tuning

Manual de instalação

Manual de instalação e configuração

As informações neste documento são baseadas nestas versões de software e hardware:

ANEXO TÉCNICO REQUERIMENTOS DE INFRAESTRUTURA BEMATECH GEMCO MATRIZ

MANUAL DO SECURE CLIENT

NoSQL Apache Cassandra para DBAs. Conceitos básicos que todo DBA deve conhecer sobre Apache Cassandra.

Administração de Banco de Dados

Configurações para otimização de performance

Cisco Secure ACS para Compatibilidade com UNIX

Requisitos do Sistema

Aula 03. Evandro Deliberal

Instalando o Ponto Secullum 4.0

Instalação Wiser. Sistema Operacional Linux Red Hat

Brilliant Solutions for a Safe World

Curso de Banco de Dados Plataforma: MS SQL Server. Instalando o Microsoft SQL Server 2016 Developer Edition

Administração de Banco de Dados

Introdução. descrever os tipos de interfaces e linguagens oferecidas por um SGBD. mostrar o ambiente de programas dos SGBD s

Perguntas e respostas

Procedimentos para Instalação Sisloc (Estação de Trabalho)

Procedimentos para Instalação do Sisloc Versão

Banco de Dados II. Administrador de Banco de Dados - DBA. Portela

Requisitos do Sistema

É possível acessar o Fiery Remote Scan de sua área de trabalho ou de um aplicativo compatível com o TWAIN.

Base de dados de ICM alternativo de Cisco em Microsoft SQL2000

1. Definições dos aplicativos PaperCut Requisitos de Instalação... 3

Backup e Restauração Banco de Dados. Evandro Deliberal

Veeam Endpoint Backup FREE

Barramento. Prof. Leonardo Barreto Campos 1

UNIVERSIDADE DE CAXIAS DO SUL CENTRO DE CIÊNCIAS EXATAS E TECNOLOGIA CURSO DE SISTEMAS DE INFORMAÇÃO

MySql. Introdução a MySQL. Andréa Garcia Trindade

Brilliant Solutions for a Safe World

Reindexação Automática em SGBDs Relacionais

Configurador do JBOSS. TOTVS Datasul 11. Alerta

Transcrição:

Planejamento Parte 1 01 - Visão Geral do Ajuste de Desempenho do Banco de Dados 02 - Arquivos de Alert e Trace do Oracle 03 - Utilitários e Visões Dinâmicas de Performance 04 - Otimizando a Shared Pool 05 - Otimizando o Buffer Cache 06 - Otimizando o Redo Log Buffer 07- Configuração do Banco de Dados e Problemas de I/O 08- Utilizando Blocos do Oracle com Eficiência 09 - Otimizando Operações de Ordenação 10 - STATSPACK

- AWR - Otimização dos Segmentos de Rollback - Monitorando e Detectando Contenção de Lock Planejamento Parte 2 - Problemas de SQL e Considerações sobre Otimização para Aplicações Diversas - Gerenciando Cargas de Trabalho Mistas - Utilizando as ferramentas do Oracle para diagnosticar problemas de performance; - Problemas de Otimização no Servidor Multi-Threaded Server

Configuração do Banco de Dados e Problemas de I/O

Configuração Antes de iniciar a instalação é preciso que o ambiente esteja compatível para receber o RDBMS é necessário analisar os requisitos mínimos de hardware e software. Uma boa prática é utilizar a própria documentação disponível pela Oracle Realizar um checklist pré e pós instalação ajudam a evitar problemas no decorrer da instalação

Configuração Faça o download da mídia Hardware (Linux) Para determinar o tamanho da memória física RAM: # grep MemTotal /proc/meminfo (Para determinar o tamanho da memória física RAM:) # grep SwapTotal /proc/meminfo (Para determinar o tamanho do swap configurado) # df -h /tmp (Para determinar a quantidade de espaço disponível no diretório / tmp:) # df h (Para determinar a quantidade de espaço livre em disco no sistema) # free mt (Para determinar a quantidade de memória RAM livre e espaço swap no sistema) # uname m (Para determinar se a arquitetura do sistema pode executar o software) x86_64 (Verifique se a arquitetura do processador corresponde à versão do software x86-64 bits:)

Configuração Certifique-se de que o seu sistema Linux x86-64 atende aos requisitos de espaço em disco para arquivos de software e arquivos de dados, conforme recomendação abaixo: Para instalação tipo Enterprise Edition será necessário o mínimo de 6.4 GB. Para outros tipos como Standard Edition e Standard Edition One é necessário espaço de 6.1 GB; 1 GB de espaço no diretório / tmp; Requisitos mínimos de memória do servidor: Mínimo 1 GB (Recomendado 2 GB ou mais).

Pré-requisito de software Os seguintes pacotes precisam ser instalados em caso de configuração manual no Oracle Linux 6: binutils-2.20.51.0.2-5.11.el6 (x86_64) compat-libcap1-1.10-1 (x86_64) compat-libstdc++-33-3.2.3-69.el6 (x86_64) compat-libstdc++-33-3.2.3-69.el6 (i686) gcc-4.4.4-13.el6 (x86_64) gcc-c++-4.4.4-13.el6 (x86_64) glibc-2.12-1.7.el6 (i686) glibc-2.12-1.7.el6 (x86_64) glibc-devel-2.12-1.7.el6 (x86_64) glibc-devel-2.12-1.7.el6 (i686) ksh libgcc-4.4.4-13.el6 (i686) libgcc-4.4.4-13.el6 (x86_64) libstdc++-4.4.4-13.el6 (x86_64) libstdc++-4.4.4-13.el6 (i686) libstdc++-devel-4.4.4-13.el6 (x86_64) libstdc++-devel-4.4.4-13.el6 (i686) Configuração libaio-0.3.107-10.el6 (x86_64) libaio-0.3.107-10.el6 (i686) libaio-devel-0.3.107-10.el6 (x86_64) libaio-devel-0.3.107-10.el6 (i686) libxext-1.1 (x86_64) libxext-1.1 (i686) libxtst-1.0.99.2 (x86_64) libxtst-1.0.99.2 (i686) libx11-1.3 (x86_64) libx11-1.3 (i686) libxau-1.0.5 (x86_64) libxau-1.0.5 (i686) libxcb-1.5 (x86_64) libxcb-1.5 (i686) libxi-1.3 (x86_64) libxi-1.3 (i686) make-3.81-19.el6 sysstat-9.0.4-11.el6 (x86_64)

Configuração A Oracle recomenda a configuração dos seguintes parâmetros no arquivo /etc/sysctl.conf. Caso a configuração seja manual, utilizar os seguintes valores: fs.aio-max-nr = 1048576 fs.file-max = 6815744 kernel.shmall = 2097152 kernel.shmmax = 536870912 kernel.shmmni = 4096 kernel.sem = 250 32000 100 128 net.ipv4.ip_local_port_range = 9000 65500 net.core.rmem_default = 262144 net.core.rmem_max = 4194304 net.core.wmem_default = 262144 net.core.wmem_max = 1048586

Configuração Execute o seguinte comando para alterar os parâmetros do kernel: # /sbin/sysctl -p Execute o seguinte comando para criar os usuários e grupos necessários: # groupadd oinstall # groupadd dba # groupadd oper # useradd -g oinstall -G dba,oper, oracle Obs.: Esta instalação não utiliza ASM, por isso não é necessário criar o grupo asmadmin.

Configuração

Configuração

Configuração

Configuração

Configuração

Parâmetro COMPATIBLE DB_BLOCK_SIZE Descrição Configuração Especifica a versão com a qual o ORACLE deve manter a compatibilidade. Ele permite que você tire vantagem das melhorias de uma nova versão imediatamente em seus sistemas de produção sem testar a nova funcionalidade no seu ambiente. Se o seu aplicativo foi projetado para uma versão específica de banco de dados Oracle, e você está, na verdade, a instalação de uma versão posterior, então você pode querer definir esse parâmetro para a versão do anterior release. Define o tamanho dos blocos de banco de dados Oracle armazenados nos arquivos de banco de dados e armazenados em cache no SGA. A gama de valores depende do sistema operativo, mas é tipicamente 8192 para os sistemas de processamento de transacções e valores mais elevados para os sistemas de armazenamento de dados.

Parâmetro SGA_TARGET PGA_AGGREGATE_TARGET PROCESSES SESSIONS Descrição Configuração Especifica o tamanho total de todos os componentes PIG. Se SGA_TARGET for especificado, então o cache de buffer (DB_CACHE_SIZE), piscina Java (JAVA_POOL_SIZE), piscina grande (LARGE_POOL_SIZE), e piscina comum (SHARED_POOL_SIZE) pools de memória são dimensionados automaticamente. Especifica o destino de memória PGA agregada disponível para todos os processos do servidor conectado à instância. Define o número máximo de processos que podem ser iniciados por essa instância. Este é normalmente o principal parâmetro mais importante para definir, porque muitos outros valores de parâmetros são deduzidos a partir deste. Isso é definido por padrão a partir do valor dos processos. No entanto, se você estiver usando o servidor compartilhado, então o valor deduzida é provável que seja insuficiente.

Parâmetro UNDO_MANAGEMENT UNDO_TABLESPACE Descrição Configuração Especifica o modo de gerenciamento de espaço de undo usado pelo banco de dados. O padrão é AUTO. Se não for especificado, o banco de dados usa AUTO. Especifica a tabela de undo para ser usado quando uma instância é iniciada.

Configuração UNDO Space O banco utiliza este espaço para armazenar dados usado para leitura, recuperação e ROLLBACK Existe em uma ou mais TABLESPACE No DBCA é criado automaticamente Manualmente utilize o UNDO TABLESPACE na clausa CREATE DATABASE Para habilitar automaticamente configure o parâmetro UNDO_MANAGEMENT (por default já vem AUTO) Oracle sempre recomenda AUTO Utilize as views V$UNDOSTAT e V$ROLLSTAT

Sizing Redo Log Files Configuração O tamanho do arquivo pode influenciar na performance, por que paralelo ao processos do banco existe um processo que irá escrever e arquivar as ações e processos FAST_START_MTTR_TARGET Para verificar o tamanho ideal consultar na view V$INSTANCE_RECOVERY coluna OPTIMAL_LOGFILE_SIZE

Criar + de um Tablespace Quando utilizado muitas operações Pode utilizar a sintax ALTER TABLESPACE... ADD DATAFILE As mesmas podem ser Configuração Permanent Temporary auxilia a otimizar ordenação em disco

Na criação de tabela Valor PCTFREE PCTUSED Compressão Entender e estimar o tempo Melhorar o arquivamento Utilizar atributos de clustered Configuração INSERT/*+APPEND*/ or ALTER TABLE... MOVE PARTITION

Configuração Indexação de dados Utilizar a clause PARALLEL na criação de um índice CREATE INDEX Especificar o espaço de memória para a ordenação pelo parâmetro PGA_AGGREGATE_TARGET Compartilhamento de servidor Verificar os processos (utilize as views V$DISPATCHER ou V$DISPATCHER_RATE) Pode reduzir o numero de saídas (MAX_DISPATCHERS)

Ambiente de servidor COLUNA WAIT TOTALQ Descrição Configuração Exibe o tempo total de espera, em centésimos de segundo, para todos os pedidos que já estive na fila Exibe o número total de pedidos que já estive na fila Tempo Médio por requisição SELECT DECODE(TOTALQ, 0, 'No Requests', WAIT/TOTALQ ' HUNDREDTHS OF SECONDS') "AVERAGE WAIT TIME PER REQUESTS" FROM V$QUEUE WHERE TYPE = 'COMMON'; SELECT COUNT(*) "Shared Server Processes" FROM V$SHARED_SERVER WHERE STATUS!= 'QUIT';

Sempre importante identificar e monitorar As informações de I/O estão armazenadas nas VISÕES DE PERFORMANCE DINÂNAMICAS Verificar a view V$SYSTEM_EVENT Eventos relacionados Db fiel sequential read Db file scattered read Db file single wirte Db file parallel Log file parallel write Objetivo: Coletar identificadores, Tempo total de espera, I/O Numero de espera executadas, Requisições por cada operação, Único ou vários bytes de blocos lidos e Um ou vários bytes de gravação

View V$IOSTAT_CONSUMER_ GROUP V$IOSTAT_FILE V$IOSTAT_FUNCTION Descrição captura estatísticas de I / O para os grupos de consumidores. Se o Oracle Database Resource Manager é ativada, todas estatistivas dos grupos de consumidores que fazem parte do plano de recursos ativado atualmente são capturados Captura as estatísticas dos arquivos de banco de dados que são ou foram acessados (SMALL_SYNC_READ_LATENCY) Captura as estatísticas das funções do banco de dados (como LGWR Log WRiter e DBWR DataBase WRiter) I/O

select FUNCTION_ID, FUNCTION_NAME from v$iostat_function I/O FUNCTION_ID FUNCTION_NAME ----------- ---------------------------------- 0 RMAN 1 DBWR 2 LGWR 3 ARCH 4 XDB 5 Streams AQ 6 Data Pump 7 Recovery 8 Buffer Cache Reads 9 Direct Reads 10 Direct Writes 11 Others

Utilizando Blocos do Oracle com Eficiência

O formato do bloco de dados Oracle é semelhante, independentemente de o bloco de dados contém a tabela, índice ou dados em cluster Bloco de Dados

Bloco de Dados Parâmetros de controle de Simultaneidade INITRANS um dados e dois índices. Pode-se criara segmentos adicionais MAXTRANS 255 valor default, com limite para transações simultâneas A definição deste valor restringirá o uso do espaço de slots de transações PCTFREE = Parâmetro de controle de utilização de espaço de dados (10% padrão) PCTUSED = Parâmetro utilizado para representa a porcentagem mínima de espaço utilizado que o servidor Oracle tentara manter para cada bloco de dados da tabela Um bloco será colocado novamente na free list, quando se espaço utilizado for menor que o valor do parâmetro PCTUSED

Bloco de Dados Free List uma lista de um segmento que contém blocos que concorrem para acomodar futuras inserções um segmento é sempre criado com uma free list, mas também possível criar segmento com altos números de free lists definindo o parâmeto FREELISTS, sendo o valor default de PCTUSED de 40% Os valores para PCTFREE e PCTUSED são calculados como porcentagem de espaço de dados disponíveis Esses parâmetros somente são definidos como segmento e nunca no nível do tablespace.

Views de Consulta Nome Descrição Bloco de Dados Dba_segments Dba_extents Dba_free_space Número de extensões e blocos alocados para segmentos Extensões de um segmento especifico Extensões de um segmento especifico.

Otimizando Operações de Ordenação

Otimizando Ordenação Muitas técnicas surgiram a partir do Oracle 10.2 Utilização do conceito Hash-Based Anteriormente, um GROUP BY envolvia a classificação dos dados nas colunas relevantes, em seguida, acumula os resultados agregados. O GROUP BY com o método hash, cria os agregados sem triagem, e é quase sempre mais rápido do que o grupo com base GROUP BY. Controlado pelo parâmetro _GBY_HASH_AGGREGATION_ENABLED

Otimizando Ordenação

Otimizando Ordenação

Otimizando Ordenação

Otimizando Ordenação

Otimizando Ordenação Quando um GROUP BY está associada a um ORDER BY sobre as mesmas colunas, o otimizador Oracle pode escolher um GROUP BY SORT, em vez de o GRUPO HASH geralmente mais eficiente BY. Usando o SORT GROUP BY evite a adição de uma ordem de classificação para o plano, mas o resultado global é geralmente decepcionante. Para obter um melhor resultado, você pode executar o GROUP BY em uma visão em linha e executar a ORDER BY na consulta externa. Use a dica NO_MERGE para evitar que as duas operações sejam combinadas.

STATSPACK

STATSPACK O STATSPACK é fornecido pela Oracle desde a versão 8i Tem como objetivo auxiliar na análise e monitoramento de performance do ambiente, fornecendo um relatório detalhado, semelhante ao AWR São requeridos 64MB para a instalação

Instalando Criar uma tablespace para o STATPACK STATSPACK Para uma melhor performance, configure a inicialização do parâmetro TIMED_STATISTICS = TRUE.

STATSPACK próximo passo consiste na execução do script spcreate.sql localizado em $ORACLE_HOME/rdbms/admin conectado como sysdba. Durante a execução deste script será solicitada a definição de uma senha para o usuário perfstat (criado pelo processo). A definição de uma senha é obrigatório para possamos continuar com a instalação; Após definir a senha, será solicitada a default tablespace. Por último será solicitado qual a tablespace temporária a ser utilizada. Neste caso, definirei como a tablespace padrão (TEMP).

STATSPACK

STATSPACK Para uma coleta automática, execute o script spauto.sql. Este script criará um job que por padrão irá gerar um snapshot por hora. De acordo com a necessidade do ambiente é possível alterar o intervalo de execução deste job SQL> @?/rdbms/admin/spauto.sql Para uma coleta manual utilize comando abaixo: SQL> EXECUTE STATPACK.snap

STATSPACK Para remover Statspack basta executar o spdrop.sql encontrado no $ORACLE_HOME/rdbms/admin Na criação do script, um arquivo spckg.list é criado, reveja o arquivo para qualquer possível erro que encontrar.

Alguns scripts padrão Script sppurge.sql spauto.sql spcreate.sql spdrop.sql spreport.sql sptrunc.sql Descrição STATSPACK Elimina um intervalo de SNAPSHOTS entre um ID inicial e Final Programa o DBMS_JOB automático para coletar informações do STATSPACK Instala o STATSPACK usuário, tabelas e pacotes no Banco de Dados (Executar como SYS) Desinstala o STATSPACK Relatório da diferenças entre os valores armazenados de dois SNAPSHOTS Truncate de todos os dados das tabelas de STATSPACK

STATSPACK Problemas Algumas estatísticas só podem ser comunicados ao término de uma consulta. Por exemplo, se uma consulta é executada por 12 horas, o seu processamento não serão relatados durante qualquer uma das fotografias tiradas enquanto a consulta foi ocupado executando. Se as consultas são antigas e fora do SharedPool as estatísticas de V $ SQL são restauradas. Isto pode jogar fora os cálculos delta e até mesmo tornálo negativo. Por exemplo, consulta A tem 10.000 tampão recebe um instantâneo 1, mas pelo instantâneo # 2, que foi envelhecido fora dosharedpool e recarregado e agora mostra apenas 1.000 buffer ficar. Então, quando você executar spreport.sql de snapshot 1-2, você obterá 1,00010,000 = 9,000 para esta consulta.

STATSPACK Problemas Algumas estatísticas só podem ser comunicados ao término de uma consulta. Por exemplo, se uma consulta é executada por 12 horas, o seu processamento não serão relatados durante qualquer uma das fotografias tiradas enquanto a consulta foi ocupado executando. Se as consultas são antigas e fora do SharedPool as estatísticas de V $ SQL são restauradas. Isto pode jogar fora os cálculos delta e até mesmo tornálo negativo. Por exemplo, consulta A tem 10.000 tampão recebe um instantâneo 1, mas pelo instantâneo # 2, que foi envelhecido fora dosharedpool e recarregado e agora mostra apenas 1.000 buffer ficar. Então, quando você executar spreport.sql de snapshot 1-2, você obterá 1,00010,000 = 9,000 para esta consulta.

Duvidas?

Obrigado Evandro Deliberal evandro@deljoe.com.br