Oracle10g RMAN Windows 2003 Server R2 x64备份迁移到Linux x64
来源:互联网 发布:c语言函数的概念 编辑:程序博客网 时间:2024/06/01 22:27
记录源端windows上oracle的dbid
SQL> select dbid from v$database; DBID---------- 66428446
使用RMAN备份
RMAN> RUN{2> ALLOCATE CHANNEL C1 TYPE DISK;3> SQL 'ALTER SYSTEM ARCHIVE LOG CURRENT';4> BACKUP AS BACKUPSET FORMAT 'c:\bak\%T_%s_%p_BAK_DATA' DATABASE;5> BACKUP ARCHIVELOG ALL FORMAT 'c:\bak\%T_%s_%p_BAK_ARC' DELETE INPUT;6> BACKUP CURRENT CONTROLFILE FORMAT 'c:\bak\%U_BAK_CTL';7> RELEASE CHANNEL C1;8> }使用目标数据库控制文件替代恢复目录分配的通道: C1通道 C1: sid=521 devtype=DISKsql 语句: ALTER SYSTEM ARCHIVE LOG CURRENT启动 backup 于 10-2月 -14通道 C1: 启动全部数据文件备份集通道 C1: 正在指定备份集中的数据文件输入数据文件 fno=00001 name=C:\ORACLE\PRODUCT\10.2.0\ORADATA\DBSERVER\SYSTEM01.DBF输入数据文件 fno=00003 name=C:\ORACLE\PRODUCT\10.2.0\ORADATA\DBSERVER\SYSAUX01.DBF输入数据文件 fno=00005 name=C:\ORACLE\PRODUCT\10.2.0\ORADATA\DBSERVER\EXAMPLE01.DBF输入数据文件 fno=00006 name=C:\ORACLE\PRODUCT\10.2.0\ORADATA\DBSERVER\ZWC.DBF输入数据文件 fno=00002 name=C:\ORACLE\PRODUCT\10.2.0\ORADATA\DBSERVER\UNDOTBS01.DBF输入数据文件 fno=00004 name=C:\ORACLE\PRODUCT\10.2.0\ORADATA\DBSERVER\USERS01.DBF通道 C1: 正在启动段 1 于 10-2月 -14 MAN-03009: backup 命令 (C1 通道上, 在 02/10/2014 21:50:37 上) 失败ORA-19566: 超出损坏块限制 0 (文件 C:\ORACLE\PRODUCT\10.2.0\ORADATA\DBSERVER\ZWC.DBF)继续执行其它作业步骤, 将不重新运行失败的作业通道 C1: 启动全部数据文件备份集通道 C1: 正在指定备份集中的数据文件备份集中包括当前控制文件在备份集中包含当前的 SPFILE通道 C1: 正在启动段 1 于 10-2月 -14通道 C1: 已完成段 1 于 10-2月 -14段句柄=C:\BAK\20140210_9_1_BAK_DATA 标记=TAG20140210T215036 注释=NONE通道 C1: 备份集已完成, 经过时间:00:00:02释放的通道: C1RMAN-00571: ===========================================================RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============RMAN-00571: ===========================================================
RMAN跳过坏块备份,将备份集传到Linux
C:\>dbv file=C:\oracle\product\10.2.0\oradata\dbserver\zwc.dbfDBVERIFY: Release 10.2.0.4.0 - Production on 星期一 2月 10 21:47:45 2014Copyright (c) 1982, 2007, Oracle. All rights reserved.DBVERIFY - 开始验证: FILE = C:\oracle\product\10.2.0\oradata\dbserver\zwc.dbf页 1129 标记为损坏Corrupt block relative dba: 0x01800469 (file 6, block 1129)Bad check value found during dbv:Data in bad block: type: 6 format: 2 rdba: 0x01800469 last change scn: 0x0000.0009c385 seq: 0x1 flg: 0x06 spare1: 0x0 spare2: 0x0 spare3: 0x0 consistency value in tail: 0xc3850601 check value in block header: 0x9a56 computed block checksum: 0xd64e页 1132 标记为损坏Corrupt block relative dba: 0x0180046c (file 6, block 1132)Bad check value found during dbv:Data in bad block: type: 6 format: 2 rdba: 0x0180046c last change scn: 0x0000.0009c385 seq: 0x1 flg: 0x06 spare1: 0x0 spare2: 0x0 spare3: 0x0 consistency value in tail: 0xc3850601 check value in block header: 0xd748 computed block checksum: 0x7e6DBVERIFY - 验证完成检查的页总数: 12800处理的页总数 (数据): 12135失败的页总数 (数据): 0处理的页总数 (索引): 0失败的页总数 (索引): 0处理的页总数 (其它): 159处理的总页数 (段) : 0失败的总页数 (段) : 0空的页总数: 504标记为损坏的总页数: 2流入的页总数: 0最高块 SCN : 639878 (0.639878)C:\>
恢复管理器: Release 10.2.0.4.0 - Production on 星期一 2月 10 21:58:28 2014Copyright (c) 1982, 2007, Oracle. All rights reserved.连接到目标数据库: DBSERVER (DBID=66428446)RMAN>RMAN>RMAN> run{2> ALLOCATE CHANNEL C1 TYPE DISK;3> SQL 'ALTER SYSTEM ARCHIVE LOG CURRENT';4> SET MAXCORRUPT FOR DATAFILE 6 TO 2;5> BACKUP AS BACKUPSET FORMAT 'c:\bak\%T_%s_%p_BAK_DATA' DATABASE;6> BACKUP ARCHIVELOG ALL FORMAT 'c:\bak\%T_%s_%p_BAK_ARC' DELETE INPUT;7> BACKUP CURRENT CONTROLFILE FORMAT 'c:\bak\%U_BAK_CTL';8> RELEASE CHANNEL C1;9> }使用目标数据库控制文件替代恢复目录分配的通道: C1通道 C1: sid=521 devtype=DISKsql 语句: ALTER SYSTEM ARCHIVE LOG CURRENT正在执行命令: SET MAX CORRUPT启动 backup 于 10-2月 -14通道 C1: 启动全部数据文件备份集通道 C1: 正在指定备份集中的数据文件输入数据文件 fno=00001 name=C:\ORACLE\PRODUCT\10.2.0\ORADATA\DBSERVER\SYSTEM01.DBF输入数据文件 fno=00003 name=C:\ORACLE\PRODUCT\10.2.0\ORADATA\DBSERVER\SYSAUX01.DBF输入数据文件 fno=00005 name=C:\ORACLE\PRODUCT\10.2.0\ORADATA\DBSERVER\EXAMPLE01.DBF输入数据文件 fno=00006 name=C:\ORACLE\PRODUCT\10.2.0\ORADATA\DBSERVER\ZWC.DBF输入数据文件 fno=00002 name=C:\ORACLE\PRODUCT\10.2.0\ORADATA\DBSERVER\UNDOTBS01.DBF输入数据文件 fno=00004 name=C:\ORACLE\PRODUCT\10.2.0\ORADATA\DBSERVER\USERS01.DBF通道 C1: 正在启动段 1 于 10-2月 -14通道 C1: 已完成段 1 于 10-2月 -14段句柄=C:\BAK\20140210_16_1_BAK_DATA 标记=TAG20140210T215842 注释=NONE通道 C1: 备份集已完成, 经过时间:00:00:07通道 C1: 启动全部数据文件备份集通道 C1: 正在指定备份集中的数据文件备份集中包括当前控制文件在备份集中包含当前的 SPFILE通道 C1: 正在启动段 1 于 10-2月 -14通道 C1: 已完成段 1 于 10-2月 -14段句柄=C:\BAK\20140210_17_1_BAK_DATA 标记=TAG20140210T215842 注释=NONE通道 C1: 备份集已完成, 经过时间:00:00:02完成 backup 于 10-2月 -14启动 backup 于 10-2月 -14当前日志已存档通道 C1: 正在启动存档日志备份集通道 C1: 正在指定备份集中的存档日志输入存档日志线程 =1 序列 =19 记录 ID=18 时间戳=839195922输入存档日志线程 =1 序列 =20 记录 ID=19 时间戳=839195932通道 C1: 正在启动段 1 于 10-2月 -14通道 C1: 已完成段 1 于 10-2月 -14段句柄=C:\BAK\20140210_18_1_BAK_ARC 标记=TAG20140210T215852 注释=NONE通道 C1: 备份集已完成, 经过时间:00:00:02通道 C1: 正在删除存档日志存档日志文件名 =C:\ARCH\ARC00019_0839181856.001 记录 ID=18 时间戳 =839195922存档日志文件名 =C:\ARCH\ARC00020_0839181856.001 记录 ID=19 时间戳 =839195932完成 backup 于 10-2月 -14启动 backup 于 10-2月 -14通道 C1: 启动全部数据文件备份集通道 C1: 正在指定备份集中的数据文件备份集中包括当前控制文件通道 C1: 正在启动段 1 于 10-2月 -14通道 C1: 已完成段 1 于 10-2月 -14段句柄=C:\BAK\0JP0A78U_1_1_BAK_CTL 标记=TAG20140210T215854 注释=NONE通道 C1: 备份集已完成, 经过时间:00:00:01完成 backup 于 10-2月 -14释放的通道: C1RMAN>
创建并且修改pfile
SQL> create pfile from spfile;文件已创建。SQL> show parameter spfile;NAME TYPE VALUE------------------------------------ ----------- ------------------------------spfile string C:\ORACLE\PRODUCT\10.2.0\DB_1\ DATABASE\SPFILEORCL.ORAorcl.__db_cache_size=436207616orcl.__java_pool_size=4194304orcl.__large_pool_size=4194304orcl.__shared_pool_size=159383552orcl.__streams_pool_size=0*.audit_file_dest='C:\oracle\product\10.2.0\admin\dbserver\adump'*.background_dump_dest='C:\oracle\product\10.2.0\admin\dbserver\bdump'*.compatible='10.2.0.3.0'*.control_files='C:\oracle\product\10.2.0\oradata\dbserver\control01.ctl','C:\oracle\product\10.2.0\oradata\dbserver\control02.ctl','C:\oracle\product\10.2.0\oradata\dbserver\control03.ctl'*.core_dump_dest='C:\oracle\product\10.2.0\admin\dbserver\cdump'*.db_block_size=8192*.db_domain=''*.db_file_multiblock_read_count=16*.db_name='dbserver'*.dispatchers='(PROTOCOL=TCP) (SERVICE=ORCLXDB)'*.job_queue_processes=10*.log_archive_dest_1='LOCATION=c:\arch'*.log_archive_format='ARC%S_%R.%T'*.nls_language='SIMPLIFIED CHINESE'*.nls_territory='CHINA'*.open_cursors=300*.pga_aggregate_target=203423744*.processes=500*.remote_login_passwordfile='EXCLUSIVE'*.sessions=555*.sga_target=612368384*.undo_management='AUTO'*.undo_tablespace='UNDOTBS1'*.user_dump_dest='C:\oracle\product\10.2.0\admin\dbserver\udump'将修改后的pfile传到Linux端
orcl.__db_cache_size=436207616orcl.__java_pool_size=4194304orcl.__large_pool_size=4194304orcl.__shared_pool_size=159383552orcl.__streams_pool_size=0*.audit_file_dest='/u01/app/oracle/admin/dbserver/adump'*.background_dump_dest='/u01/app/oracle/admin/dbserver/bdump'*.compatible='10.2.0.3.0'*.control_files='/u01/app/oracle/oradata/dbserver/control01.ctl','/u01/app/oracle/oradata/dbserver/control02.ctl','/u01/app/oracle/oradata/dbserver/control03.ctl'*.core_dump_dest='/u01/app/oracle/admin/dbserver/cdump'*.db_block_size=8192*.db_domain=''*.db_file_multiblock_read_count=16*.db_name='dbserver'*.dispatchers='(PROTOCOL=TCP) (SERVICE=ORCLXDB)'*.job_queue_processes=10*.log_archive_dest_1='LOCATION=/arch'*.log_archive_format='ARC%S_%R.%T'*.nls_language='SIMPLIFIED CHINESE'*.nls_territory='CHINA'*.open_cursors=300*.pga_aggregate_target=203423744*.processes=500*.remote_login_passwordfile='EXCLUSIVE'*.sessions=555*.sga_target=612368384*.undo_management='AUTO'*.undo_tablespace='UNDOTBS1'*.user_dump_dest='/u01/app/oracle/admin/dbserver/udump'
[oracle@vzwc bak]$ rman target /Recovery Manager: Release 10.2.0.4.0 - Production on Mon Feb 10 22:22:16 2014Copyright (c) 1982, 2007, Oracle. All rights reserved.connected to target database (not started)RMAN> set dbid=66428446executing command: SET DBIDRMAN> startup nomount pfile='/bak/initorcl.ora'Oracle instance startedTotal System Global Area 612368384 bytesFixed Size 2085872 bytesVariable Size 167775248 bytesDatabase Buffers 436207616 bytesRedo Buffers 6299648 bytesRMAN>
还原controlfile,mount database
RMAN> restore controlfile from '/bak/0JP0A78U_1_1_BAK_CTL';Starting restore at 10-FEB-14using target database control file instead of recovery catalogallocated channel: ORA_DISK_1channel ORA_DISK_1: sid=540 devtype=DISKchannel ORA_DISK_1: restoring control filechannel ORA_DISK_1: restore complete, elapsed time: 00:00:03output filename=/u01/app/oracle/oradata/dbserver/control01.ctloutput filename=/u01/app/oracle/oradata/dbserver/control02.ctloutput filename=/u01/app/oracle/oradata/dbserver/control03.ctlFinished restore at 10-FEB-14RMAN> alter database mount;database mountedreleased channel: ORA_DISK_1
注册备份集
RMAN> catalog start with '/bak/';searching for all files that match the pattern /bak/List of Files Unknown to the Database=====================================File Name: /bak/20140210_18_1_BAK_ARCFile Name: /bak/0JP0A78U_1_1_BAK_CTLFile Name: /bak/20140210_17_1_BAK_DATAFile Name: /bak/20140210_16_1_BAK_DATAFile Name: /bak/initorcl.oraDo you really want to catalog the above files (enter YES or NO)? YEScataloging files...cataloging doneList of Cataloged Files=======================File Name: /bak/20140210_18_1_BAK_ARCFile Name: /bak/0JP0A78U_1_1_BAK_CTLFile Name: /bak/20140210_17_1_BAK_DATAFile Name: /bak/20140210_16_1_BAK_DATAList of Files Which Where Not Cataloged=======================================File Name: /bak/initorcl.ora RMAN-07517: Reason: The file header is corruptedRMAN>
可以看到提示,pfile文件无法注册进去
RMAN> list backup;List of Backup Sets===================BS Key Type LV Size------- ---- -- ----------10 Full 710.09M List of Datafiles in backup set 10 File LV Type Ckp SCN Ckp Time Name ---- -- ---- ---------- --------- ---- 1 Full 644266 10-FEB-14 C:\ORACLE\PRODUCT\10.2.0\ORADATA\DBSERVER\SYSTEM01.DBF 2 Full 644266 10-FEB-14 C:\ORACLE\PRODUCT\10.2.0\ORADATA\DBSERVER\UNDOTBS01.DBF 3 Full 644266 10-FEB-14 C:\ORACLE\PRODUCT\10.2.0\ORADATA\DBSERVER\SYSAUX01.DBF 4 Full 644266 10-FEB-14 C:\ORACLE\PRODUCT\10.2.0\ORADATA\DBSERVER\USERS01.DBF 5 Full 644266 10-FEB-14 C:\ORACLE\PRODUCT\10.2.0\ORADATA\DBSERVER\EXAMPLE01.DBF 6 Full 644266 10-FEB-14 C:\ORACLE\PRODUCT\10.2.0\ORADATA\DBSERVER\ZWC.DBF Backup Set Copy #1 of backup set 10 Device Type Elapsed Time Completion Time Compressed Tag ----------- ------------ --------------- ---------- --- DISK 00:00:04 10-FEB-14 NO TAG20140210T215842 List of Backup Pieces for backup set 10 Copy #1 BP Key Pc# Status Piece Name ------- --- ----------- ---------- 10 1 AVAILABLE C:\BAK\20140210_16_1_BAK_DATA Backup Set Copy #2 of backup set 10 Device Type Elapsed Time Completion Time Compressed Tag ----------- ------------ --------------- ---------- --- DISK 00:00:04 10-FEB-14 NO TAG20140210T215842 List of Backup Pieces for backup set 10 Copy #2 BP Key Pc# Status Piece Name ------- --- ----------- ---------- 16 1 AVAILABLE /bak/20140210_16_1_BAK_DATABS Key Type LV Size------- ---- -- ----------11 Full 6.80M Control File Included: Ckp SCN: 644268 Ckp time: 10-FEB-14 SPFILE Included: Modification time: 10-FEB-14 Backup Set Copy #1 of backup set 11 Device Type Elapsed Time Completion Time Compressed Tag ----------- ------------ --------------- ---------- --- DISK 00:00:02 10-FEB-14 NO TAG20140210T215842 List of Backup Pieces for backup set 11 Copy #1 BP Key Pc# Status Piece Name ------- --- ----------- ---------- 11 1 AVAILABLE C:\BAK\20140210_17_1_BAK_DATA Backup Set Copy #2 of backup set 11 Device Type Elapsed Time Completion Time Compressed Tag ----------- ------------ --------------- ---------- --- DISK 00:00:02 10-FEB-14 NO TAG20140210T215842 List of Backup Pieces for backup set 11 Copy #2 BP Key Pc# Status Piece Name ------- --- ----------- ---------- 15 1 AVAILABLE /bak/20140210_17_1_BAK_DATABS Key Size------- ----------12 2.50K List of Archived Logs in backup set 12 Thrd Seq Low SCN Low Time Next SCN Next Time ---- ------- ---------- --------- ---------- --------- 1 19 644196 10-FEB-14 644256 10-FEB-14 1 20 644256 10-FEB-14 644274 10-FEB-14 Backup Set Copy #1 of backup set 12 Device Type Elapsed Time Completion Time Compressed Tag ----------- ------------ --------------- ---------- --- DISK 00:00:01 10-FEB-14 NO TAG20140210T215852 List of Backup Pieces for backup set 12 Copy #1 BP Key Pc# Status Piece Name ------- --- ----------- ---------- 12 1 AVAILABLE C:\BAK\20140210_18_1_BAK_ARC Backup Set Copy #2 of backup set 12 Device Type Elapsed Time Completion Time Compressed Tag ----------- ------------ --------------- ---------- --- DISK 00:00:01 10-FEB-14 NO TAG20140210T215852 List of Backup Pieces for backup set 12 Copy #2 BP Key Pc# Status Piece Name ------- --- ----------- ---------- 13 1 AVAILABLE /bak/20140210_18_1_BAK_ARCBS Key Type LV Size Device Type Elapsed Time Completion Time------- ---- -- ---------- ----------- ------------ ---------------13 Full 6.77M DISK 00:00:00 10-FEB-14 BP Key: 14 Status: AVAILABLE Compressed: NO Tag: TAG20140210T215854 Piece Name: /bak/0JP0A78U_1_1_BAK_CTL Control File Included: Ckp SCN: 644281 Ckp time: 10-FEB-14RMAN>
set newname datafile,之后switch更新controlfile
RMAN> run{2> allocate channel c1 type disk;3> set newname for datafile 1 to '/u01/app/oracle/oradata/dbserver/system01.dbf';4> set newname for datafile 2 to '/u01/app/oracle/oradata/dbserver/undotbs01.dbf';set newname for datafile 3 to '/u01/app/oracle/oradata/dbserver/sysaux01.dbf';set newname for datafile 4 to '/u01/app/oracle/oradata/dbserver/users01.dbf';set newname for datafile 5 to '/u01/app/oracle/oradata/dbserver/example01.dbf';set newname for datafile 6 to '/u01/app/oracle/oradata/dbserver/zwc.dbf';9> restore database;10> switch datafile all;11> release channel c1;12> }allocated channel: c1channel c1: sid=540 devtype=DISKexecuting command: SET NEWNAMEexecuting command: SET NEWNAMEexecuting command: SET NEWNAMEexecuting command: SET NEWNAMEexecuting command: SET NEWNAMEexecuting command: SET NEWNAMEStarting restore at 10-FEB-14channel c1: restoring datafile 00006input datafile copy recid=5 stamp=839198158 filename=/u01/app/oracle/product/10.2.0/db_1/dbs/C:ORACLEPRODUCT10.2.0ORADATADBSERVERZWC.DBFdestination for restore of datafile 00006: /u01/app/oracle/oradata/dbserver/zwc.dbfchannel c1: copied datafile copy of datafile 00006output filename=/u01/app/oracle/oradata/dbserver/zwc.dbf recid=13 stamp=839198270channel c1: starting datafile backupset restorechannel c1: specifying datafile(s) to restore from backup setrestoring datafile 00001 to /u01/app/oracle/oradata/dbserver/system01.dbfrestoring datafile 00002 to /u01/app/oracle/oradata/dbserver/undotbs01.dbfrestoring datafile 00003 to /u01/app/oracle/oradata/dbserver/sysaux01.dbfrestoring datafile 00004 to /u01/app/oracle/oradata/dbserver/users01.dbfrestoring datafile 00005 to /u01/app/oracle/oradata/dbserver/example01.dbfchannel c1: reading from backup piece C:\BAK\20140210_16_1_BAK_DATAchannel c1: restored backup piece 1failover to piece handle=/bak/20140210_16_1_BAK_DATA tag=TAG20140210T215842channel c1: restore complete, elapsed time: 00:00:25Finished restore at 10-FEB-14datafile 1 switched to datafile copyinput datafile copy recid=19 stamp=839198299 filename=/u01/app/oracle/oradata/dbserver/system01.dbfdatafile 2 switched to datafile copyinput datafile copy recid=20 stamp=839198299 filename=/u01/app/oracle/oradata/dbserver/undotbs01.dbfdatafile 3 switched to datafile copyinput datafile copy recid=21 stamp=839198299 filename=/u01/app/oracle/oradata/dbserver/sysaux01.dbfdatafile 4 switched to datafile copyinput datafile copy recid=22 stamp=839198299 filename=/u01/app/oracle/oradata/dbserver/users01.dbfdatafile 5 switched to datafile copyinput datafile copy recid=23 stamp=839198299 filename=/u01/app/oracle/oradata/dbserver/example01.dbfdatafile 6 switched to datafile copyinput datafile copy recid=24 stamp=839198299 filename=/u01/app/oracle/oradata/dbserver/zwc.dbfreleased channel: c1RMAN>
recover database
RMAN> recover database;Starting recover at 10-FEB-14allocated channel: ORA_DISK_1channel ORA_DISK_1: sid=540 devtype=DISKstarting media recoverychannel ORA_DISK_1: starting archive log restore to default destinationchannel ORA_DISK_1: restoring archive logarchive log thread=1 sequence=20channel ORA_DISK_1: reading from backup piece C:\BAK\20140210_18_1_BAK_ARCchannel ORA_DISK_1: restored backup piece 1failover to piece handle=/bak/20140210_18_1_BAK_ARC tag=TAG20140210T215852channel ORA_DISK_1: restore complete, elapsed time: 00:00:01archive log filename=/arch/ARC0000000020_0839181856.0001 thread=1 sequence=20unable to find archive logarchive log thread=1 sequence=21RMAN-00571: ===========================================================RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============RMAN-00571: ===========================================================RMAN-03002: failure of recover command at 02/10/2014 22:40:08RMAN-06054: media recovery requesting unknown log: thread 1 seq 21 lowscn 644274RMAN>
RMAN-06054: media recovery requesting unknown log: thread 1 seq 21 lowscn 644274
提示介质恢复到一个未知的SCN,可以使用set until scn或者set until time解决
查看源端windows的sequence#
[oracle@vzwc ~]$ sqlplus sys/oracle@192.168.1.8:1521/dbserver as sysdbaSQL*Plus: Release 10.2.0.4.0 - Production on Mon Feb 10 22:42:56 2014Copyright (c) 1982, 2007, Oracle. All Rights Reserved.Connected to:Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit ProductionWith the Partitioning, OLAP, Data Mining and Real Application Testing optionsSQL> select sequence# from v$archived_log; SEQUENCE#---------- 2 3 4 5 6 7 8 9 10 11 12 SEQUENCE#---------- 13 14 15 16 17 18 19 2019 rows selected.SQL> archive log listDatabase log mode Archive ModeAutomatic archival EnabledArchive destination c:\archOldest online log sequence 19Next log sequence to archive 21Current log sequence 21
在备份时只有sequence#2-sequence#20是归档,21还是online redolog,所以没有copy过来,可以通过指定sequence#来解决, set until sequence 21
RMAN> run{2> set until sequence 21;3> recover database;4> }executing command: SET until clauseStarting recover at 10-FEB-14using channel ORA_DISK_1starting media recoverymedia recovery complete, elapsed time: 00:00:01Finished recover at 10-FEB-14RMAN>
注意如果windows是x86 32位系统在recover database之后需要执行以下操作
SQL> alter database open resetlogs migrate;
SQL> @?/rdbms/admin/utlirp.sql
SQL> @?/rdbms/admin/utlrp.sql
SQL> shutdown immediate;
SQL> startup
open数据库resetlogs
RMAN> alter database open resetlogs;database opened
调整redo log和temp tablespace
SQL> select member from v$logfile;MEMBER----------------------------------------------------------------------------------------------------/u01/app/oracle/product/10.2.0/db_1/dbs/C:ORACLEPRODUCT10.2.0ORADATADBSERVERREDO03.LOG/u01/app/oracle/product/10.2.0/db_1/dbs/C:ORACLEPRODUCT10.2.0ORADATADBSERVERREDO02.LOG/u01/app/oracle/product/10.2.0/db_1/dbs/C:ORACLEPRODUCT10.2.0ORADATADBSERVERREDO01.LOGSQL> select group#,sequence#,bytes/1024/1024,members,status from v$log; GROUP# SEQUENCE# BYTES/1024/1024 MEMBERS STATUS---------- ---------- --------------- ---------- ---------------- 1 1 50 1 CURRENT 2 0 50 1 UNUSED 3 0 50 1 UNUSEDSQL> alter database drop logfile group 2;Database altered.SQL> alter database add logfile group 2('/u01/app/oracle/oradata/dbserver/redo02.log') size 50M;Database altered.SQL> alter database drop logfile group 3;Database altered.SQL> alter database add logfile group 3('/u01/app/oracle/oradata/dbserver/redo03.log') size 50M;Database altered.SQL> alter system switch logfile;System altered.SQL> alter database drop logfile group 1;Database altered.SQL> alter database add logfile group 1('/u01/app/oracle/oradata/dbserver/redo01.log') size 50M;Database altered.SQL> select a.group#,a.bytes/1024/1024,a.members,a.status,b.member from v$log a,v$logfile b where a.group#=b.group#; GROUP# A.BYTES/1024/1024 MEMBERS STATUS MEMBER---------- ----------------- ---------- ---------------- -------------------------------------------------------------------------------- 3 50 1 INACTIVE /u01/app/oracle/oradata/dbserver/redo03.log 2 50 1 CURRENT /u01/app/oracle/oradata/dbserver/redo02.log 1 50 1 UNUSED /u01/app/oracle/oradata/dbserver/redo01.log
SQL> select name from v$tempfile;NAME-------------------------------------------------------------------------------------------------------------------------------C:\ORACLE\PRODUCT\10.2.0\ORADATA\DBSERVER\TEMP01.DBFSQL> create temporary tablespace temptbs tempfile '/u01/app/oracle/oradata/dbserver/temptbs01.dbf' size 100M autoextend on;Tablespace created.SQL> alter database default temporary tablespace temptbs;Database altered.SQL> drop tablespace temp including contents and datafiles;Tablespace dropped.SQL> select name from v$tempfile;NAME--------------------------------------------------------------------------------------------------------------------------------/u01/app/oracle/oradata/dbserver/temptbs01.dbfSQL>
创建spfile
SQL> show parameter spfileNAME TYPE VALUE------------------------------------ ----------- ------------------------------spfile stringSQL> SQL> SQL> create spfile from pfile='/bak/initorcl.ora';File created.SQL> shutdown immediateDatabase closed.Database dismounted.ORACLE instance shut down.SQL> startupORACLE instance started.Total System Global Area 612368384 bytesFixed Size 2085872 bytesVariable Size 167775248 bytesDatabase Buffers 436207616 bytesRedo Buffers 6299648 bytesDatabase mounted.Database opened.SQL> show parameter spfileNAME TYPE VALUE------------------------------------ ----------- ------------------------------spfile string /u01/app/oracle/product/10.2.0 /db_1/dbs/spfileORCL.oraSQL>
创建监听和tns
[oracle@vzwc admin]$ cat listener.ora # listener.ora Network Configuration File: /u01/app/oracle/product/10.2.0/db_1/network/admin/listener.ora# Generated by Oracle configuration tools.SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (GLOBAL_DBNAME = dbserver) (ORACLE_HOME = /u01/app/oracle/product/10.2.0/db_1) (SID_NAME = ORCL) ) )LISTENER = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = vzwc)(PORT = 1521)) )[oracle@vzwc admin]$ cat tnsnames.ora # tnsnames.ora Network Configuration File: /u01/app/oracle/product/10.2.0/db_1/network/admin/tnsnames.ora# Generated by Oracle configuration tools.DBSERVER = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.7)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = dbserver) ) )[oracle@vzwc admin]$ [oracle@vzwc admin]$ [oracle@vzwc admin]$ [oracle@vzwc admin]$ [oracle@vzwc admin]$ [oracle@vzwc admin]$ lsnrctl startLSNRCTL for Linux: Version 10.2.0.4.0 - Production on 10-FEB-2014 23:18:27Copyright (c) 1991, 2007, Oracle. All rights reserved.Starting /u01/app/oracle/product/10.2.0/db_1/bin/tnslsnr: please wait...TNSLSNR for Linux: Version 10.2.0.4.0 - ProductionSystem parameter file is /u01/app/oracle/product/10.2.0/db_1/network/admin/listener.oraLog messages written to /u01/app/oracle/product/10.2.0/db_1/network/log/listener.logListening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=vzwc)(PORT=1521)))Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=vzwc)(PORT=1521)))STATUS of the LISTENER------------------------Alias LISTENERVersion TNSLSNR for Linux: Version 10.2.0.4.0 - ProductionStart Date 10-FEB-2014 23:18:28Uptime 0 days 0 hr. 0 min. 0 secTrace Level offSecurity ON: Local OS AuthenticationSNMP OFFListener Parameter File /u01/app/oracle/product/10.2.0/db_1/network/admin/listener.oraListener Log File /u01/app/oracle/product/10.2.0/db_1/network/log/listener.logListening Endpoints Summary... (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=vzwc)(PORT=1521)))Services Summary...Service "dbserver" has 1 instance(s). Instance "ORCL", status UNKNOWN, has 1 handler(s) for this service...The command completed successfully[oracle@vzwc admin]$ [oracle@vzwc admin]$ [oracle@vzwc admin]$ [oracle@vzwc admin]$ [oracle@vzwc admin]$ [oracle@vzwc admin]$ [oracle@vzwc admin]$ lsnrctl statusLSNRCTL for Linux: Version 10.2.0.4.0 - Production on 10-FEB-2014 23:19:00Copyright (c) 1991, 2007, Oracle. All rights reserved.Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=vzwc)(PORT=1521)))STATUS of the LISTENER------------------------Alias LISTENERVersion TNSLSNR for Linux: Version 10.2.0.4.0 - ProductionStart Date 10-FEB-2014 23:18:28Uptime 0 days 0 hr. 0 min. 32 secTrace Level offSecurity ON: Local OS AuthenticationSNMP OFFListener Parameter File /u01/app/oracle/product/10.2.0/db_1/network/admin/listener.oraListener Log File /u01/app/oracle/product/10.2.0/db_1/network/log/listener.logListening Endpoints Summary... (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=vzwc)(PORT=1521)))Services Summary...Service "ORCLXDB" has 1 instance(s). Instance "ORCL", status READY, has 1 handler(s) for this service...Service "dbserver" has 2 instance(s). Instance "ORCL", status UNKNOWN, has 1 handler(s) for this service... Instance "ORCL", status READY, has 1 handler(s) for this service...Service "dbserver_XPT" has 1 instance(s). Instance "ORCL", status READY, has 1 handler(s) for this service...The command completed successfully[oracle@vzwc admin]$ [oracle@vzwc admin]$ [oracle@vzwc admin]$ [oracle@vzwc admin]$ [oracle@vzwc admin]$ lsnrctl serviceLSNRCTL for Linux: Version 10.2.0.4.0 - Production on 10-FEB-2014 23:19:09Copyright (c) 1991, 2007, Oracle. All rights reserved.Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=vzwc)(PORT=1521)))Services Summary...Service "ORCLXDB" has 1 instance(s). Instance "ORCL", status READY, has 1 handler(s) for this service... Handler(s): "D000" established:0 refused:0 current:0 max:1022 state:ready DISPATCHER <machine: vzwc, pid: 15599> (ADDRESS=(PROTOCOL=tcp)(HOST=vzwc)(PORT=47521))Service "dbserver" has 2 instance(s). Instance "ORCL", status UNKNOWN, has 1 handler(s) for this service... Handler(s): "DEDICATED" established:0 refused:0 LOCAL SERVER Instance "ORCL", status READY, has 1 handler(s) for this service... Handler(s): "DEDICATED" established:0 refused:0 state:ready LOCAL SERVERService "dbserver_XPT" has 1 instance(s). Instance "ORCL", status READY, has 1 handler(s) for this service... Handler(s): "DEDICATED" established:0 refused:0 state:ready LOCAL SERVERThe command completed successfully
验证恢复
[oracle@vzwc admin]$ sqlplus / as sysdbaSQL*Plus: Release 10.2.0.4.0 - Production on Mon Feb 10 23:19:43 2014Copyright (c) 1982, 2007, Oracle. All Rights Reserved.Connected to:Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit ProductionWith the Partitioning, OLAP, Data Mining and Real Application Testing optionsSQL> show parameter _nameNAME TYPE VALUE------------------------------------ ----------- ------------------------------db_file_name_convert stringdb_name string dbserverdb_unique_name string dbserverglobal_names boolean FALSEinstance_name string ORCLlock_name_space stringlog_file_name_convert stringservice_names string dbserverSQL> SQL> conn zwc@dbserverEnter password: Connected.SQL> select tname from tab;TNAME------------------------------TAB01SQL> select * from tab01 where rownum=1;OWNER------------------------------OBJECT_NAME--------------------------------------------------------------------------------SUBOBJECT_NAME OBJECT_ID DATA_OBJECT_ID OBJECT_TYPE------------------------------ ---------- -------------- -------------------CREATED LAST_DDL_TIM TIMESTAMP STATUS T G S------------ ------------ ------------------- ------- - - -SYSICOL$ 20 2 TABLE08-MAY-08 08-MAY-08 2008-05-08:00:53:58 VALID N N NSQL> select count(*) from tab01;select count(*) from tab01 *ERROR at line 1:ORA-01578: ORACLE data block corrupted (file # 6, block # 1129)ORA-01110: data file 6: '/u01/app/oracle/oradata/dbserver/zwc.dbf'
源端windows备份的时候跳过了坏块,在Linux端恢复的时候坏块还是存在的
[oracle@vzwc ~]$ dbv file=/u01/app/oracle/oradata/dbserver/zwc.dbfDBVERIFY: Release 10.2.0.4.0 - Production on Mon Feb 10 23:24:05 2014Copyright (c) 1982, 2007, Oracle. All rights reserved.DBVERIFY - Verification starting : FILE = /u01/app/oracle/oradata/dbserver/zwc.dbfDBV-00200: Block, DBA 25166953, already marked corruptDBV-00200: Block, DBA 25166956, already marked corruptDBVERIFY - Verification completeTotal Pages Examined : 12800Total Pages Processed (Data) : 12137Total Pages Failing (Data) : 0Total Pages Processed (Index): 0Total Pages Failing (Index): 0Total Pages Processed (Other): 662Total Pages Processed (Seg) : 0Total Pages Failing (Seg) : 0Total Pages Empty : 1Total Pages Marked Corrupt : 2Total Pages Influx : 0Highest block SCN : 639878 (0.639878)
SQL> l 1 select name from v$datafile 2 union all 3 select name from v$tempfile 4 union all 5 select name from v$controlfile 6 union all 7* select member from v$logfileSQL> /NAME--------------------------------------------------------------------------------/u01/app/oracle/oradata/dbserver/system01.dbf/u01/app/oracle/oradata/dbserver/undotbs01.dbf/u01/app/oracle/oradata/dbserver/sysaux01.dbf/u01/app/oracle/oradata/dbserver/users01.dbf/u01/app/oracle/oradata/dbserver/example01.dbf/u01/app/oracle/oradata/dbserver/zwc.dbf/u01/app/oracle/oradata/dbserver/temptbs01.dbf/u01/app/oracle/oradata/dbserver/control01.ctl/u01/app/oracle/oradata/dbserver/control02.ctl/u01/app/oracle/oradata/dbserver/control03.ctl/u01/app/oracle/oradata/dbserver/redo03.log/u01/app/oracle/oradata/dbserver/redo02.log/u01/app/oracle/oradata/dbserver/redo01.log13 rows selected.SQL>
0 0
- Oracle10g RMAN Windows 2003 Server R2 x64备份迁移到Linux x64
- 重装windows server 2003 R2 X64服务器
- Windows Server 2003 R2 SP2 x64 序列号
- RedHat.Enterprise.Linux.5.5 x64 oracle10g R2安装记录
- Sharepoint 2010 for windows server 2008 r2 x64安装
- mimikatz抓取明文密码(Windows Server 2008 R2 x64)
- Windows Server 2008 R2 x64 + IIS7.5+ .NET1.1
- 在WINDOWS SERVER 2008 R2 X64上安裝WAMP服務
- IBM X3850 Windows Server 2008 X64安装Oracle10g x64问题锦集
- Windows Server 2003 x64 IIS配置
- 创建Windows Server 2003 x64云镜像
- Windows Server 2008 R2 X64安装Oracle 10g R2后不能创建数据库问题解决办法
- Linux x64系统上安装 oracle 11g R2 x64
- 在windows server 2008 R2 x64 上使用windows media services 2008
- RoseHA8.9 For Windows 搭建双机热备环境(SERVER 2008 R2 SP1 +SQL SERVER 2008 R2 X64)
- windows server 2008 r2 x64 enterprise service pack1中aspjpeg.dll安装
- windows server 2008 R2 x64 服务器系统升级-解决服务器物理内存不能完全使用问题
- 从Windows(x86)到Linux(x64)的代码…
- UIActionSheet的使用
- html页面样式(一) css的float属性
- error: .repo/manifests/: contains uncommitted changes .
- Oracle 索引
- 实验田AAtest
- Oracle10g RMAN Windows 2003 Server R2 x64备份迁移到Linux x64
- 学习FFmpeg API – 解码视频
- XP、Wn7模拟发送ctrl+alt+delete组合键
- 机器学习第五课----朴素贝叶斯应用于垃圾邮件过滤
- DataTable转成View页面中使用的List
- web-front-编写高质量代码--Web前端开发修炼之道
- solr4.6本地数据提交异常
- Remove Nth Node From End of List
- ffmpeg函数介绍