Oracle基础 第二周课程总结--权限,表空间

来源:互联网 发布:php技术 编辑:程序博客网 时间:2024/05/16 01:51

关于权限的问题总结:


--当创建一个新的用户的时候,去进行创建表等一系列操作的时候,需要有该项操作的权限才可以.因此需要去为该用户赋予一定的权限.--

1) 直接赋予用户权限

2) 创建角色,为该角色赋予一定的权限,再把角色赋予给这个用户


--赋予权限的两种形式

--oracle权限分为两种:系统权限和对象

    系统权限: 允许用户执行特定的数据库动作,如创建表、创建索引、连接实例等

    对象权限: 允许用户操纵一些特定的对象,如读取视图,可更新某些列、执行存储过程等

--常用的系统权限:


       CREATE SESSION                      创建会话

       CREATE SEQUENCE                 创建序列

       CREATE SYNONYM                   创建同名对象

       CREATE TABLE                     在用户模式中创建表 

       CREATE ANY TABLE           在任何模式中创建

       DROP TABLE                          在用户模式中删除表

       DROP ANY TABLE                在任何模式中删除表

       CREATE PROCEDURE                   创建存储过程

       EXECUTE ANY PROCEDURE      执行任何模式的存储过程

       CREATE USER                                  创建用户

       DROP USER                                       删除用户
  
       CREATE VIEW                                  创建视图

       INSERT TABLE                                 插入表的权限


--用户是指系统里可以进行登录或者其他操作的实体,角色是拥有部分权限的集合体, 

   而权限是管理用户访问的机制.通常用户拥有管理员给予的权限和他的角色的所有权限.

    一个用户只能是一种角色,一个角色可以是多个用户 .角色和用户是一对多的关系.

     grant all to public     授予所有权限给所有的用户(public) 


--对象权限
用户a:   有h表
scott用户 :有emp表

上述两个用户不能相互访问对方的表。如果想要访问,要给
 方赋予相应的对象权限
例子:scott用户想要增删改查wxh的h表
grant insert,select,update,delete on h to scott;


授予用户查看指定表的权限.  

grant  select  on  tablename (表的名字) to  用户名;  

授予插入权限.

grant  insert  on  tablename (表的名字) to  用户名;  

--赋予wxh的create user权限
grant create user to wxh;

--回收wxh用户的create user权限

revoke create user from wxh;

--创建角色

create role myrole;
--给角色赋予系统权限
grant create session,create table,create user to myrole;

--创建角色   角色是具有名称的一组权限的组合.常用系统预定义的角色: 
    CONNECT:临时用户
    RESOUREC:更为可靠和正式的用户
    DBA:数据库管理员角色,拥有管理数据库的最高权限.

--表空间:一个数据库实例下,分为多个表空间
--表空间和物理文件:一个表空间可以有多个物理文件,一个物理文件
--只能属于一个表空间

--创建一个表空间

create tablespace 表空间名字

datafile '表空间创建路径.DBF'

size 10m

autoextend on next 32m maxsize 2048m;

例如:

删除表空间:

drop tablespace 表空间名字 including contents and datafiles;

例如

--给新建的表空添加一个物理文件
alter tablespace hpe_tablespace add datafile 'D:\app\hpe\product\11.2.0\dbhome_1\oradata\HPEDB\HEPTABLESPACE2.DBF'
size 10M;
autoextend on next 32m maxsize 2048m;

--创建用户手动指定其默认表空间
create user wxh identified 
by 123465
default tablespace hpe_tablespace;

给已存在的用户赋予默认表空间:
alter user 用户名 default tablespace 表空间名字;

--查看表空间的物理文件
select * from dba_data_files;

阅读全文
1 0
原创粉丝点击