Arquivo de configuração
O arquivo de configuração: Unix/Linux
Os parâmetros de configuração do servidor são armazenadas em um arquivo localizado no diretório $INFORMIXDIR/etc.
Especifique o nome do arquivo, definindo a variável de ambiente ONCONFIG. Não especifique o caminho completo, somente o nome do arquivo.
Se a variável de ambiente ONCONFIG não está definido, o nome de arquivo padrão ONCONFIG é usado.
Exemplo:
export ONCONFIG=onconfig.prd
O arquivo de configuração contém muitos parâmetros diferentes que permitem que você configure seu servidor para as suas necessidades específicas. Alguns parâmetros são definidos no momento em que você configura o servidor pela primeira vez e, uma vez que o servidor foi inicializado pela primeira vez, alguns parâmetros não podem ser alterados. A maioria dos parâmetros , no entanto, podem ser modificados após a inicialização do servidor.
Abaixo os seguintes parâmetros no arquivo de configuração deve ser configurado antes de um servidor ser inicializado porque o root dbspace contém as páginas reservadas, informações sobre todos os bancos de dados no servidor e bancos de dados que armazena suas atividades.
- Root dbspace
- Mensagens
- Informações do Servidor
Root dbspace
Cada servidor deve ter um rootdbspace. Inicialmente, o root dbspace também contem o phyical e logical logs. No entanto, eles devem ser movidos mais tarde para outros dbspaces.
ROOTNAME rootdbs #Root dbspace name
ROOTPATH /dev/online_root # Path for device containing root dbspace
ROOTOFFSET 0 # Offset of root dbspace into device (kilobytes)
ROOTSIZE 300000 # Size of root dbspace (kilobytes)
Esses parametros somente podem ser modificados antes de inicializar o servidor pela primeira vez. Não podem ser modificados os espaços alocados para o root dbspace durante a inicialização do servidor.
Mensagem
Configurando o caminho das mensagens:
MSGPATH /var/log/idslog/online.log # System message log file path
CONSOLE /dev/console # System console message path
O servidor IDS prove dois destinos diferentes para as mensagens:
- MSGPATH: este parametro indica o caminho e o nome do arquivo onde todas as mensagens serão gravadas. Este arquivo é criado quando o servidor é inicializado pela primeira vez, se ele não existir.
- CONSOLE: este é o caminho onde é especificado onde o servidor ira monstrar as mensagens de console. Uma mensagem de console é muito importante para o administrador do servidor onde o banco de dados reside. Por exemplo, backup e restore requer uma troca de fita, essas mensagens são enviadas para a CONSOLE. Por padrão, este parametro é configurado com o dispositivo de conssole do servidor, porem pode ser configurado para enviar as mesagens para um arquivo.
Informação do SERVER
Configurando informação de um servidor especifico:
SERVERNUM #Unique id corresponding to an IDS server
DBSERVERNAME #Name of default database server name
DBSERVERALIASES #Names of additional database server names
Esses parâmetros devem ser definidos para que o servidor possa ser identificado exclusivamente no computador.
Informação dos Logs
LOGBUFF #Size in kilobytes for the three logical-log buffers in shared memory
LOGFILES #Number of logical-log files
LOGSIZE #Size of logical-log files
PHYSBUFF #Amount of shared memory reserved for the buffers
PHYSFILE #Size of the initial physical log
PHYSDBS #Name of the dbspace in which the physical log resides
Logical Logs
Os arquivos de Logical Logs são coleções de paginas contíguas no disco que são usados para armazenar os registros de transações para o servidor. Esses registros de transações são usados para explorar todas as alterações feitas na base de dados que foram criados em modo logging. Todos os bancos de dados compartilham do mesmo conjunto de arquivos de Logical Logs. Cada servidor deve ter no minimo três arquivos de Logical Logs.
Adicionando arquivos de Logical Logs manualmente:
Você pode adicionar arquivos de Logical Logs manualmente pelos seguintes motivos:
- Para aumentar o espaço alocado em disco para os Logical Logs
- Para alterar o tamanho dos arquivos de Logical Logs
- Para completar uma transação aberta
- Para mover arquivos de Logical Logs para uma dbspace diferente
As duas maneiras que você pode adicionar um arquivo de log lógico são:
- Para adicionar arquivos no final da lista usando o comando onparams –a
- Após o arquivo de Logical Log atual usando o comando onparams –a –i
O seguinte comando adiciona um arquivo de Logical Log até o fim da lista de arquivos de logs no dbspace dbslog, usando o tamanho de arquivo de log especificado pelo parametros de configuração LOGSIZE:
onparams -a –d dbslog
O seguinte comando adiciona arquivos de Logical Log de 1000KB após o arquivo de log atual no dbspace dbslog:
onparams -a -d logspace -s 1000 -i
Para adicionar um arquivo de Logical Log com um novo tamanho (nesse caso, 250KB), execute o comando abaixo:
onparams -a -d logspace -s 250
Você pode dropar um arquivo de Logical Log usando o seguinte comando:
onparams -d -l lognum -y
Você pode mover os arquivos de Logical Logs para:
- Eliminar arquivos de Logical Logs do dbspace corrente
- Adicionar arquivos de Logical Logs para uma nova dbspace
Estratégia para estimar o tamanho e os números de Logical Logs
É mais fácil de gerenciar arquivos de Logical Logs grandes do que muitos arquivos de Logical Logs pequenos. Se os arquivos de Logical Logs não são suficientes, frequentemente checkpoints serão disparados, isso impacta diretamente na performance. Para aplicações que geram uma pequena quantidade de dados de log, começe com 10 arquivos de logs com o tamanho de 100MB. Se um grande número de objetos em uma blobspace são alterados frequentemente, você necessitara de backups frequentes para liberar espaçoss na blobspace.
A expressão a seguir fornece um exemplo de como calcular a configuração de espaço total para os logs, em kilobytes:
LOGSIZE = (((connections * maxrows) * rowsize) / 1024) / LOGFILES
A politica de Objetivo de Tempo de Recuperação (RTO – Recovery Time Objective) determina a tolerância de perda de dados em caso de uma falha do servidor. Se esta politica é necessária,
- Utilize backups automaticos de logs sempre que um arquivo de log encher
- Utilize o agendador para criar tarefas que faça backup automatico de logs em determinados intervalos de tempo
- Se o espaço de log ficar cheio antes dos logs serem bacapeados, adicione novos arquivos de logs para permitir a continuidade do processamento das transações
- Utilize o agendador para adicionar tarefas para detectar a situação acima e adicionar logs automaticamente
Physical Log
O servidor tem um log especial que é utilizado para fins de recuperação automática. Esses registros são chamados de Physical Log. O physical log é uma coleção de paginas contiguas no disco.
Quando uma página é lida em um buffer de memória compartilhada e modificada por um usuário, uma copia dessa pagina em sua condição original é gravada dentro do physical log. Essa copia de paginas é conhecida como “before image” (copia da pagina antes de sua alteração). Apenas a primeira mudança da pagina em um buffer causa a gravação do before image no pysical log. Quaisquer alterações posteriores na mesma página não gravará novo before image para serem salvas no physical log. Estas imagens são utilizados por um mecanismo automático de recuperação.
Você pode mover a localização e o tamanho do physical log usando o comando onparams.
A seguir o comando move o physical log para o dbspace dbsphyslog e redimenciona para 3000KB:
onparams -p -d dbspace1 -s 3000
Estimando o tamanho do Physical Log
O parametro de configuração PHYSFILE especifica o tamanho do physical log. O tamanho do physical log depende de:
- Da taxa de atividades gerada pelas transações do physical log
- Da utilização do parametro de configuração RTO_SERVER_RESTART para especificar um valor de tempo de recuperação
Checkpoints são acionados quando 75% do physical log esta cheio e o processamento precisa completar antes que o log fique cheio, para que o servidor de banco de dados não bloqueie todas as transações. A fim de evitar que as transações sejam bloqueadas, verifique se o servidor de banco de dados tem espaço suficiente de physical log para conter todas as atividades de transações durante o processamento do checkpoint.
Se você especificar um valor para o parâmetro de configuração RTO_SERVER_RESTART, o servidor monitora a carga de trabalho e acionamentos de checkpoints para atender a politica RTO. Isso gera algumas atividades de Physical Log. Os registros extras é usado para auxiliar o bufferpool durante o fast recovery de modo que a repetição seja executada de forma otimizada. Se o physical log é considerado grande em relação ao tamanho combinado de todos os buffer pools, paginas descarregadas e paginas com falhas que ocorrem durante um fast recovery. Paginas descarregadas e paginas com falhas reduz substancialmente a performance do fast recovery, e o servidor de banco de dados não pode manter a politica RTO.
Para sistemas com espaço de buffer pool menor que 4GB, o physical log pode ser redimensionado para 110% combinado com todos os buffer pools. Para sistemas com um buffer pool maiores que 4GB monitorar as atividade de checkpoint. Se ocorrer checkpoints com muita frequencia e parecem afetar o desempenho, acrescente mais physical log.
Você pode usar o comando onstat –g ckp para visualizar as configurações recomendadas.
You can use the onstat -g ckp
command to display configuration recommendations.
Novos parametros do ONCONFIG na versão 11
Parametros de Configuração | Descrição |
RTO_SERVER_RESTART | Permite a utilização RTO (Recovery Time Objective) padrões para definir a quantidade de tempo, em segundos, para que o Dynamic Server terá que se recuperar de um problema depois que você reiniciar o DS e colocar o servidor em modo online ou quiescente. |
RAS_PLOG_SPEED | A taxa à qual o physical log pode ser recuperado durante um fast recovery. |
RAS_LLOG_SPEED | A taxa à qual o logical log pode ser recuperado durante um fast recovery. Não configuravel. IDS atualiza esses valores para refletir a velocidade de recuperação real. ( As unidades são paginas por segundos). |
AUTO_CKPTS | Ativa ou desativa checkpoints automaticos. |
AUTO_LRU_TUNING | Ativa ou desativa o ajuste automático de LRU |
AUTO_AIOVPS | Ativa ou desativa a capacidade do servidor de banco de dados para aumentar o número de AIO VPs automaticamente e descarrega threads quando o servidor detectar que AIO VPs não estão acompanhando a carga de trabalho. |
SQLTRACE | Controla o comportamento padrão, como o numero de instruções SQL para rastrear e o modo de rastreamento do recurso de consulta drill-down. |
EXPLAIN_STAT | Ativa ou desativa a inclusão de uma seção de estatísticas de querys no arquivo explain.out que a declaração SET EXPLAIN gerou ou o comando onmode –Y session_id pode mostrar. |
USELASTCOMMITTED | Especifica se o servidor de banco de dados usa a ultima dos dados comitados quando ocorre um bloqueio. |
SHMVIRT_ALLOCSEG | Especifica um limite no qual o IDS deve alocar a memória do servidor e do nivel de alarme ativado se o servidor não poder alocar o novo segmento de memória. |
ENCRYPT_HDR | Ativa ou desativa a criptografia entre os servidores HDR pareados. |
LOG_INDEX_BUILDS | Define para 1 (um) para habilitar o log das paginas de indice durante a instrução CREATE INDEX. Obrigatorio no nó primario ao utilizar nós Secundario (RSS). |
ENCRYPT_SMX | 0. Não utiliza criptografia em conexão SMX 1. Negocia a criptografia em conexão SMX 2. Deve-se utilizar criptografia em conexão SMX |
Nenhum comentário:
Postar um comentário