RMAN完全恢复丢失的数据文件
前提条件: 丢失前做过RMAN备份,全库的 控制文件、归档、联机日志文件完好无损 SYS@PRODgt;conn amy/amy Co
前提条件:
丢失前做过RMAN备份,全库的
控制文件、归档、联机日志文件完好无损
SYS@PROD>conn amy/amy
Connected.
AMY@PROD>create table t_amy02(b int);
Table created.
AMY@PROD>conn / as sysdba
Connected.
SYS@PROD>conn amy/amy
Connected.
AMY@PROD>insert into t_amy02 values(11);
1 row created.
AMY@PROD>commit;
Commit complete.
AMY@PROD>select * from t_amy02;
B
----------
11
-- 此时做rman的全库备份
-- 下面再继续插入数据
AMY@PROD>insert into t_amy02 values(12);
1 row created.
AMY@PROD>commit;
Commit complete.
AMY@PROD>select * from t_amy02;
B
----------
11
12
AMY@PROD>conn / as sysdba
Connected.
SYS@PROD>alter system switch logfile;
System altered.
SYS@PROD>conn amy/amy
Connected.
AMY@PROD>insert into t_amy02 values(13);
1 row created.
AMY@PROD>commit;
Commit complete.
AMY@PROD>select * from t_amy02;
B
----------
11
12
13
-- 以上三条记录,11在rman备份里,12在归档里,,13在联机日志里
-- 接着删除用户AMY的默认表空间TBS_AMY的数据文件'/u01/app/Oracle/oradata/PROD/disk1/tbs_amy01.dbf'
AMY@PROD>create table t_amy03(c int);
create table t_amy03(c int)
*
ERROR at line 1:
ORA-01116: error in opening database file 10
ORA-01110: data file 10: '/u01/app/oracle/oradata/PROD/disk1/tbs_amy01.dbf'
ORA-27041: unable to open file
Linux Error: 2: No such file or directory
Additional information: 3
--发现数据文件丢失后,需要做RMAN恢复
--如果不关机直接做restore会失败,报错ORA-19573,需要shutdown immediate然后再做RMAN restore and recover
RMAN> shutdown immediate
database closed
database dismounted
Oracle instance shut down
RMAN> startup mount
connected to target database (not started)
Oracle instance started
database mounted
Total System Global Area 314572800 bytes
Fixed Size 1219184 bytes
Variable Size 79693200 bytes
Database Buffers 230686720 bytes
Redo Buffers 2973696 bytes
RMAN> restore database;
Starting restore at 23-JAN-14
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=287 devtype=DISK
allocated channel: ORA_DISK_2
channel ORA_DISK_2: sid=285 devtype=DISK
channel ORA_DISK_1: starting datafile backupset restore
channel ORA_DISK_1: specifying datafile(s) to restore from backup set
restoring datafile 00002 to /u01/app/oracle/oradata/PROD/disk1/undotbs01.dbf
restoring datafile 00004 to /u01/app/oracle/oradata/PROD/disk1/example1.dbf
restoring datafile 00007 to /u01/app/oracle/oradata/PROD/disk1/users1.dbf
restoring datafile 00008 to /u01/app/oracle/oradata/PROD/disk1/oltp1.dbf
restoring datafile 00009 to /u01/app/oracle/oradata/PROD/disk1/tbs_tommie01.dbf
channel ORA_DISK_1: reading from backup piece /home/oracle/backup/PROD_0jouptng_1_1
channel ORA_DISK_2: starting datafile backupset restore
channel ORA_DISK_2: specifying datafile(s) to restore from backup set
restoring datafile 00001 to /u01/app/oracle/oradata/PROD/disk1/system001.dbf
restoring datafile 00003 to /u01/app/oracle/oradata/PROD/disk1/sysaux01.dbf
restoring datafile 00005 to /u01/app/oracle/oradata/PROD/disk1/indx1.dbf
restoring datafile 00006 to /u01/app/oracle/oradata/PROD/disk1/tools1.dbf
restoring datafile 00010 to /u01/app/oracle/oradata/PROD/disk1/tbs_amy01.dbf
channel ORA_DISK_2: reading from backup piece /home/oracle/backup/PROD_0iouptng_1_1
channel ORA_DISK_1: restored backup piece 1
piece handle=/home/oracle/backup/PROD_0jouptng_1_1 tag=TAG20140123T142135
channel ORA_DISK_1: restore complete, elapsed time: 00:00:56
channel ORA_DISK_2: restored backup piece 1
piece handle=/home/oracle/backup/PROD_0iouptng_1_1 tag=TAG20140123T142135
channel ORA_DISK_2: restore complete, elapsed time: 00:01:04
Finished restore at 23-JAN-14
RMAN> recover database;
Starting recover at 23-JAN-14
using channel ORA_DISK_1
using channel ORA_DISK_2
starting media recovery
media recovery complete, elapsed time: 00:00:03
Finished recover at 23-JAN-14
RMAN> alter database open;
database opened
AMY@PROD>conn / as sysdba
Connected.
SYS@PROD>conn amy/amy
ERROR:
ORA-03135: connection lost contact
ERROR:
ORA-24315: illegal attribute type
Warning: You are no longer connected to ORACLE.
@>conn / as sysdba
ERROR:
ORA-24313: user already authenticated
@>exit
[oracle@odd-oelr4u8 ~]$ sqlplus / as sysdba
SQL*Plus: Release 10.2.0.1.0 - Production on Thu Jan 23 14:41:14 2014
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, Oracle Label Security, OLAP and Data Mining options
SYS@PROD>conn amy/amy
Connected.
AMY@PROD>select * from t_amy02;
select * from t_amy02
*
ERROR at line 1:
ORA-00376: file 10 cannot be read at this time
ORA-01110: data file 10: '/u01/app/oracle/oradata/PROD/disk1/tbs_amy01.dbf'
SYS@PROD>alter tablespace tbs_amy begin backup;
alter tablespace tbs_amy begin backup
*
ERROR at line 1:
ORA-01128: cannot start online backup - file 10 is offline
ORA-01110: data file 10: '/u01/app/oracle/oradata/PROD/disk1/tbs_amy01.dbf'
SYS@PROD>alter database datafile 10 online;
Database altered.
SYS@PROD>alter tablespace tbs_amy begin backup;
Tablespace altered.
SYS@PROD>alter tablespace tbs_amy end backup;
Tablespace altered.
SYS@PROD>conn amy/amy
Connected.
AMY@PROD>select * from t_amy02;
B
----------
11
12
13
-- 至此,完全恢复完成

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

Go语言是一种高效、简洁且易于学习的编程语言,因其在并发编程和网络编程方面的优势而备受开发者青睐。在实际开发中,数据库操作是不可或缺的一部分,本文将介绍如何使用Go语言实现数据库的增删改查操作。在Go语言中,我们通常使用第三方库来操作数据库,比如常用的sql包、gorm等。这里以sql包为例介绍如何实现数据库的增删改查操作。假设我们使用的是MySQL数据库。

Hibernate多态映射可映射继承类到数据库,提供以下映射类型:joined-subclass:为子类创建单独表,包含父类所有列。table-per-class:为子类创建单独表,仅包含子类特有列。union-subclass:类似joined-subclass,但父类表联合所有子类列。

HTML无法直接读取数据库,但可以通过JavaScript和AJAX实现。其步骤包括建立数据库连接、发送查询、处理响应和更新页面。本文提供了利用JavaScript、AJAX和PHP来从MySQL数据库读取数据的实战示例,展示了如何在HTML页面中动态显示查询结果。该示例使用XMLHttpRequest建立数据库连接,发送查询并处理响应,从而将数据填充到页面元素中,实现了HTML读取数据库的功能。

苹果公司最新发布的iOS18、iPadOS18以及macOSSequoia系统为Photos应用增添了一项重要功能,旨在帮助用户轻松恢复因各种原因丢失或损坏的照片和视频。这项新功能在Photos应用的"工具"部分引入了一个名为"已恢复"的相册,当用户设备中存在未纳入其照片库的图片或视频时,该相册将自动显示。"已恢复"相册的出现为因数据库损坏、相机应用未正确保存至照片库或第三方应用管理照片库时照片和视频丢失提供了解决方案。用户只需简单几步

如何在PHP中使用MySQLi建立数据库连接:包含MySQLi扩展(require_once)创建连接函数(functionconnect_to_db)调用连接函数($conn=connect_to_db())执行查询($result=$conn->query())关闭连接($conn->close())

PHP中处理数据库连接报错,可以使用以下步骤:使用mysqli_connect_errno()获取错误代码。使用mysqli_connect_error()获取错误消息。通过捕获并记录这些错误信息,可以轻松识别并解决数据库连接问题,确保应用程序的顺畅运行。

PHP是一种广泛应用于网站开发的后端编程语言,它具有强大的数据库操作功能,常用于与MySQL等数据库进行交互。然而,由于中文字符编码的复杂性,在处理数据库中文乱码时常常会出现问题。本文将介绍PHP处理数据库中文乱码的技巧与实践,包括常见的乱码原因、解决方法和具体的代码示例。常见的乱码原因数据库字符集设置不正确:数据库在创建时需选择正确的字符集,如utf8或u

在Golang中使用数据库回调函数可以实现:在指定数据库操作完成后执行自定义代码。通过单独的函数添加自定义行为,无需编写额外代码。回调函数可用于插入、更新、删除和查询操作。必须使用sql.Exec、sql.QueryRow或sql.Query函数才能使用回调函数。
