DBA_1

    荡气回肠,只为最美好的平凡; 

    追求卓越,只为实现平凡中的伟大;

    奋力拼搏,只为彰显希望的火苗;

   

                                                                                                          

dba_extents是Oracle数据库中的一个数据字典视图,用于存储数据库中范围(extent)的相关信息。范围是数据库中分配给段(segment)的一组连续的数据块。 ### 定义 dba_extents视图得到extent的信息不是通过普通的存储在数据库中的基表获得,而是从x$相关的表获得(x$表是数据库启动时候在内存中创建,不存在数据文件中)。关于extent的信息都已经记录在了segment header的block中,可通过dump该block记录的rdba信息,转化为file_id和block_id [^1]。 ### 用途 - **查看范围信息**:可以查看数据库中各个段所分配的范围的详细信息,包括范围的大小、所在文件和块的位置等。 - **分析段空间使用情况**:通过dba_extents可以了解段的空间分配情况,判断段是否存在碎片问题。 - **排查不一致问题**:当dba_segments和dba_extents中统计段空间大小不一致时,dba_extents中记录的分配给段的空间值才是可信的值,可用于发现和解决此类不一致问题 [^2]。 - **定位对象**:根据file#和block#找到对象,可使用dba_extents视图进行查询 [^5]。 ### 使用方法 - **查看特定段的范围信息**:可以使用以下SQL语句查询特定段的范围信息。 ```sql SELECT bytes, blocks, extent_id FROM dba_extents WHERE segment_name = 'PROFILE' AND owner = 'NAP3'; ``` - **根据文件ID和块ID定位对象**:可以使用以下SQL语句根据文件ID和块ID找到对应的对象。 ```sql SELECT /*+ opt_param('_COMPLEX_VIEW_MERGING','false') opt_param('_PUSH_JOIN_PREDICATE','false') opt_param('_PUSH_JOIN_UNION_VIEW','false') */ owner, segment_name, segment_type FROM cdb_extents WHERE file_id = :P1 AND :P2 BETWEEN block_id AND block_id + blocks - 1; ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值