Milton, A sua resposta "teoricamente" estaria certo, tentei criar tablespaces com um blocksize menor que no padrão do banco e não tive sucesso, segue o exemplo:
SQL> show parameters db_block_size NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ db_block_size integer 8192 SQL> create tablespace TESTE2 2 datafile 3 '+NFR_DGR01_D\teste.dbf' size 1m 4 blocksize 4K; create tablespace TESTE2 * ERROR at line 1: ORA-29339: tablespace block size 4096 does not match configured block sizes SQL> l 4 4* blocksize 4K SQL> c/4K/32K/ 4* blocksize 32K SQL> l 1 create tablespace TESTE2 2 datafile 3 '+NFR_DGR01_D\teste.dbf' size 1m 4* blocksize 32K SQL> / create tablespace TESTE2 * ERROR at line 1: ORA-00382: 32768 not a valid block size, valid range [2048..16384] SQL> l4 4* blocksize 32K SQL> c/32K/2K/ 4* blocksize 2K SQL> l 1 create tablespace TESTE2 2 datafile 3 '+NFR_DGR01_D\teste.dbf' size 1m 4* blocksize 2K SQL> / create tablespace TESTE2 * ERROR at line 1: ORA-29339: tablespace block size 2048 does not match configured block sizes SQL> l4 4* blocksize 2K SQL> c/2K/16K/ 4* blocksize 16K SQL> l 1 create tablespace TESTE2 2 datafile 3 '+NFR_DGR01_D\teste.dbf' size 1m 4* blocksize 16K SQL> / Tablespace created. SQL> drop tablespace TESTE2 including contents and datafiles; Tablespace dropped. Porém, na documentação da Oracle, existe um exemplo que tem um db_block_size no banco de dados de 4K e utilizou os parâmetros db_2K_block_size e db_8k_block_size como se estiverem utilizando. Como isso varia de SO para SO, aqui no Linux não funcionou, não testei em ambientes com AIX, HP-UX ou Solaris para verificar se funciona. Thiago, O DB_CACHE_SIZE deve ser configurado para o blocksize default do banco de dados (parâmetro db_block_size), sem problemas até o momento, agora, se meu banco de dados estiver trabalhando com tablespaces de diferentes BLOCKSIZE, como no exemplo acima, BLOCKSIZE de 16K, deverei configurar o parâmetro DB_16K_CACHE_SIZE para um valor até o tamanho do DB_CACHE_SIZE. No Oracle existem 5 parâmetros para diferentes BLOCKSIZE: - DB_2K_CACHE_SIZE - DB_4K_CACHE_SIZE - DB_8K_CACHE_SIZE - DB_16K_CACHE_SIZE - DB_32K_CACHE_SIZE A regra padrão para configurar o DB_CACHE_SIZE continua o mesmo, DB_CACHE_SIZE = VALOR * BLOCKSIZE. E para os demais deverá ser seguido a seguinte recomendação: DB_BLOCK_SIZE = 4K DB_CACHE_SIZE = 100M No banco de dados estamos trabalhando com tablespaces que tem BLOCKSIZE de 8K e 16K, então: DB_8K_CACHE_SIZE = 40M DB_16K_CACHE_SIZE = 60M DB_8K_CACHE_SIZE + DB_16K_CACHE_SIZE = 100M => DB_CACHE_SIZE Recomendo a leitura abaixo sobre o assunto: http://download-east.oracle.com/docs/cd/B19306_01/server.102/b14231/create.htm#i1014121 Abraços, Rodrigo Almeida [As partes desta mensagem que não continham texto foram removidas]
