5.Oracle杂记——数据字典dba_extents
5.Oracle杂记——数据字典dba_extents 视图dba_extents包含了数据库中所有分区的信息。 查看视图结构如下: sys@PDB1> desc dba_extents Name Null? Type ------------------------------------------------------------- ------------------------------------ OWNER VARCHAR2(128) SEGMENT_NAME VARCHAR2(128) PARTITION_NAME VARCHAR2(128) SEGMENT_TYPE VARCHAR2(18) TABLESPACE_NAME VARCHAR2(30) EXTENT_ID NUMBER FILE_ID NUMBER BLOCK_ID NUMBER BYTES NUMBER BLOCKS NUMBER RELATIVE_FNO NUMBER 其中: 注意:段是由区组成的。 OWNER 表示拥有者 SEGMENT_NAME:表示段名字 PARTITION_NAME:表示分区名字,如果没有分区则为空 SEGMENT_TYPE:表示段类型 TABLESPACE_NAME:表示表空间名字 EXTENT_ID: 区 的ID。 FILE_ID:区所在文件ID BLOCK_ID: 区所在块的ID BYTES: 该区的字节 BLOCKS : 该区的块数量 RELATIVE_FNO:相对文件ID 执行如下: sys@PDB1> select * from dba_extents wheresegment_name='CUSTOMER' and rownum <= 5; OWNER ---------------------------------------------------------------------------------------------------- SEGMENT_NAME ---------------------------------------------------------------------------------------------------- PARTITION_NAME ---------------------------------------------------------------------------------------------------- SEGMENT_TYPE TABLESPACE_NAME EXTENT_ID FILE_ID BLOCK_ID BYTES ------------------------------------------------ ---------- ---------- ---------- ---------- BLOCKS RELATIVE_FNO ---------- ------------ BENCHMARKSQL CUSTOMER TABLE TPCC 0 131424 65536 8 13 BENCHMARKSQL CUSTOMER TABLE TPCC 1 13 1432 65536 8 13 BENCHMARKSQL CUSTOMER TABLE TPCC 2 131440 65536 8 13 BENCHMARKSQL CUSTOMER TABLE TPCC 3 131448 65536 8 13 BENCHMARKSQL CUSTOMER TABLE TPCC 4 131456 65536 8 13 通过该视图,我们可以找到某个表段中具有多少个EXTENT,每个EXTENT属于哪个BLOCK,哪个FILE了。 因为存在FILE_ID,而在上篇中的DBA_DATA_FILES视图也存在FILE_ID的,所以,两个视图能够通过FILE_ID进行连接了。 从我们自己的查询中发现,每个EXTETN基本就是8个BLOCK数量,大小是65536个字节。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |