2010-12-17 202 views
6

Necesito una consulta SQL que haga la clonación del usuario de Oracle. Como fuente, tengo un usuario que tiene todos los privilegios necesarios. Me pregunto si es posible crear el mismo, pero con diferentes nombres de usuario en la misma base de datos.Cómo clonar usuario en Oracle

Respuesta

8

brevemente (de here)

select dbms_metadata.get_ddl('USER', '...') FROM DUAL; 
SELECT DBMS_METADATA.GET_GRANTED_DDL('ROLE_GRANT','...') FROM DUAL; 
SELECT DBMS_METADATA.GET_GRANTED_DDL('SYSTEM_GRANT','...') FROM DUAL; 
SELECT DBMS_METADATA.GET_GRANTED_DDL('OBJECT_GRANT','...') FROM DUAL; 
SELECT DBMS_METADATA.GET_granted_DDL(‘TABLESPACE_QUOTA’, ‘...’) FROM dual; 

A continuación, basta con sustituir el nombre de usuario con el nuevo que desea crear.

+0

PS. Si tiene permisos de Java, ACL de red, etc., es posible que necesiten algún código adicional. –