创建表空间报权限不足,引发的问题如下:

create tablespace test1 datafile 'D:\mydf.dbf' size 10m;

1.创建表空间,报权限不足

2.查看当前用户的权限

3.权限与角色的关系

权限:分为系统权限与实体权限

系统权限:系统规定用户使用数据库的权限。(针对用户);实体权限:某种权限用户对其他用户的表或视图存取权限(针对表或视图)

角色是一组权限的集合,将角色赋给一个用户,这个用户就拥有了这个角色中的所有权限。

select * from user_role_privs; --查看当前登录用户的权限或角色

4.系统权限分类

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

RESOURCE:拥有Resource权限的用户只可以创建实体,不可以创建数据库结构。

CONNECT:拥有Connect权限的用户只可以登录Oracle,不可以创建实体,不可以创建数据库结构。

select * from session_privs;--权限privilege

5. connect resource权限;

语法:  grant connect,resource to user;

后用户包括的权限

CONNECT角色: --是授予最终用户的典型权利,最基本的

ALTER SESSION --修改会话

CREATE CLUSTER --建立聚簇

CREATE DATABASE LINK --建立数据库链接

CREATE SEQUENCE --建立序列

CREATE SESSION --建立会话

CREATE SYNONYM --建立同义词

CREATE VIEW --建立视图

RESOURCE角色: --是授予开发人员的

CREATE CLUSTER --建立聚簇

CREATE PROCEDURE --建立过程

CREATE SEQUENCE --建立序列

CREATE TABLE --建表

CREATE TRIGGER --建立触发器

CREATE TYPE --建立类型

最终得到结论:我用授予connect和resource权限的scott用户创建表空间失败后, 然后我就将scott用户赋予dba权限,就可以创建。还有一个疑问就是resource权限是可以操作建表的啊---------CREATE TABLE --建表

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐