administração

O que é e como utilizar o xtrace

O xtrace é um programa para rastrear chamadas internas do informix.
Para não dizer que "não existe" documentação dele, existe apenas um technotes ensinando a usa-lo parcialmente para identificar o IP de quem está tentando conectar no banco.

Para realizar um trace é necessário 4 parametros, o tamanho do buffer de log o nivel do trace (lite/med/heavy), a "categoria" e a "função".
O log do tr

Como calcular o espaço utilizado por um tipo de dado em um campo de uma tabela

Baseado no SQL Reference Guide.

  • INTEGER = 4 bytes
  • SMALLINT = 2 bytes
  • CHAR(n) = n bytes
  • DECIMAL(p,s) =
    Se s impar = p + 4 /2
    Se s par = p + 3 /2
    Exemplo: DECIMAL(16,2) = 16 +3 /2 = 19/2 = 9.5 ; truncado = 9 bytes

Onde o parametro FILLFACTOR é gravado e como consulta-lo?

O parâmetro FILLFACTOR utilizado na criação de indices não é salvo em nenhum local do banco de dados.

Uma das razões para isso é devido o fato que logo após o indice ser criado, ele pode e provavelmente irá sofrer alterações e assim o espaço reservado pelo FILLFACTOR será utilizado.

Como funciona admin() e task() e qual a diferenca entre eles?

  • Os comandos admin() e task() são UDRs existentes no banco sysadmin com a finalidade de permitir a administração do banco através de sessões SQLs.
  • Antes da versão 11.10 estas tarefas só podiam ser feitas através dos comandos onmode/onspaces/onaudit/onparam em linha de comando. [*

Quais informações um usuário tem acesso através do onstat ?

Todos os parâmetros do onstat que estão relacionados a sessões de outros usuários são bloqueados e para ter acesso é necessário que o usuário seja um DBSA ( participante do grupo informix ou do grupo DBSA definido através o Role Separation ) .

[code]
# Alguns comandos bloqueados a usuários comuns
onstat -g his # Historico dos SQL
onstat -g env # Variáveis de ambiente das co

Configurando o cache de dicionário de dados

O cache de dicionário de dados é utilizado para armazenar as informações de colunas (nomes e tipos) das tabelas acessadas.

Estas recomendações são baseadas em documentações como manuais e inf

Configurando o cache de distribuição de dados

O Cache de distribuição armazena os binários de estátisticas gerados pelo comando "UPDATE STATISTICS MEDIUM/HIGH".
Para um banco de dados grande com relação a capacidade da maquina (memória/processamento/IO), esta configuração poder ter efeito na performance, pois toda SQL executada no banco de

Aumentando a segurança com "Role Separation"

Antes, uma observação, não confundir role separation com roles.
Role Separation é uma configuração de segurança no nível de Instancia.
Roles são "profiles" de permissões aos objetos do banco de dados.

Role Separation é separação a nível de grupos de usuários no sistema operacional para cada responsabilidade no sistema.

Auditoria no Informix

A auditoria no Informix não era um ponto forte quando utilizado sua ferramenta nativa, pois não gera muitas informações uteis ou detalhadas suficiente para rastreamento e sim apenas informações do que ocorreu. Para ter uma auditoria mais completa é necessário complementar com o recurso de SQLTRACE e auditorias a nível de sistema operacional, rede e da própria aplicação em si.

Identificar quando foi a ultima vez que as estatisticas foram zeradas ( onstat -z )

 $ echo 'select dbinfo("utc_to_datetime", sh_pfclrtime) 
from sysmaster:sysshmvals' | dbaccess sysmaster