您现在的位置是:网站首页> 编程资料编程资料
Oracle数据库空间满了进行空间扩展的方法_oracle_
2023-05-27
413人已围观
简介 Oracle数据库空间满了进行空间扩展的方法_oracle_
在管理软件应用中,常常会出现数据库空间满了的问题,导致管理软件不效能出现问题或者甚至不能使用。当这种情况出现了该怎么办呢?下面就介绍下方法
方法/步骤如下所示:
1.查询用户对应的表空间,我们可以看到针对不同的数据库用户Oracle
select username, default_tablespace, temporary_tablespace from dba_users;

2.查询用户的对应的数据文件,以及数据文件大小
select tablespace_name, file_id, file_name, round(bytes/(1024*1024),0) total_space from dba_data_files order by tablespace_name;

3.根据1.2 用户对应的表空间,以及表空间的大小,可以在通过下述语句查看目前使用百分比,如果所用空间不再下述查询范围内,则证明此空间已经满了,没有剩余量的空间在下面的SQL中没有展示,我们可以看到有一个空间已经到了95%
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 ;

4.此时我们执行空间扩增语句。把刚才使用率95%空间从1800M扩增到3000M
alter database datafile '/u2/oracle/PLM_SD_data' resize 3000m
扩增成功后如下图所示

5.此时在执行空间使用率查询语句得出如下的结果,可以看到空间扩增成功。

6.最后我们在通过SQL语句查询一下空间是不是变成了3000M
当然为了防止空间不够,导致异常,还可以设置空间自动延展。但是本人不太建议使用此功能,因为有可能导致空间的无限蔓延。

总结
以上所述是小编给大家介绍的Oracle数据库空间满了进行空间扩展的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
相关内容
- Oracle复合索引与空值的索引使用问题小结_oracle_
- Oracle密码过期如何取消密码180天限制及密码180天过期,账号锁住的问题_oracle_
- JDBC Oracle执行executeUpdate卡死问题的解决方案_oracle_
- oracle中where 子句和having子句中的区别介绍_oracle_
- Oracle查询当前的crs/has自启动状态实例教程_oracle_
- oracle中的greatest 函数和 least函数示例代码_oracle_
- ORACLE中关于表的一些特殊查询语句_oracle_
- ORACLE中查找定位表最后DML操作的时间小结_oracle_
- Orancle的SQL语句之多表查询和组函数_oracle_
- Oracle中定义以及使用同义词的方法_oracle_
