oracle 创建用户表

输入sqlplus

超级管理员登陆sys/  as sysdba

 创建临时表空间


CREATE TEMPORARY TABLESPACE test_temp
TEMPFILE 
'C:oracleproduct10.1.0oradataorcl est_temp01.dbf'
SIZE 32M
AUTOEXTEND 
ON
NEXT 32M MAXSIZE 2048M
EXTENT MANAGEMENT LOCAL;

创建用户表空间


CREATE TABLESPACE test_data
LOGGING
DATAFILE 
'C:ORACLEPRODUCT10.1.0ORADATAORCLTEST_DATA01.DBF' 
SIZE 32M 
AUTOEXTEND 
ON 
NEXT 32M MAXSIZE 2048M
EXTENT MANAGEMENT LOCAL;

创建用户并制定表空间


CREATE USER username IDENTIFIED BY password
DEFAULT TABLESPACE TEST_DATA
TEMPORARY TABLESPACE TEST_TEMP;

给用户授予权限


GRANT 
  
CREATE SESSION, CREATE ANY TABLECREATE ANY VIEW ,CREATE ANY INDEXCREATE ANY PROCEDURE,
  
ALTER ANY TABLEALTER ANY PROCEDURE,
  
DROP ANY TABLEDROP ANY VIEWDROP ANY INDEXDROP ANY PROCEDURE,
  
SELECT ANY TABLEINSERT ANY TABLEUPDATE ANY TABLEDELETE ANY TABLE
  
TO username;

将role这个角色授与username,也就是说,使username这个用户可以管理和使用role所拥有的资源

GRANT role TO username;


-----------------------------------------------查看用户权限---------------------------------------------------------

查看所有用户


SELECT * FROM DBA_USERS;
SELECT * FROM ALL_USERS;
SELECT * FROM USER_USERS;

查看用户系统权限


SELECT * FROM DBA_SYS_PRIVS;
SELECT * FROM USER_SYS_PRIVS;

查看用户对象或角色权限


SELECT * FROM DBA_TAB_PRIVS;
SELECT * FROM ALL_TAB_PRIVS;
SELECT * FROM USER_TAB_PRIVS;

查看所有角色


SELECT * FROM DBA_ROLES;

查看用户或角色所拥有的角色


SELECT * FROM DBA_ROLE_PRIVS;
SELECT * FROM USER_ROLE_PRIVS;

Oracle 使用时间长了, 新增了许多user 和tablespace. 需要清理一下

对于单个user和tablespace 来说, 可以使用如下命令来完成。

 步骤一:  删除user

drop user ×× cascade

说明: 删除了user,只是删除了该user下的schema objects,是不会删除相应的tablespace的。

步骤二: 删除tablespace

DROP TABLESPACE tablespace_name INCLUDING CONTENTS AND DATAFILES;

原文地址:https://www.cnblogs.com/Iyce/p/3759369.html