1、配置RAC (ASM) + DATA GUARD (FILE SYSTEM)+ RMAN建库 一. 检查数据库要处于归档模式. SQL> archive log list; Database log mode No Archive Mode Automatic archival Disabled Archive destination USE_DB_RECOVERY_FILE_DEST Oldest online log sequence 11 Current log sequence
2、 12 SQL> 1> 修改数据库为归档模式(RAC 环境) 1. 停止数据库 srvctl stop database -d ORCLA 2. 第一个实例启动到mount 状态. srvctl start instance -d ORCLA -i ORCLA1 shutdown immediate; startup mount; SQL> archive log list Database log mode No Archive Mode Automatic archival
3、 Disabled Archive destination USE_DB_RECOVERY_FILE_DEST Oldest online log sequence 11 Current log sequence 12 SQL> shutdown immediate; Database closed. Database dismounted. ORACLE instance shut down. SQL> startup mount ORACLE instance started. Total System Global
4、 Area 1224736768 bytes Fixed Size 2072352 bytes Variable Size 285212896 bytes Database Buffers 922746880 bytes Redo Buffers 14704640 bytes Database mounted. SQL> alter database archivelog; Database altered. SQL> alter database open; Databa
5、se altered. 3. 启动第二个实例 [oracle@rac1 ~]$ srvctl start instance -d racdb -i racdb2 [oracle@rac1 ~]$ srvctl start service -d racdb -s testdb [oracle@rac1 ~]$ crs_stat -t 二: 检查是否为 force logging . 1. SQL> select inst_id , force_logging from gv$database; INST_ID FOR
6、 ---------- --- 1 NO 2 NO 2. 修改数据库为 force logging SQL> alter database force logging; Database altered. note : 只需要在一个instance 执行即可. 三. 修改参数 1. Create pfile from spfile; orcla1.__db_cache_size=390070272 orcla2.__db_cache_size=390070272 orcla1.__java_pool_size=4
7、194304 orcla2.__java_pool_size=4194304 orcla1.__large_pool_size=4194304 orcla2.__large_pool_size=4194304 orcla1.__shared_pool_size=205520896 orcla2.__shared_pool_size=205520896 orcla1.__streams_pool_size=0 orcla2.__streams_pool_size=0 *.audit_file_dest='C:\oracle\product\10.2.0/admin/orcla/a
8、dump' *.background_dump_dest='C:\oracle\product\10.2.0/admin/orcla/bdump' *.cluster_database_instances=2 *.cluster_database=true *.compatible='10.2.0.1.0' *.control_files='+ASM/orcla/controlfile/current.260.733500285' *.core_dump_dest='C:\oracle\product\10.2.0/admin/orcla/cdump' *.db_block_si
9、ze=8192 *.db_create_file_dest='+ASM' *.db_domain='' *.db_file_multiblock_read_count=16 *.db_name='orcla' *.dispatchers='(PROTOCOL=TCP) (SERVICE=orclaXDB)' orcla1.instance_number=1 orcla2.instance_number=2 *.job_queue_processes=10 *.nls_language='SIMPLIFIED CHINESE' *.nls_territory='CHINA'
10、 *.open_cursors=300 *.pga_aggregate_target=203423744 *.processes=150 *.remote_listener='LISTENERS_ORCLA' *.remote_login_passwordfile='exclusive' *.sga_target=612368384 orcla2.thread=2 orcla1.thread=1 *.undo_management='AUTO' orcla1.undo_tablespace='UNDOTBS1' orcla2.undo_tablespace='UNDOTBS
11、2' *.user_dump_dest='C:\oracle\product\10.2.0/admin/orcla/udump' *.log_archive_config='dg_config=(orcla,orcldg)' *.db_unique_name='orcla' *.log_archive_dest_1='location=+asm\orcla\arch VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=orcla' *.log_archive_dest_2='service=orcldg lgwr async VALI
12、D_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=orcldg' *.log_archive_dest_state_1=enable *.log_archive_dest_state_2=enable *.LOG_ARCHIVE_FORMAT='%t_%s_%r.arc' *.log_archive_max_processes=1 *.fal_client='orcla1','orcla2' *.fal_server='orcldg' *.DB_FILE_NAME_CONVERT='+ASM/ORCLA/datafile','C:\ora
13、cle\product\10.2.0\oradata\orcldg' *.LOG_FILE_NAME_CONVERT='+asm/orcla/onlinelog/','c:\oracle\product\10.2.0\oradata\orcldg','+asm/orcla/arch/','c:\oracle\product\10.2.0\flash_recovery_area\ORCLDG\ONLINELOG' *.standby_file_management=auto 2. 使用新参数启动 关闭两个实例 shutdown immediate; 启动一个 :startup
14、pfile=’c:\pfile.ora’ 3. RMAN备份 sql 'alter system archive log current' ; backup as compressed backupset full format='c:\backupset-%d_%s.bak' database include current controlfile for standby plus archivelog ; 这里包含了controlfile ,这样恢复最简单! 4.配置主库tnsnames 5. 将密码文件,备份文件拷贝到备库相应的目录(目录不能错) 四.配置备库 1.o
15、radim -new -sid orcla (sid要和主库一样) 2. 配置主库tnsnames,listenner ,确保tnsping能通。 3.从主库copy修改pfile orcla.__db_cache_size=390070272 orcla.__java_pool_size=4194304 orcla.__large_pool_size=4194304 orcla.__shared_pool_size=205520896 orcla.__streams_pool_size=0 *.audit_file_dest='C:\oracle\product\10
16、2.0/admin/orcldg/adump' *.background_dump_dest='C:\oracle\product\10.2.0/admin/orcldg/bdump' *.compatible='10.2.0.1.0' *.control_files='C:\oracle\product\10.2.0\oradata\orcldg\control01.ctl','C:\oracle\product\10.2.0\oradata\orcldg\control02.ctl','C:\oracle\product\10.2.0\oradata\orcldg\control0
17、3.ctl' *.core_dump_dest='C:\oracle\product\10.2.0/admin/orcldg/cdump' *.db_block_size=8192 *.db_create_file_dest='C:\oracle\product\10.2.0\oradata\orcldg\' *.db_domain='' *.db_file_multiblock_read_count=16 *.db_name='orcla' *.dispatchers='(PROTOCOL=TCP) (SERVICE=orclaXDB)' *.job_queue_proces
18、ses=10 *.nls_language='SIMPLIFIED CHINESE' *.nls_territory='CHINA' *.open_cursors=300 *.pga_aggregate_target=203423744 *.processes=150 *.remote_login_passwordfile='exclusive' *.undo_tablespace='UNDOTBS1' *.sga_target=612368384 *.undo_management='AUTO' *.user_dump_dest='C:\oracle\product\10
19、2.0/admin/orcldg/udump' *.log_archive_config='dg_config=(orcla,orcldg)' *.db_unique_name='orcldg' *.log_archive_dest_1='location=c:\oracle\product\10.2.0\flash_recovery_area\ORCLDG\ONLINELOG VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=orcldg' *.log_archive_dest_2='service=orcla1 lgwr asyn
20、c VALID_FOR=(online_LOGFILES,PRIMARY_ROLES) DB_UNIQUE_NAME=orcla' *.log_archive_dest_state_1=enable *.log_archive_dest_state_2=enable *.LOG_ARCHIVE_FORMAT='%t_%s_%r.arc' *.log_archive_max_processes=1 *.fal_client='orcldg' *.fal_server='orcla1','orcla2' *.DB_FILE_NAME_CONVERT='+ASM/ORCLA/data
21、file/','C:\oracle\product\10.2.0\oradata\orcldg\' *.LOG_FILE_NAME_CONVERT='+asm/orcla/onlinelog/','c:\oracle\product\10.2.0\oradata\orcldg\','+asm/orcla/arch/','c:\oracle\product\10.2.0\flash_recovery_area\ORCLDG\ONLINELOG\' *.standby_file_management=auto 注意: RAC将全部的文件放在ASM上,备库是在文件系统 ,所以要CONVE
22、RT,如何在ASM上没对应的目录要先创建,在备库上也要创建相应的目录udump、ddump …. 等 在这里,DB_FILE_NAME_CONVERT LOG_FILE_NAME_CONVERT 4.备库执行恢复 Startup pfile=’c:\pfile.ora’ nomount; Set oracle_sid=orcla rman target sys/xxx@主库 auxiliary sys/xxx@附库 duplicate target database for standby dorecover nofilenamecheck ; 如果恢复成功,配置基本完成,之后再 create spfile from pfile






