Tecnologia da Informação

Como A Verificação de Banco de dados Oracle de Memória e Tamanho de Armazenamento

Em certas ocasiões, eu vou ser convidado para uma estimativa de requisitos de recursos de um banco de dados que será a instalação de um ambiente de desenvolvimento ou como um banco de dados em espera. A seguir estão meus métodos para calcular o tamanho da memória e do armazenamento com base no banco de dados de produção existente. O cálculo do tamanho do armazenamento é destinado ao UNIX e LINUX.

1. Obtenha a pegada de memória estimada de um banco de dados existente.

—- Obter o SGA pegada de uma instância de banco de dados:

SQL> SELECT sum(valor)/1024/1024 “TOTAL SGA (MB)” v$sga;

—- se a PGA consumo de uma instância de banco de dados:

select sum(pga_max_mem)/1024/1024 “máxima TOTAL PGA (MB)” v$process;

Uma análise mais detalhada da PGA uso de memória:

SELECIONE spid, programa,

pga_max_mem max,

pga_alloc_mem alocação,

pga_used_mem usado,

pga_freeable_mem livre

V$PROCESS;

NOTA: O programa resultante nome que não associada nome do processo (ex. PMON, SMON, RECO,..) é um processo de sessão.

dependendo das configurações dos processos do parâmetro init, pode ser que as consultas acima capturem apenas as conexões ativas.

—- obtenha o requisito de memória estimado para as sessões desconectadas:

a consulta abaixo fornece a memória máxima alocada por uma sessão do Usuário. Usaremos isso para calcular os requisitos de memória restantes para os processos desconectados.

select max(p.pga_max_mem)/1024/1024 “PGA MÁXIMO de MEMÓRIA DE SESSÃO de UTILIZADOR (MB)”

v$process p, v$session s

onde P. ADDR = S. paddr e s.nome de usuário não é nulo;

Obter o número máximo de processos que uma instância do Oracle pode manipular.

selecione nome, valor de V $ parâmetro

onde name = ‘processes’;

Vamos contar o número de sessões ligadas à:

select count(1) v$session

onde username é não nulo;

Obter o total de conexões disponíveis subtraindo-se a sessões ligadas à contagem de processos de valor do parâmetro.

o valor resultante deve ser multiplicado pela memória máxima alocada resultante por uma sessão feita pela consulta anterior.

isso lhe daria a quantidade estimada de memória de reserva necessária para acomodar conexões adicionais.

TOTAL ESTIMADO REQUISITO de MEMÓRIA

SGA + PGA = EST REQUISITO de MEMÓRIA PARA CONEXÕES ATUAIS

SGA + PGA + DESCONECTADOS SESSÕES = EST REQUISITO de MEMÓRIA de NO MÁXIMO o PROCESSO de UTILIZAÇÃO

onde:

Desconectados Sessões (MB) = (processos ligados sessões) * pga máximo de memória de sessão de utilizador

2. Obtenha os requisitos estimados de dimensionamento de armazenamento de um banco de dados.

o procedimento abaixo para determinar o tamanho do armazenamento é destinado ao ambiente UNIX e LINUX. Quanto ao windows, basta clicar com o botão direito e selecionar as propriedades em cada uma das letras da unidade fornecidas pelos resultados das consultas.

@servidor primário,

— copie e cole cada comando resultante em um script shell e execute no servidor primário para obter o tamanho do ponto de montagem

selecione único ‘ df-k | / / A.MTPOINT MOUNT_POINT

from ( select substr(FILE_NAME,0,instr(FILE_NAME,’/’,1,2)-1) MTPOINT

a partir de dba_data_files

união

select substr(FILE_NAME,0,instr(FILE_NAME,’/’,1,2)-1) MTPOINT

a partir de dba_temp_files

união

select substr(MEMBRO,0,instr(MEMBRO,’/’,1,2)-1) MTPOINT

v$logfile

união

select substr(NOME,0,instr(NOME,’/’,1,2)-1) MTPOINT

v$controlfile

) de um;

— consulte todo o destino do arquivo de parâmetro e determine se eles são de caminho diferente do ponto de montagem do arquivo de dados ou do diretório ORACLE_BASE.

obter o ponto de montagem tamanho do arquivo destinos

select name, value

from v$parameter

onde (regexp_like(nome, ‘^log_archive_(dest|dest\_())$’, ‘i’) ou nome like ‘%dump_dest’ ou nome like ‘%file_dest’ ou nome como “diag%dest’ ou nome =’utl_file_dir’) e o valor não é nulo;

— Consulta o banco de dados de diretórios para pontos de montagem

seleccione o comando ‘df -k ‘||substr(caminho do diretório,0,instr(caminho do diretório,’/’,1,2)-1) MTPOINT de dba_directories;

Uma alternativa para um df comando para grep todos os banco de dados válido, relacionadas com o ponto de montagem em uma única cadeia de caracteres para obter um máximo de relatório mais conciso.

exemplo:

$ df -k | grep -E ‘/u01|/u02|/utldir|/opt’

Write a Comment

O seu endereço de email não será publicado.