一、用户
1. 创建用户
语法:create user 用户名 identified by 口令;
create user test identified by test;
2. 修改用户
语法:alter user 用户名 identified by 口令;
alter user test identified by 123456;
3. 删除用户
语法:drop user 用户名;
drop user test;
若用户拥有对象,则不能直接删除,否则将返回一个错误值,指定关键字 cascade ,可删除用户所有的对象,然后再删除用户
语法:drop user 用户名 cascade;
drop user test cascade;
二、授权角色
1.含义概述
三种标准角色
connect role(连接角色)
- 临时用户,特指不需要建表的用户,通常只赋予他们 connect role
- connect是使用Oracle简单权限,这种权限只对其他用户的表有访问权限,包括
select/insert/update/delete
等。- 拥有connect role 的用户还能创建表,师徒,序列(sequence),簇(cluster),同义词(synonym),回话(session)和其他 数据的链(link)
resource (资源角色)
- 更可靠和正式的数据库用户可以授予 resource role
- resource 提供给用户另外的权限以穿件他们自己的表,序列,过程(procedure),触发器(tigger),索引(Index)和簇(cluster)
dba role (数据库管理员角色)
- dba role 拥有所有的系统权限
- 包括无限制的空间限额和其他用户授予各种权限的能力,system 由dba 用户拥有。
2.授权命令
语法:grant connect,resource to 用户名;
grant connect,resource to test;
3.撤销权限
语法:revoke connect,resource from 用户名;
revoke connect,resource from test;
三、创建、授权、删除角色
除了前面讲到的三种系统角色----connect、resource和dba,用户还可以在oracle创建自己的role。用户创建的role可以由表或系统权限或两者的组合构成。为了创建role,用户必须具有create role系统权限。
1. 创建角色
语法:create role 角色名;
create role testrole;
2. 授权角色
语法:grant select on class to 角色名;
grant select on class to testRole;
3. 删除角色
语法:drop role 角色名;
drop role testRole;
注意:与testRole角色相关的权限将从数据库全部删除
四、创建表空间
1. 创建临时表空间
create temporary tablespace yuhang_temp tempfile 'D:\oracledata\yuhang_temp.dbf' size 50m autoextend on next 50m maxsize 20480m extent management local;
2. 创建数据表空间
create tablespace yuhang_data logging datafile 'D:\oracledata\yuhang_data.dbf' size 50m autoextend on next 50m maxsize 20480m extent management local;
3. 创建用户并指定表空间
create user yuhang identified by yuhang default tablespace yuhang_data temporary tablespace yuhang_temp;
4. 给用户授予权限
grant connect,resource,dba to yuhang;