oracle的表空间、用户管理、角色管理、权限管理

一、启用scott用户

1、给scott用户解锁

alter user scott(username) account unlock

conn scott/tiger

2、了解scott用户下的四张表

Emp 雇员表

Dept 部门表

Salgrade 薪水等级表

Bonus 奖金表

3、连接scott用户

conn scott/tiger(默认锁定)

首先要解锁:

conn sys/oracle as sysdba(须在系统用户下解锁)

alter user scott account unlock;

conn scott/tiger (连接成功)

4、查看用户下有哪些表

select table_name from user_tables;

二、创建表空间

表空间实际上是数据库的逻辑存储结构,可以理解为在数据库中开辟的一个空间,用于存放数据库的对象,一个数据库可由多个表空间构成。

表空间实际上是由一个或多个数据文件构成的,数据文件的位置和大小可由用户自己定义。

我们所操作的表和其他数据对象是存放在数据文件里的。那么数据文件是物理存储结构,而表空间是逻辑存储结构

1、创建表空间的语法

create [TEMPORARY](临时的) TABLESPACE(表空间)

tablespace_name(表空间名)

TEMPFILE|DATAFILE 'xx.dbf' size xx;

例:create (temporary) tablespace test1_tablespace datafile(tempfile) 'test1file.dbf' size 10m;

2、查找创建的表空间的位置

select 'file_name' from dba_data_files where tablespace_name = 'TEST1_TABLESPACE';

3、修改表空间

alter database --修改表空间文件大小 

datafile ‘F:\oracle\product\10.1.0\oradata\orcl\hello.dbf’

resize 10M;

alter tablespace hello  --为表空间hello添加一个数据文件

add datafile 'F:\oracle\product\10.1.0\oradata\orcl\helloAdd.dbf'

size 10M

三、oracle的用户管理

1、创建用户

create user <user_name>

identified by <password>

default tablespace <default tablespace_name>

temporary tablespace <temporary tablespace_name>

例:

create user yan identified by test

default tablespace test1_tablespace

temporary tablespace temptest1_tablespace;

2、查看创建的用户

select username from dba_users;(数据库所有用户信息)

3、给创建的用户授权

grant 权限 to 用户名

例:grant connect to yan;

4、管理用户

连接用户: connect 用户名/口令

更改密码: alter user 用户名 identified by 新密码;

不希望用户登录,而又不删除其用户,可以将其锁定:

alter user 用户名 account lock;

删除用户:drop user 用户名 cascade;

//加上cascade则将用户连同其创建的东西全部删除。

四、oracle的角色管理

角色(role)就是一组权限。

用户可以给角色赋予指定的权限,然后将角色赋给相应用户。

 

三种标准角色

1、CONNECT(连接角色,对普通用户授予)

拥有connect权限的用户只能登录oracle,不能创建实体和数据库结构。

2、RESOURCE(资源角色,对普通用户授予)

拥有resource权限的用户只能创建实体,不能创建数据库结构。

3、DBA(数据库管理员角色,对DBA管理用户授予)

拥有全部特权,是系统最高权限,只有DBA才可以创建数据库结构。

1、创建角色

create role 角色名;

例:create role manager;

2、为角色赋权

grant 权限 to 角色;

例:grant create table,create view to manager;(赋予建表、建视图的权限)

3、将角色赋予用户

grant 角色 to 用户;

例:grant manager to user01,user02;

 

五、用户的权限管理

权限指的是执行特定命令或访问数据库对象的权利。保证了系统安全性和数据安全性。

系统权限是对用户而言,实体权限针对表和视图而言。

1、查询oracle所有的系统权限:

select * from system_privilege_map;

2、常用的系统权限:

create session 创建会话

create sequence 创建序列

create table 创建表

create user 创建用户

alter user 更改用户

drop user 删除用户

create view 创建视图

3、授予权限的语法格式:

grant privilege[,privilege...] to user[,user|role(一个或多个用户),PUBLIC(所有用户)...]

例:grant create table,create sequence to manager;

grant manager to user01,user02;

注:这是对用户user01,user02分配了创建表和序列的权限。

4、回收系统权限

revoke {privilege(权限)| role(角色)} from {user_name|role_name|PUBLIC}

例:revoke manager from user01; //从user01回收角色

revoke create table,create sequence from manager;

//从角色manager回收权限

5、对象权限

查询oracle所有对象权限

select * from table_privilege_map

常用的对象权限如下:

select,update,insert,delete,all等 //all包括所有权限

6、授予对象权限

grant object_priv(对象权限)|ALL[(column)](所有权限) on

object to {user|role|PUBLIC}

例:grant select,update,insert on scott.emp to manager2;

//针对scott用户下的emp表授予查询,更新,插入权限给角色

grant manager2 to user03; //将角色赋予用户

7、回收对象权限

revoke {privilege[,privilege...]|ALL} on object from {user[,user...]|role|PUBLIC}

例:revoke all on scott.emp from user04;

//撤销user04针对scott下emp表的所有操作权限 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值