can not execute dbms_redefinition.start_redef_table [message #518841] |
Mon, 08 August 2011 01:33 |
andy huang
Messages: 498 Registered: July 2011
|
Senior Member |
|
|
Hi,
Which privs do grant to user? i can not execute start_redef_table
SQL> Begin
2 Dbms_Redefinition.Can_Redef_Table(USER, 'TB_HXL_USER');
3 End;
4 /
PL/SQL procedure successfully completed.
SQL> BEGIN
2 dbms_redefinition.start_redef_table(
3 uname => USER,
4 orig_table => 'TB_HXL_USER',
5 int_table => 'TB_HXL_USER_MID',
6 options_flag => DBMS_REDEFINITION.cons_use_pk);
7 END;
8 /
BEGIN
*
ERROR at line 1:
ORA-01031: insufficient privileges
ORA-06512: at "SYS.DBMS_REDEFINITION", line 52
ORA-06512: at "SYS.DBMS_REDEFINITION", line 1646
ORA-06512: at line 2
|
|
|
Re: can not execute dbms_redefinition.start_redef_table [message #518843 is a reply to message #518841] |
Mon, 08 August 2011 01:43 |
|
dkdms2124
Messages: 369 Registered: April 2010 Location: INDIA
|
Senior Member |
|
|
have you checked if the required privileges are give to the user:
ALTER ANY TABLE
CREATE ANY TABLE
DROP ANY TABLE
LOCK ANY TABLE
SELECT ANY TABLE
There are some restrictions as well so check you are not doing any one among them.
One cannot redefine Materialized Views (MViews) and tables with MViews or MView Logs defined on them.
One cannot redefine Temporary and Clustered Tables
One cannot redefine tables with BFILE, LONG or LONG RAW columns
One cannot redefine tables belonging to SYS or SYSTEM
One cannot redefine Object tables
Table redefinition cannot be done in NOLOGGING mode (watch out for heavy archiving)
Cannot be used to add or remove rows from a table
Regards
Deepak
[Updated on: Mon, 08 August 2011 01:45] Report message to a moderator
|
|
|
|
|
|