一、用户的新增和修改
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中的权限设置十分复杂、权限类型也很多。维护系统权限就会很繁琐。而角色就是简化权限管理的一种数据库对象。
如下图所示
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