0

0

表空间正在热备份时关闭实例重启报错的重现和解决

php中文网

php中文网

发布时间:2016-06-07 16:10:06

|

1234人浏览过

|

来源于php中文网

原创

最近一个客户的库在OPEN时报错需要恢复,发现原因为当时一个表空间正在热备份--ALTER TABLESPACE TEST1 BEGIN BACKUP; 然后实例异常关闭(可能为ABORT或KILL SMON等进程,这里据说为存储直接关闭导致),然后重启时遇到此错误。在ORACLE 10.2.0.1及11.2.0.4版本

最近一个客户的库在OPEN时报错需要恢复,发现原因为当时一个表空间正在热备份-->ALTER TABLESPACE TEST1 BEGIN BACKUP; 然后实例异常关闭(可能为ABORT或KILL SMON等进程,这里据说为存储直接关闭导致),然后重启时遇到此错误。 在ORACLE 10.2.0.1及11.2.0.4版本中重现了此错误,在这两个版本中同样的情况但是报错信息不太一样,具体情况如下:

10.2.0.1.0 版本表空间正在热备份时关闭实例重启报错的重现和解决:

SQL> select * from v$version where rownum=1; BANNER ---------------------------------------------------------------- Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Prod 查看此时数据文件的状态: SQL> select tablespace_name,STATUS from dba_tablespaces; set linesize 200 set pagesize 200 col file_name for a50 select file_name,tablespace_name,status from dba_data_files;
TABLESPACE_NAME STATUS ------------------------------ --------- SYSTEM ONLINE UNDOTBS ONLINE SYSAUX ONLINE TEMPTS1 ONLINE TEMP1 ONLINE TEMP2 ONLINE EXAMPLE ONLINE INDX ONLINE TOOLS ONLINE USERS ONLINE OLTP ONLINE REGISTRATION ONLINE TEST1 ONLINE TEST2 ONLINE TEST3 ONLINE 15 rows selected. SQL> SQL> SQL> SQL> FILE_NAME TABLESPACE_NAME STATUS -------------------------------------------------- ------------------------------ --------- /u01/app/PROD/disk1/system01.dbf SYSTEM AVAILABLE /u01/app/PROD/disk1/undotbs01.dbf UNDOTBS AVAILABLE /u01/app/PROD/disk1/sysaux01.dbf SYSAUX AVAILABLE /u01/app/PROD/disk1/example.dbf EXAMPLE AVAILABLE /u01/app/PROD/disk1/indx.dbf INDX AVAILABLE /u01/app/PROD/disk1/tools.dbf TOOLS AVAILABLE /u01/app/PROD/disk1/users.dbf USERS AVAILABLE /u01/app/PROD/disk1/oltp.dbf OLTP AVAILABLE /u01/app/PROD/disk1/REGISTRATION.dbf REGISTRATION AVAILABLE /u01/app/PROD/disk1/test1.dbf TEST1 AVAILABLE /u01/app/PROD/disk1/test2.dbf TEST2 AVAILABLE /u01/app/PROD/disk1/test3.dbf TEST3 AVAILABLE 12 rows selected. ########################################################3

-->发出热备份表空间的命令:

SQL> ALTER TABLESPACE TEST1 BEGIN BACKUP; Tablespace altered. -->查询此时数据文件状态: SQL> select tablespace_name,STATUS from dba_tablespaces; TABLESPACE_NAME STATUS ------------------------------ --------- SYSTEM ONLINE UNDOTBS ONLINE SYSAUX ONLINE TEMPTS1 ONLINE TEMP1 ONLINE TEMP2 ONLINE EXAMPLE ONLINE INDX ONLINE TOOLS ONLINE USERS ONLINE OLTP ONLINE REGISTRATION ONLINE TEST1 ONLINE TEST2 ONLINE TEST3 ONLINE 15 rows selected. SQL> set linesize 200 SQL> set pagesize 200 SQL> col file_name for a50 SQL> select file_name,file_id,tablespace_name,status from dba_data_files;
FILE_NAME FILE_ID TABLESPACE_NAME STATUS -------------------------------------------------- ---------- ------------------------------ --------- /u01/app/PROD/disk1/system01.dbf 1 SYSTEM AVAILABLE /u01/app/PROD/disk1/undotbs01.dbf 2 UNDOTBS AVAILABLE /u01/app/PROD/disk1/sysaux01.dbf 3 SYSAUX AVAILABLE /u01/app/PROD/disk1/example.dbf 4 EXAMPLE AVAILABLE /u01/app/PROD/disk1/indx.dbf 5 INDX AVAILABLE /u01/app/PROD/disk1/tools.dbf 6 TOOLS AVAILABLE /u01/app/PROD/disk1/users.dbf 7 USERS AVAILABLE /u01/app/PROD/disk1/oltp.dbf 8 OLTP AVAILABLE /u01/app/PROD/disk1/REGISTRATION.dbf 9 REGISTRATION AVAILABLE /u01/app/PROD/disk1/test1.dbf 10 TEST1 AVAILABLE /u01/app/PROD/disk1/test2.dbf 11 TEST2 AVAILABLE /u01/app/PROD/disk1/test3.dbf 12 TEST3 AVAILABLE 12 rows selected. SQL> select * from v$backup; FILE# STATUS CHANGE# TIME ---------- ------------------ ---------- ------------------- 1 NOT ACTIVE 0 2 NOT ACTIVE 0 3 NOT ACTIVE 0 4 NOT ACTIVE 0 5 NOT ACTIVE 0 6 NOT ACTIVE 0 7 NOT ACTIVE 0 8 NOT ACTIVE 0 9 NOT ACTIVE 0 10 ACTIVE 195848 2014/11/11 22:12:07 11 NOT ACTIVE 0 12 NOT ACTIVE 0 12 rows selected. -->可以看到此时有一个数据文件处于ACTIVE状态,结合dba_data_files中信息,此文件属于下在热备份的TEST1表空间。 此时,新开一个会话,KILL掉SMON进程,或者使用SHUTDOWN ABORT命令关闭数据库。shutdown immediate关闭会提示如下: SQL> shutdown immediate; ORA-01149: cannot shutdown - file 10 has online backup set ORA-01110: data file 10: '/u01/app/PROD/disk1/test1.dbf' --此时ALERT日志提示 Tue Nov 11 22:50:55 2014 Shutting down instance: further logons disabled ###################################################

KILL实例进程,重新启动报错如下:

SQL> startup ORACLE instance started.
Total System Global Area 524288000 bytes Fixed Size 1220360 bytes Variable Size 159383800 bytes Database Buffers 360710144 bytes Redo Buffers 2973696 bytes Database mounted. ORA-01113: file 10 needs media recovery ORA-01110: data file 10: '/u01/app/PROD/disk1/test1.dbf'
ALERT日志中的相关信息: Tue Nov 11 22:15:44 2014 ALTER DATABASE OPEN ORA-1113 signalled during: ALTER DATABASE OPEN...
此时查看相关视图,10号数据文件--TEST1表空间的仍处于活动状态--: SQL> select * from v$backup where STATUS='ACTIVE';
FILE# STATUS CHANGE# TIME ---------- ------------------ ---------- ------------------- 10 ACTIVE 195848 2014/11/11 22:12:07 -->这里的时间是开始发出热备份命令BEGIN BACKUP的时间及当时SCN。

此时,可以使用两种命令来解决:

1.ALTER DATABASE RECOVER datafile 10; 2.ALTER TABLESPACE TEST1 END BACKUP; ##################################################### -->如下是解决及OPEN数据库及验证数据文件状态; SQL> ALTER DATABASE RECOVER datafile 10; Database altered. SQL> select * from v$backup where STATUS='ACTIVE'; no rows selected SQL> alter database open; Database altered. ALERT日志信息: Tue Nov 11 22:15:44 2014 ALTER DATABASE OPEN ORA-1113 signalled during: ALTER DATABASE OPEN... Tue Nov 11 22:17:35 2014 ALTER DATABASE RECOVER datafile 10 Tue Nov 11 22:17:35 2014 Media Recovery Start Tue Nov 11 22:17:35 2014 Recovery of Online Redo Log: Thread 1 Group 5 Seq 6 Reading mem 0 Mem# 0 errs 0: /u01/app/PROD/disk1/redo05.log Mem# 1 errs 0: /u01/app/PROD/disk2/redo05b.log Tue Nov 11 22:17:36 2014 Media Recovery Complete (PROD) Completed: ALTER DATABASE RECOVER datafile 10 检查数据库相关状态: SQL> select * from v$backup; FILE# STATUS CHANGE# TIME ---------- ------------------ ---------- ------------------- 1 NOT ACTIVE 0 2 NOT ACTIVE 0 3 NOT ACTIVE 0 4 NOT ACTIVE 0 5 NOT ACTIVE 0 6 NOT ACTIVE 0 7 NOT ACTIVE 0 8 NOT ACTIVE 0 9 NOT ACTIVE 0 10 NOT ACTIVE 195848 2014/11/11 22:12:07 11 NOT ACTIVE 0 12 NOT ACTIVE 0 12 rows selected.
SQL> select tablespace_name,STATUS from dba_tablespaces; set linesize 200 TABLESPACE_NAME STATUS ------------------------------ --------- SYSTEM ONLINE UNDOTBS ONLINE SYSAUX ONLINE TEMPTS1 ONLINE TEMP1 ONLINE TEMP2 ONLINE EXAMPLE ONLINE INDX ONLINE TOOLS ONLINE USERS ONLINE OLTP ONLINE REGISTRATION ONLINE TEST1 ONLINE TEST2 ONLINE TEST3 ONLINE 15 rows selected. SQL> SQL> set pagesize 200 SQL> col file_name for a50 SQL> select file_name,file_id,tablespace_name,status from dba_data_files;
FILE_NAME FILE_ID TABLESPACE_NAME STATUS -------------------------------------------------- ---------- ------------------------------ --------- /u01/app/PROD/disk1/system01.dbf 1 SYSTEM AVAILABLE /u01/app/PROD/disk1/undotbs01.dbf 2 UNDOTBS AVAILABLE /u01/app/PROD/disk1/sysaux01.dbf 3 SYSAUX AVAILABLE /u01/app/PROD/disk1/example.dbf 4 EXAMPLE AVAILABLE /u01/app/PROD/disk1/indx.dbf 5 INDX AVAILABLE /u01/app/PROD/disk1/tools.dbf 6 TOOLS AVAILABLE /u01/app/PROD/disk1/users.dbf 7 USERS AVAILABLE /u01/app/PROD/disk1/oltp.dbf 8 OLTP AVAILABLE /u01/app/PROD/disk1/REGISTRATION.dbf 9 REGISTRATION AVAILABLE /u01/app/PROD/disk1/test1.dbf 10 TEST1 AVAILABLE /u01/app/PROD/disk1/test2.dbf 11 TEST2 AVAILABLE /u01/app/PROD/disk1/test3.dbf 12 TEST3 AVAILABLE



#############################################################################################

11.2.0.4.0 版本表空间正在热备份时关闭实例重启报错的重现和解决:

-->11G此问题的报错信息比10G更清楚,根据报错信息就有了基本的判断方向。 SQL> select * from v$backup; FILE# STATUS CHANGE# TIME ---------- ------------------ ---------- ------------------- 1 NOT ACTIVE 0 2 NOT ACTIVE 0 3 NOT ACTIVE 0 4 NOT ACTIVE 0 5 NOT ACTIVE 0 6 NOT ACTIVE 1149659 2014/11/11 21:49:55 7 NOT ACTIVE 0 7 rows selected. SQL> select sysdate from dual; SYSDATE ------------------- 2014/11/11 22:05:26 SQL> ALTER TABLESPACE TEST1 BEGIN BACKUP; Tablespace altered.

SHUTDOWN ABORT实例并重启:

SQL> startup ORACLE instance started. Total System Global Area 418484224 bytes Fixed Size 1365040 bytes Variable Size 322964432 bytes Database Buffers 88080384 bytes Redo Buffers 6074368 bytes Database mounted. ORA-10873: file 6 needs to be either taken out of backup mode or media recovered ORA-01110: data file 6: '/u01/app/oracle/oradata/bys1/test01.dbf' 此时ALERT日志的报错信息: Completed: ALTER DATABASE MOUNT Tue Nov 11 22:06:36 2014 ALTER DATABASE OPEN Errors in file /u01/app/oracle/diag/rdbms/bys1/bys1/trace/bys1_ora_3910.trc: ORA-10873: file 6 needs to be either taken out of backup mode or media recovered ORA-01110: data file 6: '/u01/app/oracle/oradata/bys1/test01.dbf' ORA-10873 signalled during: ALTER DATABASE OPEN... Tue Nov 11 22:06:36 2014 Checker run found 1 new persistent data failures Tue Nov 11 22:21:36 2014
SQL> select * from v$backup; FILE# STATUS CHANGE# TIME ---------- ------------------ ---------- ------------------- 1 NOT ACTIVE 0 2 NOT ACTIVE 0 3 NOT ACTIVE 0 4 NOT ACTIVE 0 5 NOT ACTIVE 0 6 ACTIVE 1171509 2014/11/11 22:05:40 7 NOT ACTIVE 0 7 rows selected.

END BACKUP或RECOVER DATAFILE即可

SQL> ALTER TABLESPACE TEST1 end BACKUP; Tablespace altered. ALERT日志: Tue Nov 11 23:00:56 2014 ALTER TABLESPACE TEST1 end BACKUP Completed: ALTER TABLESPACE TEST1 end BACKUP Tue Nov 11 23:01:23 2014 RECOVER DATAFILE时的相关日志: Tue Nov 11 21:51:02 2014 Checker run found 1 new persistent data failures Tue Nov 11 22:00:46 2014 ALTER DATABASE RECOVER datafile 6 Media Recovery Start Serial Media Recovery started Recovery of Online Redo Log: Thread 1 Group 3 Seq 48 Reading mem 0 Mem# 0: /u01/app/oracle/oradata/bys1/redo03.log Recovery of Online Redo Log: Thread 1 Group 1 Seq 49 Reading mem 0 Mem# 0: /u01/app/oracle/oradata/bys1/redo01.log Media Recovery Complete (bys1) Completed: ALTER DATABASE RECOVER datafile 6 Tue Nov 11 22:01:01 2014 alter database open

SQL> select * from v$backup; FILE# STATUS CHANGE# TIME ---------- ------------------ ---------- ------------------- 1 NOT ACTIVE 0 2 NOT ACTIVE 0 3 NOT ACTIVE 0 4 NOT ACTIVE 0 5 NOT ACTIVE 0 6 NOT ACTIVE 1171509 2014/11/11 22:05:40 7 NOT ACTIVE 0 7 rows selected.

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

WorkBuddy
WorkBuddy

腾讯云推出的AI原生桌面智能体工作台

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
chatgpt使用指南
chatgpt使用指南

本专题整合了chatgpt使用教程、新手使用说明等等相关内容,阅读专题下面的文章了解更多详细内容。

0

2026.03.16

chatgpt官网入口地址合集
chatgpt官网入口地址合集

本专题整合了chatgpt官网入口地址、使用教程等内容,阅读专题下面的文章了解更多详细内容。

0

2026.03.16

minimax入口地址汇总
minimax入口地址汇总

本专题整合了minimax相关入口合集,阅读专题下面的文章了解更多详细地址。

4

2026.03.16

C++多线程并发控制与线程安全设计实践
C++多线程并发控制与线程安全设计实践

本专题围绕 C++ 在高性能系统开发中的并发控制技术展开,系统讲解多线程编程模型与线程安全设计方法。内容包括互斥锁、读写锁、条件变量、原子操作以及线程池实现机制,同时结合实际案例分析并发竞争、死锁避免与性能优化策略。通过实践讲解,帮助开发者掌握构建稳定高效并发系统的关键技术。

7

2026.03.16

TypeScript类型系统进阶与大型前端项目实践
TypeScript类型系统进阶与大型前端项目实践

本专题围绕 TypeScript 在大型前端项目中的应用展开,深入讲解类型系统设计与工程化开发方法。内容包括泛型与高级类型、类型推断机制、声明文件编写、模块化结构设计以及代码规范管理。通过真实项目案例分析,帮助开发者构建类型安全、结构清晰、易维护的前端工程体系,提高团队协作效率与代码质量。

114

2026.03.13

Python异步编程与Asyncio高并发应用实践
Python异步编程与Asyncio高并发应用实践

本专题围绕 Python 异步编程模型展开,深入讲解 Asyncio 框架的核心原理与应用实践。内容包括事件循环机制、协程任务调度、异步 IO 处理以及并发任务管理策略。通过构建高并发网络请求与异步数据处理案例,帮助开发者掌握 Python 在高并发场景中的高效开发方法,并提升系统资源利用率与整体运行性能。

141

2026.03.12

C# ASP.NET Core微服务架构与API网关实践
C# ASP.NET Core微服务架构与API网关实践

本专题围绕 C# 在现代后端架构中的微服务实践展开,系统讲解基于 ASP.NET Core 构建可扩展服务体系的核心方法。内容涵盖服务拆分策略、RESTful API 设计、服务间通信、API 网关统一入口管理以及服务治理机制。通过真实项目案例,帮助开发者掌握构建高可用微服务系统的关键技术,提高系统的可扩展性与维护效率。

396

2026.03.11

Go高并发任务调度与Goroutine池化实践
Go高并发任务调度与Goroutine池化实践

本专题围绕 Go 语言在高并发任务处理场景中的实践展开,系统讲解 Goroutine 调度模型、Channel 通信机制以及并发控制策略。内容包括任务队列设计、Goroutine 池化管理、资源限制控制以及并发任务的性能优化方法。通过实际案例演示,帮助开发者构建稳定高效的 Go 并发任务处理系统,提高系统在高负载环境下的处理能力与稳定性。

65

2026.03.10

Kotlin Android模块化架构与组件化开发实践
Kotlin Android模块化架构与组件化开发实践

本专题围绕 Kotlin 在 Android 应用开发中的架构实践展开,重点讲解模块化设计与组件化开发的实现思路。内容包括项目模块拆分策略、公共组件封装、依赖管理优化、路由通信机制以及大型项目的工程化管理方法。通过真实项目案例分析,帮助开发者构建结构清晰、易扩展且维护成本低的 Android 应用架构体系,提升团队协作效率与项目迭代速度。

111

2026.03.09

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PHP开发基础之类与对象篇
PHP开发基础之类与对象篇

共13课时 | 2.1万人学习

千锋教育PHP高级语法视频教程
千锋教育PHP高级语法视频教程

共25课时 | 4.6万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号