Tamanho do banco de dados db2

2

Como posso obter o tamanho do meu banco de dados do UDB DB2 versão 9.1? Eu tentei disparar getdbconfig a partir do prompt de comando. Dá toda a configuração, mas não o tamanho.

Obrigado :)

    
por Rashmi Pandit 31.05.2009 / 11:47

3 respostas

3

Há uma TechNote no site de suporte da IBM:

Como calcular o tamanho de um banco de dados DB2

If you want to calculate the size and maximum capacity of your database, you can use the procedure GET_DBSIZE_INFO. This procedure first appeared in DB2 Universal Database™ (DB2 UDB) Version 8.2.

Para executar este procedimento, você deve seguir estas três etapas:

  1. Conecte-se ao banco de dados para o qual você deseja saber o tamanho e a capacidade máxima.
  2. Execute o procedimento GET_DBSIZE_INFO .
  3. Feche a conexão.

Aqui está a sintaxe do procedimento:

 db2 call GET_DBSIZE_INFO (?,?,?,refresh-window)

Os primeiros três parâmetros são parâmetros de saída e a janela de atualização é um parâmetro de entrada do tipo INTEGER que especifica o número de minutos até que os valores armazenados em cache para o tamanho e a capacidade do banco de dados sejam atualizados.

Consulte este link de documentação para exemplos da saída deste procedimento no DB2 UDB Versão 9.1.

    
por 31.05.2009 / 14:33
1

Existe um script aqui que foi testado em 9.1 e, de acordo com o autor:

will calculate the size of a DB2 LUW database on a UNIX server using UNIX commands that will give you a more accurate measure of the space used by the database. This script also stores this information in an operational table that you may use as part of your DBA Monitoring Dash Board to help you monitor and manage space in relation to growth trends.

    
por 31.05.2009 / 13:35
0

O procedimento GET_DBSIZE_INFO calcula o tamanho do banco de dados e a capacidade máxima. Os valores calculados são retornados como parâmetros de saída do procedimento e são armazenados em cache na tabela SYSTOOLS.STMG_DBSIZE_INFO . O procedimento armazena esses valores em cache porque os cálculos são caros. A tabela SYSTOOLS.STMG_DBSIZE_INFO é criada automaticamente na primeira vez que o procedimento é executado. Se houver valores armazenados em cache na tabela SYSTOOLS.STMG_DBSIZE_INFO e eles forem atuais o suficiente, conforme determinado pelos valores de instantâneo-registro de data e hora e de janela de atualização, esses valores em cache serão retornados. Se os valores armazenados em cache não forem atuais o suficiente, os novos valores armazenados em cache serão calculados, inseridos na tabela SYSTOOLS.STMG_DBSIZE_INFO e retornados, e o valor do registro de data e hora da captura instantânea será atualizado.

O abaixo retorna o tamanho e a capacidade do banco de dados usando uma janela de atualização de 0 minutos. O tamanho e a capacidade do banco de dados serão recalculados imediatamente.

CALL GET_DBSIZE_INFO(?, ?, ?, 0)

Value of output parameters
--------------------------
Parameter Name  : SNAPSHOTTIMESTAMP
Parameter Value : 2004-02-29-18.33.34.561000

Parameter Name  : DATABASESIZE
Parameter Value : 22302720

Parameter Name  : DATABASECAPACITY
Parameter Value : 4684859392

Return Status = 0 

Você pode consultar o systools.stmg_dbsize_info diretamente para obter os resultados também.

db2 "select db_size, db_capacity from systools.stmg_dbsize_info"

db2 "select db_size/1073741824 as SIZE_GB, db_capacity/1073741824 as CAPACITY_GB from systools.stmg_dbsize_info"

db2 "select db_size, db_capacity from systools.stmg_dbsize_info"

DB_SIZE              DB_CAPACITY
-------------------- --------------------
       1089248165888        1342416097280

  1 record(s) selected.

db2 "select db_size/1073741824 as SIZE_GB, db_capacity/1073741824 as CAPACITY_GB from systools.stmg_dbsize_info"

SIZE_GB              CAPACITY_GB
-------------------- --------------------
                1014                 1250

  1 record(s) selected.
    
por 02.06.2014 / 12:51

Tags