Oracle表空间小知识

    技术2022-05-11  113

    Oracle表空间,底层以data_file文件形式存放,可以定义一个数据库能打开多少个数据文件,一个表空间可以有1到多个数据文件,一个数据文件只能隶属于一个表空间。

             见表时:

    1、指定表空间 2、指定扩展大小

    普通表只能建在一个表空间,分区表可以建在多个表空间上。

     

    delete只能删除数据,还占着表空间,用truncate命令,但truncate没有条件。

     

    如何将表移动表空间?ALTER TABLE TABLE_NAME MOVE TABLESPACE_NAME;

     

    如何将索引移动表空间?ALTER INDEX INDEX_NAME REBUILD TABLESPACE TABLESPACE_NAME;

     

    查询表空间信息?SELECT * FROM DBA_DATA_FILES;

     

    如何查看各个表空间占用磁盘情况?SQL> col tablespace format a20SQL> selectb.file_id 文件ID号,b.tablespace_name 表空间名,b.bytes 字节数,(b.bytes-sum(nvl(a.bytes,0))) 已使用,sum(nvl(a.bytes,0)) 剩余空间,sum(nvl(a.bytes,0))/(b.bytes)*100 剩余百分比from dba_free_space a,dba_data_files bwhere a.file_id=b.file_idgroup by b.tablespace_name,b.file_id,b.bytesorder by b.file_id

     

    事务要求的回滚段空间不够,表现为表空间用满(ORA-01560错误),回滚段扩展到达参数MAXEXTENTS的值(ORA-01628)的解决办法.向回滚段表空间添加文件或使已有的文件变大;增加MAXEXTENTS的值。

     

    如何监控表空间的I/O 比例?select B.tablespace_name name,B.file_name "file",A.phyrds pyr,A.phyblkrd pbr,A.phywrts pyw, A.phyblkwrt pbwfrom v$filestat A, dba_data_files Bwhere A.file# = B.file_idorder by B.tablespace_name;

     

    如何知道表在表空间中的存储情况?select segment_name,sum(bytes),count(*) ext_quanfrom dba_extentswhere tablespace_name='&tablespace_name' and segment_type='TABLE'group by tablespace_name,segment_name;

     

    如何知道索引在表空间中的存储情况?select segment_name,count(*)from dba_extents where segment_type='INDEX' and owner='&owner'group by segment_name;

     

     

    DBA_TABLESPACES所有表空间的描述.

    V$TABLESPACE控制文件中表空间的信息

     

    V$TEMP_EXTENT_MAP显示所有临时表空间的每一个单元的状态信息.

     

    V$TEMP_SPACE_HEADER显示每一个临时表空间中每一个文件的聚集信息,涉及每个空间首部中当前使用多少空间和有多少自由空间.

     

    USER_TABLESPACES可存取的表空间的描述.

     

    USER_TS_QUOTAS用户的表空间限额.

    DATABASE_PROPERTIESORACLE应用常见傻瓜问题1000问列出当前缺省的临时表空间的名称.

     

     

    DBA_FREE_SPACE列出所有表空间中的空闲分区.

     

    DBA_FREE_SPACE_COALESCED包含表空间中合并空间的统计数据

     

    DBA_TS_QUOTAS所有用户的表空间的限额.

     

    DBA_UNDO_EXTENTS在撤消表空间的每个范围的提交时间.

     

    USER_FREE_SPACE用户可存取表空间中的空闲范围.

     

    TS_PITR_CHECK提供可能禁止表空间及时点恢复继续的依赖或约束信息

     

    TS_PITR_OBJECTS_TO_BE_DROPPED列出作为执行表空间及时点恢复的结果而丢失的所有对象.


    最新回复(0)