`
wattone
  • 浏览: 40503 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

表空间查看以及表空间对象占用

阅读更多
查看表空间

dba_free_space数据库空余空间
dba_data_files数据库文件总占用
dba_tablespaces数据库表空间信息

select
a.a1 表空间名称,
c.c2 类型,
c.c3 区管理,
b.b2/1024/1024 表空间大小M,
(b.b2-a.a2)/1024/1024 已使用M,
substr((b.b2-a.a2)/b.b2*100,1,5) 利用率
from
(select  tablespace_name a1, sum(nvl(bytes,0)) a2 from dba_free_space group by tablespace_name) a,
(select tablespace_name b1,sum(bytes) b2 from dba_data_files group by tablespace_name) b,
(select tablespace_name c1,contents c2,extent_management c3  from dba_tablespaces) c
where a.a1=b.b1 and c.c1=b.b1;

----------------------------------

查看表空间中各对象的占用量

dba_segments 数据库段信息

select t.owner,
       t.segment_name,
       t.segment_type,
       partition_name,
       t.tablespace_name,
       t.blocks * 8 / 1024 sizem
  from dba_segments t
  where tablespace_name='xxxxxx'
order by t.blocks desc;
group by t.cp_id

-----------------------------------

查看tablespace对应的datafiles文件路径

select tablespace_name,file_name from dba_data_files
where tablespace_name='TABLESAPCE_NAME'

------------------------------------

增加表空间容量(默认初始100M,可扩展)
alter tablespace xxx add datafile 'xxx\xxx\xxx.dbf' size 100m

搜下资料,文件最大值与数据库block大小以及系统文件最大值有关,按照Oracle文档的描述,每个datafile的最大容量为(2^22-1)个block,即4194303个block,当前数据库的block大小是8k,也就是说最大的文件大小是32G,以Oracle的限制,如果要建普通的datafile,最大的大小就是 (2^22-1)*32K = 128G,注:Oracle最大支持block为32k。存在这个限制是因为Oracle的内部ROWID使用22位2进制数来存储不同的block号,所以22位最多代表(2^22-1)个block。oracle10g引入bigfile tablespace可以最大到128T,不过此时只允许创建一个datafile,而不允许再添加datafile。
分享到:
评论

相关推荐

    Oracle查看各表占用空间

    在Oracle数据库管理中,了解各个表所占用的空间大小对于优化存储、提升系统性能以及合理规划资源分配具有重要意义。本文将详细介绍如何通过SQL语句查询Oracle数据库中特定用户的所有表所占用的空间大小。 #### 1. ...

    查看MSSQL数据库每个表占用的空间大小 .txt

    它可以显示表或索引视图所占用的空间以及数据库当前使用的总空间。 ##### 基本语法: ```sql sp_spaceused [ [@objname = ] 'objname' ] [, [ @updateusage = ] 'updateusage' ] ``` - `[@objname = ] 'objname'...

    释放TEMP表空间占用硬盘空间

    在进行任何操作前,首先需要了解当前数据库的默认临时表空间以及其占用情况。这可以通过执行以下SQL查询来实现: 1. **查看默认临时表空间**: ```sql SELECT * FROM database_properties WHERE property_name = ...

    oracle定时删除表空间的数据并释放表空间

    适时清空回收站可以释放被删除对象占用的空间。 10. **数据归档和卸载**:对于不再频繁访问的历史数据,可以考虑归档或卸载到低成本的存储设备,既节省了表空间,又保持了数据的可访问性。 通过以上这些策略和技巧...

    db2表空间不足及处理

    2. 索引、视图、存储过程等对象的增加,占用了更多的表空间。 3. 数据库长时间运行,导致表空间碎片增加。 如何检查DB2表空间是否不足? 检查DB2表空间是否不足可以通过以下命令: ``` db2 => list tablespaces ...

    表 占用磁盘空间查询

    在数据库管理中,了解表占用的磁盘空间对于优化存储、提高查询效率以及进行合理的资源规划至关重要。SQL Server 提供了多种方法来获取这些信息,其中一种常见且有效的方法是使用自定义脚本来实现对表占用空间的查询...

    oracle表空间查看

    除了查看表空间级别的使用情况外,有时还需要知道具体到每个段的大小。这可以通过以下SQL语句实现: ```sql SQL> select segment_name, sum(bytes)/1024/1024 as size_mb 2 from user_extents 3 group by segment...

    oracle导入时表空间不一致解决方法

    ### Oracle导入时表空间不一致解决方法 在Oracle数据库管理中,经常会出现因表空间不一致而导致...在实际操作过程中,需要注意细节处理,尤其是表空间名称的替换以及权限的调整,这些都是保证数据迁移成功的关键因素。

    Oracle 表空间 收缩

    2. **移动表、索引等对象**:将block_id大于目标表空间大小的表、索引、分区表等对象移动到一个新的临时表空间中。 3. **收缩表空间**:在确保所有对象都已妥善处理后,执行收缩操作。 4. **移动对象回原表空间**:...

    Oracle的Temp表空间和UNDO表空间的处理

    通过以上介绍可以看出,在Oracle数据库中,正确管理和优化Temp表空间和UNDO表空间是非常重要的,尤其是对于那些执行大量排序、分组操作以及频繁进行事务处理的应用系统来说。合理利用Resize调整大小、替换原有表空间...

    查看当前数据库中每个表所占字节(空间)大小

    查看当前数据库中每个表所占字节(空间)大小

    DB2系统临时表空间过大引发的性能问题-contracted.doc

    7. **清理临时表空间**:定期清理不再使用的临时对象,释放空间。 通过上述步骤,可以逐步定位问题并找到相应的解决方案。在本案例中,通过分析和优化,最终成功解决了由于临时表空间过大导致的性能问题,使系统...

    计算一个Java对象占用字节数的方法

    为了内存对齐,Hotspot JVM会确保每个对象占用的总空间是8字节的倍数。如果对象的总大小不是8的倍数,那么就会添加填充字节以达到对齐要求。这有助于提高访问效率,因为CPU通常以固定大小的块(如8字节)进行内存...

    oracle 12c SYSAUX表空间过大

    然而,在某些情况下,这个任务可能过于频繁地运行,导致在SYSAUX表空间中积累了大量的顾问输出和相关对象,从而占用大量空间。 **解决方案** 解决SYSAUX表空间过大的问题有几种方法: 1. **调整统计信息顾问频率*...

    oracle数据库表空间监控实用脚本

    #### 四、查看表空间碎片程度(值在30以下表示碎片很多) **脚本:** ```sql SELECT tablespace_name, sum(bytes), sum(free), sum(free)*100/sum(bytes) FROM ( SELECT b.file_id file_ID, b.tablespace_name ...

    ORACLE表空间的回收脚本.rar

    - 回收可以释放被删除对象占用的空间,优化存储利用率,避免无谓的磁盘空间浪费。 3. **表空间回收方法** - **段压缩**:对表、索引等进行压缩,减少它们在表空间中的物理占用。 - **重分布数据**:通过移动对象...

    ORACLE SYSTEM表空间已满解决方案.docx

    2. **查看具体表的空间占用**: ```sql SELECT t.table_name, SUM(b.bytes) / (1024 * 1024) "Size MB" FROM dba_tables t, dba_segments s, dba_extents e, dba_blocks b WHERE t.table_name = s.segment_name ...

    Oracle数据库用户、表、表空间之间关系.doc

    每个模式对象都在某个表空间内占用一定的存储空间,这可以理解为文件夹中的文件,而文件夹代表数据文件,抽屉代表表空间,柜子代表整个数据库。 用户与表空间和数据文件之间的关系是松散的。用户并不直接拥有或控制...

    表在oracle和timesten里占用的空间相差如此之大

    标题与描述均提到了在Oracle和TimesTen数据库中,同一张表所占用的空间存在显著差异的问题,这引发了一个深入探讨的议题:不同数据库系统在数据存储机制上的差异及其对空间利用效率的影响。以下是对这一问题的详细...

    计算对象占用内存空间ObjectSize-master.zip

    在IT领域,尤其是在Java编程语言中,理解对象占用的内存空间是优化程序性能的重要环节。"计算对象占用内存空间ObjectSize-master.zip" 提供的工具可能是一个帮助开发者分析和估算对象在内存中占用大小的解决方案。...

Global site tag (gtag.js) - Google Analytics