Oracle 用户、权限和角色操作

一、用户的新增和修改
1.如何创建Oracle用户,注意要在管理员的模式(system或者sys权限下)

create user user_name identified by pass_word
default tablespace users
temporary tablespace temp
profiles profile_name
quota unlimited on tablespace_specify1
--user_name  用户名,一般为字母和数字型
--pass_word  密码,  一般为字母和数字型
--[default tablespace tablespace_default]  表示该用户在创建数据对象时使用的默认表空间
--[quota[integer K[M]] [unlimited]] on tablespace_specify1: 表示该用户在指定的表空间允许占用的最大空间
--[profiles profile_name]  资源文件的名称
--[temporary tablespace tablespace_temp]  表示该用户所使用的临时表空间

Demo:创建一个用户it001 密码为admin 默认表空间为topprd 临时表空间为temp 并且该用户不限制topprd表空间的使用,文件名称为TIPTOP

create user it001 identified by admin
default tablespace topprd
temporary tablespace temp
profiles TIPTOP
quota unlimited on topprd

2.如何修改用户信息,将上述的create 改为 alter。Demo 改为默认表空间为tbsp_1

--修改默认表空间
alter user it001 identified by admin
default tablespace tbsp_1
temporary tablespace temp
profiles TIPTOP
quota unlimited on tbsp_1
--修改密码
alter user it001 identified by 123456

3.解锁被锁住的用户
Oracle 默认安装完成后,为了安全起见,很多用户处于LOCKED 状态 DBA可以对锁定的状态进行解锁。

--查看用户状态
select * from dba_users
--解除锁定状态
alter user outln account unlock

4.删除用户

drop user user_name[cascade]
--user_name 要删除的用户
--cascade 级联删除,如包含数据库对象,则必须加cascade选项。
drop user it001 cascade    --删除it001

二、用户的权限管理
1.授权操作
成功创建了用户之后,仅仅表示用户存在与Oracle中,但是 这样用户是无法连接到数据库
不能进行增删改查等操作的。必须要用含有DBA权限的用户对该用户进行授权
为新建用户it001创建连接和开发权限,

grant sys_privi | role to user | role | public [with admin option]
--sys_privi  表示Oracle系统权限,系统权限是系统一组固定的数字,如查询表"select xxx from "
--role  表示角色
--user 表示具体的用户名
--public 保留字  代表Oracle系统全部用户
-- with admin option 表示被授权者可以在将权限授予其他的用户
grant session,connect,resource to it001

2.回收权限

--用法
revoke sys_privi|role from user|role|public
revoke create table from it001

三、角色管理

TableName 说明
DBA_USERS 数据库用户基本信息
DBA_SYS_PRIVS 已授予用户或角色的系统权限
DBA_TAB_PRIVS 数据库对象上的所有权限
USER_SYS_PRIVS 登陆用户可以查看自己的系统权限
ROLE_SYS_PRIVS 登陆用户查看自己的角色
ALL_TABLES 用户自己可以查询的基表信息
USER_TAB_PRIVS 用户自己将哪些表权限赋予哪些用户
ALL_TAB_PRIVS 哪些用户给自己权限

1.Oracle中的权限设置十分复杂、权限类型也很多。维护系统权限就会很繁琐。而角色就是简化权限管理的一种数据库对象。
如下图所示


不同的IT人员权限

2.系统预定义好的角色

角色名 作用
CONNECT 数据库管理
RESOURCE 数据库管理
DBA 数据库管理
EXP_FULL_DATABASE 数据库导出
IMP_FULLDATABASE 数据库导入

3.创建角色并且授权

create role role_name [not identified | identified by [password] [exeternally] |[globally]]
--创建名为designer  密码为123456
create role desinger identified by 123456

4.给角色赋予权限

grant create view,create table,insert to designerx
--给与表格
grant  update  any table to users
grant select any table to users 

5.角色赋予用户,将designer权限赋予给IT001

grant designer to it001
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容