您好,登錄后才能下訂單哦!
Oracle Study之--Oracle RAC重建控制文件
系統環境:
操作系統: AIX5.3
Cluster: Oracle 10gR2 CRS
Oracle: Oracle 10gR2
在RAC環境下重建控制文件和在單實例上類似,只是有些步驟需要注意:
[oracle@aix211 ~]$cat mkln.sh ln -s /dev/rsystem /u01/app/oracle/oradata/prod/system01.dbf ln -s /dev/rsysaux /u01/app/oracle/oradata/prod/sysaux01.dbf ln -s /dev/rusers /u01/app/oracle/oradata/prod/users01.dbf ln -s /dev/rundotbs1 /u01/app/oracle/oradata/prod/undotbs01.dbf ln -s /dev/rundotbs2 /u01/app/oracle/oradata/prod/undotbs02.dbf ln -s /dev/rtemp /u01/app/oracle/oradata/prod/temp01.dbf ln -s /dev/rcontrol1_1 /u01/app/oracle/oradata/prod/control01.ctl ln -s /dev/rcontrol2_2 /u01/app/oracle/oradata/prod/control02.ctl ln -s /dev/rcontrol3_3 /u01/app/oracle/oradata/prod/control03.ctl ln -s /dev/rredo1_1 /u01/app/oracle/oradata/prod/log11.log ln -s /dev/rredo1_2 /u01/app/oracle/oradata/prod/log12.log ln -s /dev/rredo2_1 /u01/app/oracle/oradata/prod/log21.log ln -s /dev/rredo2_2 /u01/app/oracle/oradata/prod/log22.log ln -s /dev/rindex /u01/app/oracle/oradata/prod/index01.dbf ln -s /dev/rspfile /u01/app/oracle/oradata/prod/spfile01 ln -s /dev/rexample /u01/app/oracle/oradata/prod/example01.dbf
Database存儲在在RAW上。
1、首先在一個節點備份controlfile
[oracle@aix201 ~]$sqlplus '/as sysdba' SQL*Plus: Release 10.2.0.1.0 - Production on Mon Mar 23 16:16:07 2015 Copyright (c) 1982, 2005, Oracle. All rights reserved. Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit Production With the Partitioning, Real Application Clusters, OLAP and Data Mining options SQL> select status from v$instance; STATUS ------------ OPEN SQL> alter database backup controlfile to trace; Database altered.
2、查看控制文件的trace備份(udump)
CREATE CONTROLFILE REUSE DATABASE "PROD" NORESETLOGS NOARCHIVELOG MAXLOGFILES 192 MAXLOGMEMBERS 3 MAXDATAFILES 1024 MAXINSTANCES 32 MAXLOGHISTORY 292 LOGFILE GROUP 1 '/u01/app/oracle/oradata/prod/log11.log' SIZE 50M, GROUP 2 '/u01/app/oracle/oradata/prod/log12.log' SIZE 50M, GROUP 3 '/u01/app/oracle/oradata/prod/log21.log' SIZE 50M, GROUP 4 '/u01/app/oracle/oradata/prod/log22.log' SIZE 50M -- STANDBY LOGFILE DATAFILE '/u01/app/oracle/oradata/prod/system01.dbf', '/u01/app/oracle/oradata/prod/undotbs01.dbf', '/u01/app/oracle/oradata/prod/sysaux01.dbf', '/u01/app/oracle/oradata/prod/users01.dbf', '/u01/app/oracle/oradata/prod/example01.dbf', '/u01/app/oracle/oradata/prod/undotbs02.dbf' CHARACTER SET ZHS16GBK ;
3、關閉database,啟動其中一個instance到弄mount
SQL> startup nomount; ORACLE instance started. Total System Global Area 612368384 bytes Fixed Size 2022832 bytes Variable Size 184549968 bytes Database Buffers 423624704 bytes Redo Buffers 2170880 bytes SQL> @/home/oracle/cr_ctr.sql CREATE CONTROLFILE REUSE DATABASE "PROD" NORESETLOGS NOARCHIVELOG * ERROR at line 1: ORA-01503: CREATE CONTROLFILE failed ORA-12720: operation requires database is in EXCLUSIVE mode SQL> show parameter cluster NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ cluster_database boolean TRUE cluster_database_instances integer 2 cluster_interconnects string ---創建失敗,原因是在RAC下控制文件時處于共享(share)模式,需啟動到獨立(exclusive)模式,才能重建;修改cluster_database 為false,然后重建
重新建立控制文件:
SQL> alter system set cluster_database =false scope=spfile; System altered. SQL> startup nomount ORACLE instance started. Total System Global Area 612368384 bytes Fixed Size 2022832 bytes Variable Size 184549968 bytes Database Buffers 423624704 bytes Redo Buffers 2170880 bytes SQL> show parameter cluster NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ cluster_database boolean FALSE cluster_database_instances integer 1 cluster_interconnects string SQL> @/home/oracle/cr_ctr.sql Control file created. 告警日志: alter.log: Mon Mar 23 16:41:00 2015 CREATE CONTROLFILE REUSE DATABASE "PROD" NORESETLOGS NOARCHIVELOG MAXLOGFILES 192 MAXLOGMEMBERS 3 MAXDATAFILES 1024 MAXINSTANCES 32 MAXLOGHISTORY 292 LOGFILE GROUP 1 '/u01/app/oracle/oradata/prod/log11.log' SIZE 50M, GROUP 2 '/u01/app/oracle/oradata/prod/log12.log' SIZE 50M, GROUP 3 '/u01/app/oracle/oradata/prod/log21.log' SIZE 50M, GROUP 4 '/u01/app/oracle/oradata/prod/log22.log' SIZE 50M -- STANDBY LOGFILE DATAFILE '/u01/app/oracle/oradata/prod/system01.dbf', '/u01/app/oracle/oradata/prod/undotbs01.dbf', '/u01/app/oracle/oradata/prod/sysaux01.dbf', '/u01/app/oracle/oradata/prod/users01.dbf', '/u01/app/oracle/oradata/prod/example01.dbf', '/u01/app/oracle/oradata/prod/undotbs02.dbf' CHARACTER SET ZHS16GBK Mon Mar 23 16:41:00 2015 WARNING: Default Temporary Tablespace not specified in CREATE DATABASE command Default Temporary Tablespace will be necessary for a locally managed database in future release WARNING: You are creating/reusing datafile /u01/app/oracle/oradata/prod/control01.ctl. WARNING: Oracle recommends creating new datafiles on devices with zero offset. The command "/usr/sbin/mklv -y LVname -T O -w n -s n -r n VGname NumPPs" can be used. Please contact Oracle customer support for more details. WARNING: You are creating/reusing datafile /u01/app/oracle/oradata/prod/control01.ctl. WARNING: Oracle recommends creating new datafiles on devices with zero offset. The command "/usr/sbin/mklv -y LVname -T O -w n -s n -r n VGname NumPPs" can be used. Please contact Oracle customer support for more details. WARNING: You are creating/reusing datafile /u01/app/oracle/oradata/prod/control02.ctl. WARNING: Oracle recommends creating new datafiles on devices with zero offset. The command "/usr/sbin/mklv -y LVname -T O -w n -s n -r n VGname NumPPs" can be used. Please contact Oracle customer support for more details. WARNING: You are creating/reusing datafile /u01/app/oracle/oradata/prod/control02.ctl. WARNING: Oracle recommends creating new datafiles on devices with zero offset. The command "/usr/sbin/mklv -y LVname -T O -w n -s n -r n VGname NumPPs" can be used. Please contact Oracle customer support for more details. Setting recovery target incarnation to 1 Mon Mar 23 16:41:05 2015 Successful mount of redo thread 1, with mount id 286981148 Mon Mar 23 16:41:05 2015 Completed: CREATE CONTROLFILE REUSE DATABASE "PROD" NORESETLOGS NOARCHIVELOG MAXLOGFILES 192 MAXLOGMEMBERS 3 MAXDATAFILES 1024 MAXINSTANCES 32 MAXLOGHISTORY 292 LOGFILE GROUP 1 '/u01/app/oracle/oradata/prod/log11.log' SIZE 50M, GROUP 2 '/u01/app/oracle/oradata/prod/log12.log' SIZE 50M, GROUP 3 '/u01/app/oracle/oradata/prod/log21.log' SIZE 50M, GROUP 4 '/u01/app/oracle/oradata/prod/log22.log' SIZE 50M -- STANDBY LOGFILE DATAFILE '/u01/app/oracle/oradata/prod/system01.dbf', '/u01/app/oracle/oradata/prod/undotbs01.dbf', '/u01/app/oracle/oradata/prod/sysaux01.dbf', '/u01/app/oracle/oradata/prod/users01.dbf', '/u01/app/oracle/oradata/prod/example01.dbf', '/u01/app/oracle/oradata/prod/undotbs02.dbf' CHARACTER SET ZHS16GBK
4、重建成功,啟動到open
SQL> select status from v$instance; STATUS ------------ MOUNTED SQL> alter database open; Database altered. 添加臨時表空間數據文件: SQL> select name from v$tempfile; no rows selected SQL> select tablespace_name from dba_tablespaces; TABLESPACE_NAME ------------------------------ SYSTEM UNDOTBS1 SYSAUX TEMP USERS UNDOTBS2 EXAMPLE 7 rows selected. SQL> alter tablespace temp add 2 tempfile '/u01/app/oracle/oradata/prod/temp01.dbf' size 100m reuse; Tablespace altered. SQL> select name from v$tempfile; NAME -------------------------------------------------------------------------------- /u01/app/oracle/oradata/prod/temp01.dbf
5、修改cluster_database參數,啟動所有instance
SQL> alter system set cluster_database =true scope=spfile; System altered.
啟動所有Instance,如果所有instance啟動成功,則controlfile重建成功。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。