Para particionar uma tabela não particionada existente, é possível usar EXCHANGE PARTITION ou DBMS_REDEFINITION. Como decidir qual dessas possibilidades escolher para o particionamento de tabelas. Isso depende de quantos dados residem na tabela? Uma operação é mais segura que a outra?
relate perguntas
-
Backups de banco de dados no Oracle - Exportar o banco de dados ou usar outras ferramentas?
-
ORDER BY usando prioridades personalizadas para colunas de texto
-
Interface sqlplus confortável? [fechado]
-
Como encontrar as instruções SQL mais recentes no banco de dados?
-
Como posso consultar nomes usando expressões regulares?
em ambas as formas, você acabará usando a partição de troca e provavelmente uma série de partições divididas. Se sua tabela não tiver muitas dependências como restrições e gatilhos, a rota usando a redefinição pode ser mais fácil porque você ganha muito tempo. Você prepara a nova tabela como uma cópia e troca os IDs do objeto na fase final. Se houver muitas dependências, você deverá recriá-las usando nomes diferentes. A operação levará algum tempo, dependendo do tamanho. Se você for seguro .... em ambos os casos, as operações falham ou são bem-sucedidas. Como está a carga na mesa? Ele recebe muitas atualizações/inserções/exclusões durante a migração? Você tem tempo de inatividade disponível? Eu optaria pela simplicidade, se possível, usando o tempo de inatividade e não usando a redefinição.
Eu concordo com ik_zelf(+1). Você provavelmente vai querer fazer uma Partição Exchange, portanto você deve ler as informações da Referência da Linguagem SQL sobre ela e as regras que ela deve seguir .
A finalidade de DBMS_Redefinition é fazer alterações online em vez de offline. Você deve ler o Guia do Administrador para compreender as situações em que ele pode ajudá-lo.