ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 恢复RAC数据库到单实例(ASM)

恢复RAC数据库到单实例(ASM)

原创 Linux操作系统 作者:liglewang 时间:2011-09-15 19:55:33 0 删除 编辑

源端为10.2.0.4的RAC+ASM,现通过热备并应用归档日志的方式将数据库恢复到相同版本的单实例上,单机也同样采用ASM方式。

单机环境为:ORACLE 10.2.0.4 , ASM

1、 将从生产机上ftp过来的pfile.ora文件进行修改,主要去掉和集群相关的一些参数:
参数文件修改后如下:

#racdb2.__db_cache_size=13287555072
#racdb1.__db_cache_size=5033164800
#racdb2.__java_pool_size=16777216
#racdb1.__java_pool_size=16777216
#racdb2.__large_pool_size=33554432
#racdb1.__large_pool_size=83886080
#racdb2.__shared_pool_size=1325400064
#racdb1.__shared_pool_size=3439329280
#racdb2.__streams_pool_size=0
#racdb1.__streams_pool_size=0
#*.cluster_database_instances=2
#*.cluster_database=true
#racdb2.cursor_sharing='FORCE'
#racdb1.instance_number=1
#racdb2.instance_number=2
#racdb2.local_listener='(ADDRESS = (PROTOCOL = TCP)(HOST = 10.1.11.53 ) ( port =1521 ))'
#racdb2.sga_max_size=16777216000#internally adjusted
#racdb2.sga_target=14680064000
#racdb2.thread=2
#racdb1.thread=1
#racdb2.undo_tablespace='UNDOTBS2'
#*.remote_listener='LISTENERS_RACDB'
#*.lock_sga=TRUE
*.audit_file_dest='/oranm01/app/oracle/admin/racdb/adump'
*.background_dump_dest='/oranm01/app/oracle/admin/racdb/bdump'
*.compatible='10.2.0.3.0'
*.control_files='+DATA/racdb/controlfile/current.290.692567429','+FLASH/racdb/controlfile/current.718.692567431'
*.core_dump_dest='/oranm01/app/oracle/admin/racdb/cdump'
*.db_block_size=8192
*.db_create_file_dest='+DATA'
*.db_domain=''
*.db_file_multiblock_read_count=16
*.db_flashback_retention_target=120
*.db_name='racdb'
*.db_recovery_file_dest='+FLASH'
*.db_recovery_file_dest_size=375809638400
*.dispatchers='(PROTOCOL=TCP) (SERVICE=racdbXDB)'
*.job_queue_processes=10
racdb.local_listener='(ADDRESS = (PROTOCOL = TCP)(HOST = 10.1.11.83 ) ( port = 1521))'
*.nls_territory='CHINA'
*.open_cursors=600
*.pga_aggregate_target=4847566848
*.processes=1000
*.remote_login_passwordfile='exclusive'
racdb.sga_max_size=12884901888#internally adjusted
*.sga_target=1610612736
racdb.sga_target=8589934592
*.undo_management='AUTO'
*.undo_tablespace='UNDOTBS1'
*.user_dump_dest='/oranm01/app/oracle/admin/racdb/udump'
#racdb2.__db_cache_size=13287555072
#racdb1.__db_cache_size=5033164800
#racdb2.__java_pool_size=16777216
#racdb1.__java_pool_size=16777216
#racdb2.__large_pool_size=33554432
#racdb1.__large_pool_size=83886080
#racdb2.__shared_pool_size=1325400064
#racdb1.__shared_pool_size=3439329280
#racdb2.__streams_pool_size=0
#racdb1.__streams_pool_size=0
#*.cluster_database_instances=2
#*.cluster_database=true
#racdb2.cursor_sharing='FORCE'
#racdb1.instance_number=1
#racdb2.instance_number=2
#racdb2.local_listener='(ADDRESS = (PROTOCOL = TCP)(HOST = 10.1.11.53 ) ( port =1521 ))'
#racdb2.sga_max_size=16777216000#internally adjusted
#racdb2.sga_target=14680064000
#racdb2.thread=2
#racdb1.thread=1
#racdb2.undo_tablespace='UNDOTBS2'
#*.remote_listener='LISTENERS_RACDB'
#*.lock_sga=TRUE
*.audit_file_dest='/oranm01/app/oracle/admin/racdb/adump'
*.background_dump_dest='/oranm01/app/oracle/admin/racdb/bdump'
*.compatible='10.2.0.3.0'
*.control_files='+DATA/racdb/controlfile/current.290.692567429','+FLASH/racdb/controlfile/current.718.692567431'
*.core_dump_dest='/oranm01/app/oracle/admin/racdb/cdump'
*.db_block_size=8192
*.db_create_file_dest='+DATA'
*.db_domain=''
*.db_file_multiblock_read_count=16
*.db_flashback_retention_target=120
*.db_name='racdb'
*.db_recovery_file_dest='+FLASH'
*.db_recovery_file_dest_size=375809638400
*.dispatchers='(PROTOCOL=TCP) (SERVICE=racdbXDB)'
*.job_queue_processes=10
racdb.local_listener='(ADDRESS = (PROTOCOL = TCP)(HOST = 10.1.11.83 ) ( port = 1521))'
*.nls_territory='CHINA'
*.open_cursors=600
*.pga_aggregate_target=4847566848
*.processes=1000
*.remote_login_passwordfile='exclusive'
racdb.sga_max_size=12884901888#internally adjusted
*.sga_target=1610612736
racdb.sga_target=8589934592
*.undo_management='AUTO'
*.undo_tablespace='UNDOTBS1'
*.user_dump_dest='/oranm01/app/oracle/admin/racdb/udump'

2、 将pfile文件转换成spfile

P750_25:oracle:/home/oracle>sqlplus '/as sysdba'

SQL*Plus: Release 10.2.0.4.0 - Production on Wed Sep 14 13:25:45 2011
Copyright (c) 1982, 2007, Oracle.  All Rights Reserved.
Connected to an idle instance.

SQL> create spfile from pfile='/home/oracle/pfile.ora';

File created.

3、 NOMOUNT数据库

SQL> alter database nomount;

4、 恢复控制文件

RMAN> restore controlfile from '/cb_backup/ctl_201109131913.ctl';

5、 MOUNT数据库

RMAN> sql 'alter database mount';

6、 重新指定在线联机日志文件(SQLPLUS下执行)

alter database rename file '+DATA/racdb/onlinelog/group_1.259.727912683' to '+DATA';
alter database rename file '+FLASH/racdb/onlinelog/group_1.720.727912685' to '+FLASH';
alter database rename file '+DATA/racdb/onlinelog/group_2.261.727912333' to '+DATA';
alter database rename file '+FLASH/racdb/onlinelog/group_2.719.727912335' to '+FLASH';
alter database rename file '+DATA/racdb/onlinelog/group_3.289.727912713' to '+DATA';
alter database rename file '+FLASH/racdb/onlinelog/group_3.722.727912713' to '+FLASH';
alter database rename file '+DATA/racdb/onlinelog/group_4.292.727912375' to '+DATA';
alter database rename file '+FLASH/racdb/onlinelog/group_4.721.727912377' to '+FLASH';
alter database rename file '+DATA/racdb/onlinelog/group_5.309.727911829' to '+DATA';
alter database rename file '+FLASH/racdb/onlinelog/group_5.2794.727911827' to '+FLASH';
alter database rename file '+DATA/racdb/onlinelog/group_6.310.727912035' to '+DATA';
alter database rename file '+FLASH/racdb/onlinelog/group_6.2515.727912037' to '+FLASH';
alter database rename file '+DATA/racdb/onlinelog/group_7.311.727912117' to '+DATA';
alter database rename file '+FLASH/racdb/onlinelog/group_7.1112.727912117' to '+FLASH';
alter database rename file '+DATA/racdb/onlinelog/group_8.312.727912163' to '+DATA';
alter database rename file '+FLASH/racdb/onlinelog/group_8.2592.727912165' to '+FLASH';

7、 在待恢复数据库上对从源库FTP过来的备份集进行注册(RMAN下执行)

catalog backuppiece '/cb_backup/rvmmfdj2_1_1_7039.bak';
catalog backuppiece '/cb_backup/s0mmfdj2_1_1_7040.bak';
catalog backuppiece '/cb_backup/s1mmfdm3_1_1_7041.bak';
catalog backuppiece '/cb_backup/s2mmfdml_10_1_7042.bak';
catalog backuppiece '/cb_backup/s2mmfdml_11_1_7042.bak';
catalog backuppiece '/cb_backup/s2mmfdml_12_1_7042.bak';
catalog backuppiece '/cb_backup/s2mmfdml_13_1_7042.bak';
catalog backuppiece '/cb_backup/s2mmfdml_14_1_7042.bak';
catalog backuppiece '/cb_backup/s2mmfdml_1_1_7042.bak';
catalog backuppiece '/cb_backup/s2mmfdml_2_1_7042.bak';
catalog backuppiece '/cb_backup/s2mmfdml_3_1_7042.bak';
catalog backuppiece '/cb_backup/s2mmfdml_4_1_7042.bak';
catalog backuppiece '/cb_backup/s2mmfdml_5_1_7042.bak';
catalog backuppiece '/cb_backup/s2mmfdml_6_1_7042.bak';
catalog backuppiece '/cb_backup/s2mmfdml_7_1_7042.bak';
catalog backuppiece '/cb_backup/s2mmfdml_8_1_7042.bak';
catalog backuppiece '/cb_backup/s2mmfdml_9_1_7042.bak';
catalog backuppiece '/cb_backup/s3mmfdml_10_1_7043.bak';
catalog backuppiece '/cb_backup/s3mmfdml_11_1_7043.bak';
catalog backuppiece '/cb_backup/s3mmfdml_12_1_7043.bak';
catalog backuppiece '/cb_backup/s3mmfdml_13_1_7043.bak';
catalog backuppiece '/cb_backup/s3mmfdml_14_1_7043.bak';
catalog backuppiece '/cb_backup/s3mmfdml_15_1_7043.bak';
catalog backuppiece '/cb_backup/s3mmfdml_16_1_7043.bak';
catalog backuppiece '/cb_backup/s3mmfdml_17_1_7043.bak';
catalog backuppiece '/cb_backup/s3mmfdml_1_1_7043.bak';
catalog backuppiece '/cb_backup/s3mmfdml_2_1_7043.bak';
catalog backuppiece '/cb_backup/s3mmfdml_3_1_7043.bak';
catalog backuppiece '/cb_backup/s3mmfdml_4_1_7043.bak';
catalog backuppiece '/cb_backup/s3mmfdml_5_1_7043.bak';
catalog backuppiece '/cb_backup/s3mmfdml_6_1_7043.bak';
catalog backuppiece '/cb_backup/s3mmfdml_7_1_7043.bak';
atalog backuppiece '/cb_backup/s3mmfdml_8_1_7043.bak';
catalog backuppiece '/cb_backup/s3mmfdml_9_1_7043.bak';
catalog backuppiece '/cb_backup/s4mmfkbu_1_1_7044.bak';
catalog backuppiece '/cb_backup/s5mmfkbu_1_1_7045.bak';

 

8、 修复数据库

RMAN> run {
allocate channel c1 type disk;
allocate channel c2 type disk;
allocate channel c3 type disk;
allocate channel c4 type disk;
restore database;
release channel c1;
release channel c2;
release channel c3;
release channel c4;
}

9、 FTP源库上的归档文件至目标主机上

a)     在源库上,归档文件存放在ASM上,因此首先需要将归档文件拷贝到本地文件系统上:
SQL> create or replace directory ARCH_DIR as '+flash/racdb/archivelog/2011_09_13';

b)     SQL> create or replace directory ARCL_DEST as '/xdbackup/cityb';

c)     SQL> BEGIN
SQL> dbms_file_transfer.copy_file(
SQL> source_directory_object =>'ARCH_DIR',
SQL> source_file_name => '
thread_2_seq_38337.1435.761786245',
SQL> destination_directory_object => 'ARCL_DEST',
SQL> destination_file_name => '
thread_2_seq_38337.1435.761786245');
SQL> END;
SQL> /

d)     把需要的归档文件都copy下来后,FTP到目标主机

10、         注册归档文件

SQL> catalog archivelog '/cb_backup/arch/thread_1_seq_68228.2464.761783913';
SQL> catalog archivelog '/cb_backup/arch/thread_1_seq_68229.976.761783957';
SQL> catalog archivelog '/cb_backup/arch/thread_1_seq_68230.1125.761784003';
SQL> catalog archivelog '/cb_backup/arch/thread_1_seq_68231.2838.761784049';
SQL> catalog archivelog '/cb_backup/arch/thread_1_seq_68232.2717.761784099';
………………………………………

11、         恢复数据库

RMAN> recover database;

12、         打开数据库

SQL> alter database open resetlogs;

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/25834554/viewspace-707616/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2011-09-02

  • 博文量
    52
  • 访问量
    320718