Oracle创建表空间、创建用户并指定表空间、删除用户、授权

Oracle有默认表空间和临时表空间之分

1、创建临时表空间

create temporary tablespace pxjxgl_temp
tempfile 'D:\APP\ADMINISTRATOR\ORADATA\CSORCL\pxjxgl_temp.dbf'
size 200m
autoextend on
next 50m maxsize 2048m
extent management local;

其中pxjxgl_temp是你创建的临时表空间的名称,tempfile是临时表空间文件存储的路径

2、创建默认表空间

create tablespace HYZPINFO 
logging 
datafile 'C:\oracle\tablespeace\HYZPINFO.dbf' 
size 300m
autoextend on 
next 50m maxsize 2048m 
extent management local;

其中,HYZPINFO是默认表空间,datafile是指定默认表空间文件的存储路劲。

3、创建用户并指定表空间

create user pxjxgl_ywk identified by pxjxgl_ywk_mm
default tablespace pxjxgl
temporary tablespace pxjxgl_temp;

其中pxjxgl_ywk是创建的用户名,pxjxgl_ywk_mm是对应用户名的密码,pxjxgl是创建的用户使用的默认表空间,pxjxgl_temp是创建的用户使用的临时表空间。

4、数据库授权

grant connect to pxjxgl_ywk;
grant resource to pxjxgl_ywk;
grant create any procedure to pxjxgl_ywk;
grant create any view to pxjxgl_ywk;
grant debug connect session to pxjxgl_ywk;
grant unlimited tablespace to pxjxgl_ywk;

其中pxjxgl_ywk是授权的数据库名

如果需要删除Oracle用户,而这个用户正在被使用中,需要强制删除,则需要进行下面操作

5、查看用户的连接状态。查询出用的的sid和serial
select username,sid,serial# from v$session;

6、找到要删除用户的sid和serial并杀死。根据上面第5步获取到sid和serial,在下面语句中替换。
alter system kill session'$sid,$serial';

7、删除用户
drop user xxx cascade;

其中xxx位用户名

8、删除表空间

DROP tablespace 表空间名称;

猜你喜欢

转载自blog.csdn.net/qq_40386113/article/details/108666570