暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Oracle迁移用户和权限

原创 章芋文 2014-11-14
1770
手工迁移用户主要涉及到profile、user、权限等:
1、如果有profile,得到profile的脚本
SELECT DISTINCT pi.name FROM sys.profname$ pi WHERE pi.name != 'DEFAULT';
SELECT DBMS_METADATA.GET_DDL('PROFILE','XXXXPFNAMEXXXX') FROM DUAL;
2、得到用户脚本
select dbms_metadata.get_ddl ('USER', username) from dba_users ;
密码可以直接使用密文,即和原来密码一致,如果需要对表空间等调整,可以自行调整脚本。
3、表空间权限脚本
select dbms_metadata.get_granted_ddl('TABLESPACE_QUOTA',username) from dba_users where username in(select username from dba_ts_quotas );
4、得到角色的权限(如果有自定义的角色需要之前迁移)
select dbms_metadata.get_granted_ddl ('ROLE_GRANT',username) from dba_users where username in(SELECT grantee from dba_role_privs);
5、得到系统权限脚本
select dbms_metadata.get_granted_ddl ('SYSTEM_GRANT', username) from dba_users where username in(SELECT grantee from dba_sys_privs ) and username not in ('SYS','SYSTEM');
6、得到对象权限脚本
select dbms_metadata.get_granted_ddl ('OBJECT_GRANT', username) from dba_users where username in(SELECT grantee from dba_tab_privs) and username not in ('SYS','SYSTEM');
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论