일반 table (non-partitioned table) 을 간단히 partitioned table 로 변환할 수는 없습니다.
질문의 요지는 Down time (해당 table을 사용하지 않는 시간)을 가져갈 수 있느냐 없는냐 인것 같네요.
Down time 을 충분히 가져갈 수 있다고 가정하고 말씀드리면 (그렇지 않으면 훨씬 복잡해 집니다.)
1. Partition table만들기 전에 Partition key 와 Partition 방식을 고민하셔서 정하시고,
2. Partition table 생성 (table명은 다르게)
3. Data Copy from 원본 table
4. 원본 table backup 및 생성 script 확인 후 table drop
5. rename partitioned table 명 to original table 명
6. 새로 생성된 table에 Index 생성 (기존 인덱스와 access pattern 참조하여 필요에 따라 local, global index 생성)
Synonym은 table 에 종속되지 않으므로 재생성할 필요 없습니다.