Welcome 微信登录

首页 / 数据库 / MySQL / Oracle用户权限 -- 新建用户权限继承另一用户的权限

题记:今天要为监控服务器I2000在现网数据库中新建用户,要求该用户的权限与数据库已经存在的某一用户的权限一致!这里提供了我的做法,方法应该不是很好,不知道哪位大侠有更好的方法,希望给予指教,谢谢!实验:
要求:新建用户i2ksnmp的权限要和数据库已经存在的DBSNMP用户的权限一样。
1. 创建新用户i2ksnmp
create user i2ksnmp identified by i2ksnmp;2. 查看DBSNMP用户的所有系统权限
select privilege from dba_sys_privs where grantee="DBSNMP
union 
select privilege from dba_sys_privs where grantee in (select granted_role from dba_role_privs where grantee="DBSNMP" );
如下,得到DBSNMP用户的所有系统权限:
PRIVILEGE
----------------------------------------
ADVISOR
ANALYZE ANY
ANALYZE ANY DICTIONARY
CREATE JOB
CREATE PROCEDURE
CREATE SESSION
CREATE TABLE
MANAGE ANY QUEUE
SELECT ANY DICTIONARY
UNLIMITED TABLESPACE
3. 然后将上面的权限都赋予新建用户即可
比如:
grant ANALYZE ANY DICTIONARY to i2ksnmp;附加:
这里简单的整合了上面的方法:
set feedback off heading off verify off trimspool off
set pagesize 0 linesize 200
define user=test   ---> 这里是新建用户名
select "grant  "||privilege||"  to &user;" from dba_sys_privs where grantee = "DBSNMP"
union 
select "grant  "||privilege||"  to &user;" from dba_sys_privs where grantee in (select granted_role from dba_role_privs where grantee = "DBSNMP");
然后将上面打印在屏幕上的拷贝执行就可以了。Oracle UNDO表空间日常维护查看操作LAMP环境搭建图形界面配置MySQL数据库相关资讯      Oracle数据库  Oracle入门教程  oracle数据库教程 
  • Oracle数据库全球化  (03月01日)
  • Oracle数据库日期过滤方法性能比较  (02/02/2015 13:20:26)
  • Oracle数据库安装中端口被占用问题  (10/29/2014 07:42:24)
  • 在CentOS 6.6上搭建C++运行环境并  (10/10/2015 19:44:40)
  • Oracle数据库无法使用localhost和  (11/14/2014 16:39:10)
  • 使用SQLT来构建Oracle测试用例  (08/28/2014 06:17:41)
本文评论 查看全部评论 (0)
表情: 姓名: 字数