oracle11g数据库(三):用户权限管理

用户权限管理

查询所有系统权限:

select * from system_privilege_map;

SQLPLUS命令下:

conn sys/cl123456 as sysdba;
       create role manager01;
 			grant select ,update,insert on scott.emp to manager01;           
            grant manager01 to user01;
            conn user01/pass01;
            select * from scott.emp;--正常
revoke select,update ,insert on scott.emp from manager01;
 conn user01/pass01;
 select * from scott.emp;--(error)

查看用户表空间:

相关数据字典:

  1. dab_tablespaces:管理员级别的表空间描述信息,只能由管理员用户使用。
  2.  user_tablespaces:用户级别的表空间描述信息,只能普通用户使用。
     select tablespace_name from dba_tablespaces;

    结果:

    TABLESPACE_NAME

    ------------------------------

    SYSTEM    系统表空间

    SYSAUX     索引表,

    UNDOTBS1   回退表空间

    TEMP        临时表空间

    USERS       用户表空间

    EXAMPLE

    TEST1_TABLESPACE

    TEMPTEST1_TABLESPACE

    conn scott/scott
    select tablespace_name from user_tablespaces;

    结果:

    TABLESPACE_NAME

    ------------------------------

    SYSTEM

    SYSAUX

    UNDOTBS1

    TEMP

    USERS

    EXAMPLE

    TEST1_TABLESPACE

    TEMPTEST1_TABLESPACE

用户相关数据字典:

  1. dba_users:管理员来查看所有用户信息的
  2. user_users:用户来查看当前用户信息f
--(使用默认表空间) 
conn system/cl123456
select default_tablespace,temporary_tablespace from dba_users where username='SYSTEM';
create user user01 identified by pass01;

 

更改表空间到指定表空间:

alter user user01 default tablespace TEST1_TABLESPACE temporary tablespace TEMPTEST1_TABLESPACE;

 查询指定用户的表空间:

 select default_tablespace,temporary_tablespace from dba_users where username='USER01';

 结果:

DEFAULT_TABLESPACE             TEMPORARY_TABLESPACE
------------------------------ ------------------------------
TEST1_TABLESPACE               TEMPTEST1_TABLESPACE

删除修改表空间

  1. 修改表空间状态:

表空间状态:

脱机offline:暂时不让访问,无法直接修改为只读,只能改为online

连接online:正常使用

             连接又可分为:

                  只读状态read only:无法修改表空间数据,提供数据安全性和管理工作量

                  online下默认是可读写状态read write;

 alter tablespace test1_tablespace offline;
   select status from dba_tablespaces where tablespace_name='TEST1_TABLESPACE';

结果: 

 STATUS
---------
OFFLINE
alter tablespace test1_tablespace online;(先offfline改为online=readwrite)
     alter tablespace test1_tablespace read only;
     alter tablespace test1_tablespace read write;

修改表空间文件

增加数据文件

alter tablespace test1_tablespace add datafile 'test2_datafile.dbf' size 10m;

查看表空间所有数据文件

 select file_name from dba_data_files where tablespace_name='TEST1_TABLESPACE';

删除数据文件:第一个指定的表空间的数据文件不可以删除,要删除则要删除表空间

 alter tablespace test1_tablespace drop datafile 'test2_datafile.dbf';

删除表空间

drop tablespace test1_tablespace;只删除表空间,不删数据文件
drop tablespace test1_tablespace including contents;  数据文件和表空间全部删除

如有不对之处,请留言

你可能感兴趣的:(oracle)