Nicht genügend Rechte Fehler mit DBMS_REDEFINITION.start_redef_table

Ich versuche, partition vorhandenen Tabellen ohne löschen und neu zu erstellen mit Oracle.

DBMS_REDEFINITION-Paket in meiner Oracle 10g-Unterstützung Anwendung

Habe ich alle erforderlichen Berechtigung für den Benutzer als pro erwähnt in der oracle-Dokument.

grant CREATE ANY TABLE to DDUSER;
grant ALTER ANY TABLE to DDUSER;
grant DROP ANY TABLE to DDUSER;
grant LOCK ANY TABLE to DDUSER;
grant SELECT ANY TABLE to DDUSER;
grant execute on dbms_redefinition to DDUSER;

Ich bin in der Lage, ausführen unten Verfahren

begin
Dbms_Redefinition.Can_Redef_Table('DDUSER', 'TABLE');
end;
This throws no error neither any result (Assuming this is as expected)

Aber wenn ich versuche zu laufen

BEGIN
  DBMS_REDEFINITION.start_redef_table(
    uname      => 'DDUSER',        
    orig_table => 'TABLE',
    int_table  => 'TABLE_1');
END;

Erhalte ich folgende Fehlermeldung:

Fehlermeldung:

ORA-01031: Unzureichende Berechtigungen

ORA-06512: at "SYS.DBMS_REDEFINITION", line 50

ORA-06512: at "SYS.DBMS_REDEFINITION", Zeile 1343

ORA-06512: in Zeile 2

01031. 00000 - "Unzureichende Rechte"

Könnten Sie mir bitte helfen, Privileg, was ich hier vermisst?
oder wenn es eine Idee über die operation ausgeführt wird in Zeile 50 im Paket DBMS_REDEFINITION?

  • Hast du TABLE_1 bereits, bevor Sie laufen DBMS_REDEFINITION.start_redef_table?
  • ja, es wurde bereits erstellt.
  • Haben Sie schon Glück dazu? (d.h. ich stehe vor dem gleichen ...)
  • Ich habe gerade entdeckt, dass Privilegien Anforderungen der Verfahren von DBMS_REDEFINITION-Paket unterscheiden zwischen oracle-db-Versionen. In der version 11.2.0.1 es erforderlich, eine Menge von create any global grants, während bei der version 11.2.0.4 ist nur erforderlich create schema-local grants.
  • Ich bin auch immer die gleichen Fehler. Kann mir jemand von Euch helfen, mich zu lösen die gleichen.
InformationsquelleAutor Nitin_Sen | 2014-05-22
Schreibe einen Kommentar