PL/SQL DBA 创建用户 表空间 授权

来源:互联网 发布:广东省电子网络发票 编辑:程序博客网 时间:2024/06/07 10:31

PL/SQL DBA 創建用戶權限

 

1、创建新用户

   @:利用PL/SQL工具创建,File--->New--->user,打开创建新用户界面,所界面上内容,依次输入 NAME,PASSWOERD,DEFAULT TABLESPACE,TEMPORARY TABLESPACE 内容后,下面"APPLY"按钮会显示,点击“APPLY”后,新用户就创建OK;
2. 給用戶開通權限命令:
Grant
Create session,create table,select any table,update any table,insert any
table,delete any table To user_name
注: 創建新用戶時 create session 必需創建,否則 用户无法登陆PL/SQL;

3、给用户开通个别表权限

   Grant select on tablename to username;

4. 刪除用戶權限命令:
Revoke
create table,select any table,update any table,insert any table,delete
any table,sysdab
From user_name
5、 查詢用戶權限:
显示已被授予的全部对象特权:Select * From sys.dba_sys_privs
显示已被授予權限的用戶特权:
Select * From sys.dba_sys_privs a Where A.grantee='username';
6、查詢當前運行的SQL 語句
Select a.machine, a.program, B.piece, b.sql_text
From v$session a, v$sqltext b, v$process c
Where a.paddr = c.addr
and a.sql_hash_value = b.hash_value
Order by B.piece;

7、移除不用的用户

  Drop uses username cascade;

/***************************************************************************************************************************/

创建表空间语句:
create tablespace train_tab
datafile 'E:\oracle\train\train_tab.def' size 100M --生成数据文件并定义文件大小
autoextend on next 10M maxsize unlimited logging    --设置自动扩展
extent management local autoallocate
segment space management auto;

删除表空间语句:
DROP TABLESPACE MOF_TEMP INCLUDING CONTENTS AND DATAFILES;

授权给用户resource和connect权限

查看权限
授权表给用户:
GRANT SELECT ON student TO U1

授权表给所有用户:
GRANT SELECT ON SC TO PUBLIC

收回指定表权限:
REVOKE SELECT ON SC FROM student

收回所有用户权限:
REVOKE SELECT ON SC FROM PUBLIC

查看表空间大小(实际大小):
select tablespace_name,sum(bytes)/1024/1024 from dba_segments group by tablespace_name

如果DBLINK创建为public的,则所有该数据库的用户都可以看到这个dblink,并且即使这个用户的权限是resource的也有访问这个dblink所对应数据库或表空间的权限,并且权限为最大权限。
如果用户权限为resource的权限则无法创建dblink。也就是说resource权限的用户只能访问public的dblink并同时拥有最大权限,但自身不可以创建dblink访问其他数据库或表空间。

修改表空间名称:
alter tablespace tongzhan rename to elms_ly_tab
如果我们要导入不同表空间的dmp文件,可以先创建一个与原表空间名、用户名相同的环境(在创建表空间,生成表空间文件时,需要直接改为正确的名称),然后先把数据导入。最后把用户名及表空间名修改成你想要的即可。

查数据库表空间信息:
select file_id,tablespace_name,file_name,bytes/1024/1024 MB from DBA_DATA_FILES;