Oracle 临时表空间是Oracle数据库的重要组成部分,尽管该部分并没有cont体系结构上得以展现,但其重要地位也是不容忽视的。尤其是
对于大型的频繁操作,如创建索引,排序等等都需要在临时表空间完成来减少内存的开销。当然对于查询性能要求较高的应尽可能的避免在磁盘
上完成这些操作。本文主要描述的是临时表空间的管理与受损恢复。
一、临时表空间的特性与注意事项
1.特性
用户存储临时数据的表空间
临时数据通常只在一个数据库会话期间内存在的数据,分为两种形式,排序数据和全局临时表
临时数据不会被写入存储永久对象的普通表空间内,而是存储在临时表空间的临时段中
临时表空间临时性导致不需要备份该类型的表空间,RMAN也不支持对临时表空间的备份
对于临时数据的处理,不会生成重做,也不会生成撤销数据
临时表空间的数据文件不能置为只读、不能重命名
监时表空间的数据文件的日志方式总是NOLOGGING
使用临时表空间的主要操作
CREATE INDEX,ALTER INDEX ...REBUILD,ORDER BY,GROUP BY,DISTINCT,UNION,INTERSECT,MINUS,SORT-MERGER,JOIN,ANALYZE
2.临时表空间使用的注意事项
a. 每个用户都有一个缺省的临时表空间,对于临时表空间使用较高的系统,建议将临时表空间数据文件分布到不同的磁盘
b. 对于大型操作频繁,(大型查询,大型分类查询,大型统计分析等),应指定单独的临时表空间,以方便管理
c. 分配用户单独临时表空间,一般是针对大型产品数据库,OLTP数据库,数据库仓库
d. 对于小型产品不需要单独制定临时表空间,使用默认临时表空间
e. 对于临时表空间建议关闭自动扩展功能,避免过度扩展所致的空间压力
关于临时表空间的创建与管理请参考:Oracle 表空间与数据文件
二、临时表空间的管理
1. 查看缺省的临时表空间
2.查看临时表空间的大小及位置
3. 临时表文件大小和已使用空间
4. 查看当前临时表使用空间大小与正在占用临时表空间的sql语句
3. 修改默认的临时表空间
alter database default temporary tablespace tablespace_name;
4. 对于过度使用临时表空间,在允许的情况下,可以杀掉其session
alter system kill session 'sid,serial#';
三、临时表空间故障
前面已提到,临时表空间不需要备份,如果对临时表空间备份将收到错误提示
临时表空间出错的错误提示(位于告警日志中alert_orcl.log)
Errors in file /u01/app/oracle/admin/orcl/bdump/orcl_dbw0_2230.trc:
ORA-01186:file 3 failed verification tests
ORA-01157:cannot identify/lock data file 3 - see DBWR trace file
ORA-01110:data file 3:'/u01/app/oracle/oradata/orcl/temp01.dbf'
四、还原受损的临时表空间
1. 在session 1中删除临时表空间的数据文件
2. 在session 2中执行排序查询,提示临时数据文件错误
3. 在session 1中为临时表空间增加数据文件
4. 在session 2中继续执行排序操作,此次执行成功
5. 查询临时数据文件状态及文件存在性
6. 清除控制文件内记录的不存在的临时文件信息
7. 基于表空间级别的恢复操作(下面给出主要步骤,不在演示)
a. 创建一个新的临时表空间
b. 使用alter database 将用户切换到新的临时表空间,即设置新的默认的临时表空间
c. 删除受损的临时表空间
分享到:
相关推荐
非系统表空间包括 UNDO 表空间、临时表空间和用户表空间等。 三、表空间管理方式 表空间管理方式有字典管理方式和本地管理方式两种。字典管理方式使用数据字典来管理存储空间的分配,而本地管理方式将区的分配和...
Oracle认证分类模拟题8涉及到的是Oracle数据库管理的相关知识,涵盖了口令文件恢复、控制文件备份与恢复、数据库恢复策略、临时表空间管理以及数据库在新主机上的迁移等多个方面。以下是这些知识点的详细解释: 1. ...
6. **给临时表空间增加临时文件**:由于临时文件的创建没有包含在创建控制文件的脚本中,因此需要手动为临时表空间增加临时文件,否则执行某些操作时可能会出现异常。 ```sql ALTER TABLESPACE "TEMP" ADD TEMP...
在SQL Server数据库管理系统中,TempDB是一个非常重要的系统数据库,它用于存储所有用户的临时对象,如临时表、存储过程中的中间结果以及并行查询的工作空间。当TempDB出现问题,如描述中提到的故障情况,可能导致...
8.7.3 调整与监视撤销表空间 295 8.7.4 创建和管理撤销表空间 297 8.8 本章知识点回顾 297 8.9 自测题 299 8.10 自测题答案 301 第9章 使用SQL检索、限制和排序数据 305 9.1 列出SQL SELECT语句的功能 306 ...
8.7.3 调整与监视撤销表空间 295 8.7.4 创建和管理撤销表空间 297 8.8 本章知识点回顾 297 8.9 自测题 299 8.10 自测题答案 301 第9章 使用SQL检索、限制和排序数据 305 9.1 列出SQL SELECT语句的功能 306 ...
- **临时文件(Tempfiles)**:属于临时表空间的一部分,用于存储临时表和索引的操作结果,例如排序和汇总等临时性数据。临时文件不保存数据的永久性记录,当会话结束或操作完成时,其中的数据会被释放。 - **重做...
本主题主要关注如何恢复受损或丢失的NTFS结构。 NTFS在设计上提供了许多高级特性,如文件权限管理、事务日志、磁盘配额、文件加密(EFS)、磁盘空间管理(MFT)等。然而,由于硬件故障、软件错误或病毒攻击,NTFS...
- **SYSOPER**:权限较低,可以执行数据库维护任务,但不能管理用户和表空间等。 #### 17. 数据库的状态及其特点 - **NOMOUNT**: 数据库未启动,不能执行任何操作。 - **MOUNT**: 数据库已启动,可以进行结构管理...
10. **数据清理**:最后,仪表可能会清除临时文件和日志,释放存储空间。 文件中的"升级流程图2019-12-30.vsd"很可能是Visio绘制的流程图表,详细展示了这些步骤,有助于开发者理解并实施仪表的OTA升级过程。 综上...
`cleanmgr` 命令用于启动磁盘清理工具,帮助用户释放硬盘空间,删除临时文件、系统缓存等不必要的文件。 #### 2. 计算机管理:compmgmt.msc 通过 `compmgmt.msc` 可以打开计算机管理控制台,进行硬件配置、服务管理...
幸运的是,由于控制文件和数据文件均未受损,数据库能够在重启后自动完成恢复过程。根据后续的检查结果来看,数据库的状态是良好的。然而,关于这两次OS重启的具体原因,客户方仍在进一步调查之中,尚未得出确切结论...
使用该命令可以清理硬盘空间,删除临时文件和其他不再需要的数据。 12. **net start messenger / net stop messenger** - 启动/停止消息服务 控制Windows消息服务的状态,通常用于解决不必要的系统通知问题。 ...
该方法适用于只有部分文件受损的情况,只需对损坏的部分进行恢复。 文章继续介绍了制定备份策略时需要考虑的几个方面: 1. 备份内容:需要根据数据的重要程度来决定哪些数据需要备份。例如,系统数据库(如master和...
可以帮助用户释放硬盘空间,通过删除临时文件、系统日志等不必要的数据来优化系统性能。 7. **cliconfg**:SQL Server客户端网络实用程序。用于配置SQL Server客户端网络连接属性,便于与数据库服务器进行通信。 ...
`cleanmgr`命令用于启动磁盘清理工具,该工具可以帮助用户释放硬盘空间,通过删除临时文件、缓存和其他不再需要的数据来优化磁盘性能。 #### net start messenger - 启动消息服务 `net start messenger`命令用于...
- 管理磁盘空间。 ### 15. dfrg.msc (磁盘碎片整理程序) - **简介**:磁盘碎片整理程序用于优化磁盘文件系统的结构。 - **用途**: - 整理磁盘碎片。 - 提高磁盘读写速度。 ### 16. devmgmt.msc (设备管理器) ...