如何在Oracle中克隆用户

9

我需要一个SQL查询来克隆Oracle用户。源用户具有所有必要的权限。我想知道是否可以在同一数据库中创建一个不同用户名但相同的用户。

1个回答

17

简单介绍一下(来自这里

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;

然后只需将用户名替换为您想要创建的新用户名即可。


PS. 如果您有Java权限、网络ACL等,则可能需要添加一些额外的代码。 - Gary Myers
这是克隆用户的完美DDL集合,感谢@Gary Myers。 - Ashish Shetkar

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接