Oracle扩展表空间
2022/8/16 2:26:00
本文主要是介绍Oracle扩展表空间,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
查看表空间使用情况
--表空间巡查(按GB)
select a.tablespace_name as "表空间名","最大空间(GB)","占用空间(GB)",("占用空间(GB)"-"剩余空间(GB)") as "使用空间(GB)",round(("占用空间(GB)"-"剩余空间(GB)")/"占用空间(GB)"*100,2) as "使用率1(%)"
,round(("占用空间(GB)"-"剩余空间(GB)")/"最大空间(GB)"*100,2) as "使用率2(%)"
from (select tablespace_name,sum(decode(AUTOEXTENSIBLE,'NO',bytes,'YES',maxbytes))/1024/1024/1024 as "最大空间(GB)",sum(bytes)/1024/1024/1024 as "占用空间(GB)" from dba_data_files group by tablespace_name) a
,(select tablespace_name,sum(bytes)/1024/1024/1024 as "剩余空间(GB)" from dba_free_space group by tablespace_name) b
where a.tablespace_name=b.tablespace_name order by 6 desc;
查单个表空间情况
select df.BYTES/1024/1024/1024,df.* from dba_data_files df where df.TABLESPACE_NAME='CPOE_DATA'
表空间扩展
--表空间扩展方法,单位M。对已存在表空间数据文件设置新的大小
alter database datafile '指定表空间数据文件' resize 新的尺寸
-- 示例,单位M
alter database datafile '/vdb2/service/oracle/data/oracle/oradata/orcl/user04.dbf' resize 32736m
如果报错:ORA-01144: File size (5242880 blocks) exceeds maximum of 4194303 blocks
那就是超出最大限制了,如果此时的表空间已经最大化了,建议新增一个对应表空间的数据文件并设定大小。
由于Oracle的Rowid中使用22位来代表Block号,这22位最多只能代表2^22-1(4194303)个数据块,而在我们一般情况下使用的数据块大小为8k,所以数据文件的理论大小最大为: 31.9999924G
新增数据文件
--新增表空间
alter tablespace '表空间名称' add datafile '表空间位置' size '容量大小';
--示例
alter tablespace mytable01 add datafile '/vdb2/service/oracle/data/oracle/oradata/orcl/users06.dbf' size 32736m;
这篇关于Oracle扩展表空间的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23增量更新怎么做?-icode9专业技术文章分享
- 2024-11-23压缩包加密方案有哪些?-icode9专业技术文章分享
- 2024-11-23用shell怎么写一个开机时自动同步远程仓库的代码?-icode9专业技术文章分享
- 2024-11-23webman可以同步自己的仓库吗?-icode9专业技术文章分享
- 2024-11-23在 Webman 中怎么判断是否有某命令进程正在运行?-icode9专业技术文章分享
- 2024-11-23如何重置new Swiper?-icode9专业技术文章分享
- 2024-11-23oss直传有什么好处?-icode9专业技术文章分享
- 2024-11-23如何将oss直传封装成一个组件在其他页面调用时都可以使用?-icode9专业技术文章分享
- 2024-11-23怎么使用laravel 11在代码里获取路由列表?-icode9专业技术文章分享
- 2024-11-22怎么实现ansible playbook 备份代码中命名包含时间戳功能?-icode9专业技术文章分享