为在用项目的oracle数据库增加表空间

由于历史原因,初期建表时全部使用认表空间“”users“”,后来随着表结构越来越多及数据量越来越大,发现表空间占用率已达到94%多,可通过以下语句查询出来:

SELECT a.tablespace_name "表空间名",total "表空间大小",free "表空间剩余大小",(total - free) "表空间使用大小",total / (1024 * 1024 * 1024) "表空间大小(G)",free / (1024 * 1024 * 1024) "表空间剩余大小(G)",(total - free) / (1024 * 1024 * 1024) "表空间使用大小(G)",round((total - free) / total,4) * 100 "使用率 %" 
FROM (SELECT tablespace_name,SUM(bytes) free 
FROM dba_free_space 
GROUP BY tablespace_name) a,(SELECT tablespace_name,SUM(bytes) total 
FROM dba_data_files 
GROUP BY tablespace_name) b 
WHERE a.tablespace_name = b.tablespace_name 

查询结果如下图:




在未停用任何应用程序情况下(注:增加表空间之前,将数据库做了完全备份,也是有点担心未关闭应用的情况下增加表空间后,会把数据库搞崩溃!!不过经测试,没什么事!),打开服务端的sqlplus,见下图:


增加表空间后,也没有重启oracle服务,看了看各个应用,貌似也没什么事!~~


//增加表空间对应的数据文件
 alter tablespace USERS add datafile 'F:\ORADATA\MYORA\USERS02.DBF' size 3000m;

上面语句的3000M貌似是物理文件的最大值。

注意:一个表空间可对应多个物理文件,但一个物理文件只会属于一个表空间。


//删除表空间对应的数据文件
 alter tablespace USERS drop datafile 'F:\ORADATA\MYORA\USERS02.DBF';

相关文章

Java Oracle 结果集是Java语言中处理数据库查询结果的一种方...
Java AES和Oracle AES是现代加密技术中最常使用的两种AES加密...
Java是一种广泛应用的编程语言,具备可靠性、安全性、跨平台...
随着移动互联网的发展,抽奖活动成为了营销活动中不可或缺的...
Java和Oracle都是在计算机领域应用非常广泛的技术,他们经常...
Java 是一门非常流行的编程语言,它可以运行于各种操作系统上...