galera, estou precisando de uma ajuda, aqui na empresa, temos algumas 
tabelas de transações ativas e que ja ocorreram, o fato é que o banco 
de dados esta muito grande e o servidor ( maquina) não esta conseguindo 
suportar, o DBA então nos pediu para deletar alguns dados de algumas 
tabelas, porém, algumas tabelas precisam ser deletados 10 milhões de 
registros ou mais. Escrevi um pl/sql para isso, o fato é que precisamos 
da contagem das linhas que foram excluidas, das que não foram e qual o 
campo de identificação daquela linha, dado, que algumas tabelas de 
histórico por exemplo não tem índice ou chave primaria, pois o volume 
de dados é realmente mostruoso, sendo assim, estou utilizando o rowid 
para efetuar o delete, gostaria de saber se eu pedir para o DBA criar 
um índice temporário para essa tabela iria agilizar a exclusão, digo, é 
melhor usar um índice para excluir do que o rowid? é mais rápido? ou o 
melhor seria ele bloquear conexões no banco e executar esses scripts 
para mim, mas de modo que o lock das tabelas seja de maneira na table 
inteira ao invés de cada registro ? Por favor, a opinião de vocês é 
muito importante, obrigado e um abraço a todos.

Responder a