ASM存储恢复所有文件.docx
文本预览下载声明
Oracle一进强调:一旦数据库的物理结构发生了变化比如添加、删除数据文件,就应该立即做一个完全备份。如果没有这么做该如何进行恢复时就容易遇到下面的问题:下面的演示事故发生的过程,这与上一次给Shirly解决的问题有点类似,但由于是基于ASM存储之后,略有不同:1、查看数据库现有文件,可以看到使用了ASM存储SQL select name from v$datafile;? ?NAME? -----------------------------------------------------------------------------? +DATA1/wxxrzxm/datafile/system.dbf? +DATA1/wxxrzxm/datafile/undo1.dbf? +DATA1/wxxrzxm/datafile/sysaux.dbf? +DATA1/wxxrzxm/datafile/undo02.dbf? +DATA1/wxxrzxm/datafile/user.dbf? +DATA1/wxxrzxm/datafile/test.275.660756743? +DATA1/wxxrzxm/datafile/product.278.666525769 2、做一个完全备份。RMAN backup as copy database 用这样的显示命令也可以,同时备份下控制文件,这也是最常见最普通的全库RMAN备份命令:run{? configure controlfile autobackup on;? configure controlfile autobackup format for device type disk to /backup/wxxrzxm/autobackup/%F;? backup as copy db_file_name_convert=(+DATA1/wxxrzxm/backup/wxxrzxm) database;}3、备份完成后添加一个数据文件,并创建一个表空间。SQL create tablespace zxm datafile size 2m;? ?Tablespace created.? ?SQL alter tablespace product add datafile size 1m;? ?Tablespace altered.? 新文件如下:SQL select name from v$datafile;? ?NAME? ---------------------------------------------? +DATA1/wxxrzxm/datafile/system.dbf? +DATA1/wxxrzxm/datafile/undo1.dbf? +DATA1/wxxrzxm/datafile/sysaux.dbf? +DATA1/wxxrzxm/datafile/undo02.dbf? +DATA1/wxxrzxm/datafile/user.dbf? +DATA1/wxxrzxm/datafile/test.275.660756743? +DATA1/wxxrzxm/datafile/product.278.666525769? +DATA1/wxxrzxm/datafile/zxm.280.668949827? +DATA1/wxxrzxm/datafile/product.282.6689498454、创建一些示例数据。SQL create table test as select?? from user_tables;? ?Table created.? ?SQL create table test2 as select?? from test;? ?Table created.? SQL select tablespace_name,segment_name from user_segments;? TABLESPACE_NAME??????????????? SEGMENT_NAME? ------------------------------ ----------------------------------------? ZXM??????????????????????????? TEST2? ZXM??????????????????????????? TEST 5、关闭数据库删除文件,模拟灾难场景。[oracle@dbp ~]$srvctl stop database -d WXXRZXM? [oracle@dbp ~]$ export ORACLE_SID = +ASM1? [oracle@dbp ~]$ asmcmd -p? ASMCM
显示全部