Você está alterando os parâmetros corretos, mas parece que você não reiniciou o banco de dados, o que explicaria porque o LOGSECOND
entrou em vigor imediatamente, mas LOGPRIMARY
e LOGFILSIZ
ainda não foram alterados. Você pode ver quais são os valores atuais e adiados (pendentes) para esses parâmetros de configuração com o comando GET DATABASE CONFIGURATION FOR <yourdb> SHOW DETAIL
. Eu suspeito que você verá que os valores diferidos para LOGPRIMARY
e LOGFILSIZ
são 10 e 4000, respectivamente.
A maneira mais fácil de garantir que você reciclar completamente um banco de dados DB2 é parar e reiniciar a instância inteira (usando os comandos db2stop force
e db2start
). Depois disso, você pode, opcionalmente, ativar o banco de dados usando a instrução ACTIVATE DATABASE
.
Você não precisa encerrar toda a instância do DB2, no entanto. Para reiniciar corretamente um banco de dados DB2, é necessário desativá-lo (isto é, fazer com que o banco de dados desaloque toda a memória atribuída a ele). Você faria isso matando todas as conexões com o banco de dados (usando a instrução FORCE APPLICATION
) e, em seguida, (se necessário) emitindo a instrução DEACTIVATE DATABASE
. Você pode verificar se o banco de dados está completamente parado emitindo o comando LIST ACTIVE DATABASES
- se o banco de dados não estiver na lista retornada, ele será interrompido.
Qualquer nova conexão com o banco de dados depois disso (ou ACTIVATE DATABASE
) fará com que o DB2 inicie o banco de dados em questão, ponto no qual alocará os arquivos de log com os novos parâmetros.