How can I partitioning oracle table when the table still working?
Explain:
– I need to partitioning table of Oracle but the table didn't partitioned before.
– I have many scheduler I can't close it all.
How can I partitioning table without closing all scheduled tasks?
I try it
BEGIN
dbms_redefinition.start_redef_table(
uname => 'kiku',
orig_table => 'pletest3_pn_kiku_api_db',
int_table => 'pletest4_pn_kiku_api_db');
END;
ERROR::
Error report:
ORA-12008: error in materialized view refresh path
ORA-14400: inserted partition key does not map to any partition
ORA-06512: at "SYS.DBMS_REDEFINITION", line 50
ORA-06512: at "SYS.DBMS_REDEFINITION", line 1343
ORA-06512: at line 2
12008. 00000 - "error in materialized view refresh path"
*Cause: Table SNAP$_<mview_name> reads rows from the view
MVIEW$_<mview_name>, which is a view on the master table
(the master may be at a remote site). Any
error in this path will cause this error at refresh time.
For fast refreshes, the table <master_owner>.MLOG$_<master>
is also referenced.
*Action: Examine the other messages on the stack to find the problem.
See if the objects SNAP$_<mview_name>, MVIEW$_<mview_name>,
<mowner>.<master>@<dblink>, <mowner>.MLOG$_<master>@<dblink>
still exist.
Best Answer
Just copy your table with a new name and apply the partioning, drop the original table and rename the copied file to the original table.