Oracle 学习之RMAN(十三)恢复实战--数据块修复
发表于:2024-11-19 作者:千家信息网编辑
千家信息网最后更新 2024年11月19日,在很多情况下,数据库只是某个数据文件的些许数据块发生损坏。这种情况,我们当然可是使用数据库恢复或者数据文件恢复的方式来解决问题。但是有点高射炮打蚊子的感觉。幸好RMAN提供了块级别的恢复。下面我们来演
千家信息网最后更新 2024年11月19日Oracle 学习之RMAN(十三)恢复实战--数据块修复
在很多情况下,数据库只是某个数据文件的些许数据块发生损坏。这种情况,我们当然可是使用数据库恢复或者数据文件恢复的方式来解决问题。但是有点高射炮打蚊子的感觉。幸好RMAN提供了块级别的恢复。下面我们来演示一下。
1. 创建一个表空间,大小小一点。
SQL> conn / as sysdbaConnected.SQL> create tablespace tbs_blkerr datafile '/u01/app/oracle/oradata/devdb/blkerr01.dbf' size 128K;Tablespace created.
2. 在这个表空间上创建一个表,并且装满数据。
SQL> create table emp_blk tablespace tbs_blkerr as select * from scott.emp;Table created.SQL> insert into emp_blk select * from scott.emp;14 rows created.SQL> /14 rows created.。。。。SQL> insert into emp_blk select * from scott.emp;insert into emp_blk select * from scott.emp*ERROR at line 1:ORA-01653: unable to extend table SYS.EMP_BLK by 8 in tablespace TBS_BLKERRSQL> commit;Commit complete.SQL> select count(*) from emp_blk; COUNT(*)---------- 686SQL>
3. 备份该表空间或者数据文件。
RMAN> backup datafile '/u01/app/oracle/oradata/devdb/blkerr01.dbf';Starting backup at 2015/07/09 10:30:11using channel ORA_DISK_1channel ORA_DISK_1: starting full datafile backup setchannel ORA_DISK_1: specifying datafile(s) in backup setinput datafile file number=00007 name=/u01/app/oracle/oradata/devdb/blkerr01.dbfchannel ORA_DISK_1: starting piece 1 at 2015/07/09 10:30:11channel ORA_DISK_1: finished piece 1 at 2015/07/09 10:30:12piece handle=/u01/app/oracle/fast_recovery_area/DEVDB/backupset/2015_07_09/o1_mf_nnndf_TAG20150709T103011_bsvq5mw9_.bkp tag=TAG20150709T103011 comment=NONEchannel ORA_DISK_1: backup set complete, elapsed time: 00:00:01Finished backup at 2015/07/09 10:30:12
4. 使用vi编辑数据文件blkerr01.dbf,对文件尾部做稍微的修改
SQL> shutdown immediateDatabase closed.Database dismounted.ORACLE instance shut down.SQL> startupORACLE instance started.Total System Global Area 839282688 bytesFixed Size 2233000 bytesVariable Size 553651544 bytesDatabase Buffers 281018368 bytesRedo Buffers 2379776 bytesDatabase mounted.ORA-01157: cannot identify/lock data file 7 - see DBWR trace fileORA-01110: data file 7: '/u01/app/oracle/oradata/devdb/blkerr01.dbf'RMAN> restore datafile 7;Starting restore at 2015/07/09 10:36:25using target database control file instead of recovery catalogallocated channel: ORA_DISK_1channel ORA_DISK_1: SID=20 device type=DISKchannel ORA_DISK_1: starting datafile backup set restorechannel ORA_DISK_1: specifying datafile(s) to restore from backup setchannel ORA_DISK_1: restoring datafile 00007 to /u01/app/oracle/oradata/devdb/blkerr01.dbfchannel ORA_DISK_1: reading from backup piece /u01/app/oracle/fast_recovery_area/DEVDB/backupset/2015_07_09/o1_mf_nnndf_TAG20150709T103011_bsvq5mw9_.bkpchannel ORA_DISK_1: piece handle=/u01/app/oracle/fast_recovery_area/DEVDB/backupset/2015_07_09/o1_mf_nnndf_TAG20150709T103011_bsvq5mw9_.bkp tag=TAG20150709T103011channel ORA_DISK_1: restored backup piece 1channel ORA_DISK_1: restore complete, elapsed time: 00:00:01Finished restore at 2015/07/09 10:36:27RMAN> recover datafile 7;Starting recover at 2015/07/09 10:36:40using channel ORA_DISK_1starting media recoverymedia recovery complete, elapsed time: 00:00:00Finished recover at 2015/07/09 10:36:41
此次修改破坏了文件的头部,发生了意外。(也可能是编辑datafile时,没有关闭数据库)我们先恢复数据文件。再次编辑文件。
此实验始终没有做成功,后续有时间再研究。
恢复的方法如下:
RMAN TARGET / BLOCKRECOVER DATAFILE 12 BLOCK 12;
数据
文件
数据库
空间
情况
意外
再次
只是
备份
大小
头部
尾部
感觉
方式
方法
时间
级别
蚊子
问题
高射炮
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
多媒体软件开发工具包括哪些
软件开发工具也被称为
网络技术专升本能报什么专业
电脑下载mv服务器失败
分库分表数据库集群
兴化市微讯网络技术工作室
人才库管理系统软件开发
如何研究app软件开发
计算机网络安全课后感
拨号服务器名称或地址怎么填
向青少年普及网络安全知识
数据仓库 数据库选型
数据库完整性对软件开发的启示
帝国cms 广告数据库
网络安全法的重要地位
北京爱投顾网络技术
暑假网络安全作业
前程无忧是叫前锦网络技术吗
流媒体服务器 srs
用户数据库是用户创建的数据库吗
反洗钱数据分析用什么数据库
互联网科技股有哪些
软件开发公司道融
安庆电商软件开发公司
由于数据库错误无法打开文件
广西源云软件开发公司
在郑州做软件开发工资待遇
网络安全宣传防范个人信息泄露
javaweb和软件开发
江苏便民平台软件开发系统