Oracle 学习之RMAN(十三)恢复实战--数据块修复
发表于:2024-11-22 作者:千家信息网编辑
千家信息网最后更新 2024年11月22日,在很多情况下,数据库只是某个数据文件的些许数据块发生损坏。这种情况,我们当然可是使用数据库恢复或者数据文件恢复的方式来解决问题。但是有点高射炮打蚊子的感觉。幸好RMAN提供了块级别的恢复。下面我们来演
千家信息网最后更新 2024年11月22日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安全错误
数据库的锁怎样保障安全
数据库学习方法
oarcel数据库建表建库
数据库 包
如何找英文数据库
数据库用于储存学习资料
计算机网络技术和影视的关系
数据库创建简单的多表查询例题
软件开发与应用需要什么
华为服务器和小米哪个好
太原笃行网络商城软件开发
网信河北网络安全宣传周答案
网络技术锁定犯人
税务工作网络安全
数据库表的导入导出
数据库查询2个表不同的
乐鑫互联网科技有限公司
网吧服务器开了没反应
呼市网络安全监察支队
惠州电商软件开发报价
金山区品牌软件开发值得推荐
漳平做小程序软件开发企业
模特大赛视频软件开发
如何建组织切片数据库
nec软件开发部
excel数据库查找并修改
我的世界没人玩的服务器手机版
国外未来数据库系统趋势
数据库撤出俄罗斯
网络安全的主要总结
微信好友数据库