oracle rac standby,oracle RAC数据库建立STANDBY(二)
這篇文章描述為RAC環境創建STANDBY數據庫。
由于篇幅限制,加上碰到了很多的bug,只能將文章拆分成多篇。
這章介紹STANDBY數據庫創建的后續操作,并檢查STANDBY運行機制:
首先登陸實例,檢查數據庫狀態:
bash-3.00$ sqlplus "/ as sysdba"
SQL*Plus: Release 11.1.0.6.0 - Production on Wed Sep 10 13:56:13 2008
Copyright (c) 1982, 2007, Oracle. ?All rights reserved.
Connected to:
Oracle Database11gEnterprise Edition Release 11.1.0.6.0 - 64bit Production
With the Partitioning, Real Application Clusters, OLAP, Data Mining
and Real Application Testing options
SQL> select instance_name, status from v$instance;
INSTANCE_NAME ? ?STATUS
---------------- ------------
rac11g1 ? ? ? ? ?MOUNTED
SQL> select name,
2 ? ? open_mode,
3 ? ? database_role,
4 ? ? guard_status,
5 ? ? db_unique_name,
6 ? ? primary_db_unique_name
7 ?from v$database;
NAME ? ? ?OPEN_MODE ?DATABASE_ROLE ? ?GUARD_S DB_UNIQUE_NAME ?PRIMARY_DB_UNIQUE_NAME
--------- ---------- ---------------- ------- --------------- -----------------------
RAC11G ? ?MOUNTED ? ?PHYSICAL STANDBY NONE ? ?rac11g_s
下面可以將數據庫至于應用歸檔的狀態:
SQL> alter database recover managed standby database
2 ?disconnect from session;
Database altered.
下面檢查歸檔的是否可以正常發送到STANDBY數據庫:
SQL> select sequence#, thread# from v$archived_log order by first_time;
no rows selected
SQL> conn sys/test@rac11gas sysdba
Connected.
SQL> alter system archive log current;
System altered.
SQL> conn / as sysdba
Connected.
SQL> select sequence#, thread# from v$archived_log order by first_time;
SEQUENCE# ? ?THREAD#
---------- ----------
533 ? ? ? ? ?1
198 ? ? ? ? ?2
SQL> select sequence#, thread#, applied from v$archived_log order by first_time;
SEQUENCE# ? ?THREAD# APP
---------- ---------- ---
532 ? ? ? ? ?1 YES
533 ? ? ? ? ?1 NO
198 ? ? ? ? ?2 YES
可以看到,兩個數據庫實例的歸檔日志文件已經發送到本地節點,而且LGWR進程已經將正在寫的當前日志文件533寫到了本地。
數據庫的STANTDBY機制已經正常運行,下面看看能否將STANDBY數據庫的兩個實例以只讀方式打開:
SQL> alter database recover managed standby database cancel;
Database altered.
SQL> alter database open;
Database altered.
SQL> select instance_name, status from v$instance;
INSTANCE_NAME ? ?STATUS
---------------- ------------
rac11g1 ? ? ? ? ?OPEN
SQL> select name,
2 ? ? open_mode,
3 ? ? database_role,
4 ? ? guard_status,
5 ? ? db_unique_name,
6 ? ? primary_db_unique_name
7 ?from v$database;
NAME ? ? ?OPEN_MODE ?DATABASE_ROLE ? ?GUARD_S DB_UNIQUE_NAME ?PRIMARY_DB_UNIQUE_NAME
--------- ---------- ---------------- ------- --------------- -----------------------
RAC11G ? ?READ ONLY ?PHYSICAL STANDBY NONE ? ?rac11g_s ? ? ? ?rac11g
由于SPFILE目前在本地,需要創建一個ASM上面的參數文件:
SQL> create pfile='/export/home/oracle/initrac11g.ora' from spfile;
File created.
SQL> create spfile='+DATA/RAC11G/spfilerac11g.ora'
2 ?from pfile='/export/home/oracle/initrac11g.ora';
File created.
下面分別編輯兩個節點的$ORACLE_HOME/dbs目錄下的初始化參數,使得spfile指向這個剛剛創建的spfile文件:
spfile=+DATA/RAC11G/spfilerac11g.ora
下面登陸節點二,嘗試打開第二個實例:
$ sqlplus "/ as sysdba"
SQL*Plus: Release 11.1.0.6.0 - Production on星期三9月10 14:53:09 2008
Copyright (c) 1982, 2007, Oracle. ?All rights reserved.
已連接到空閑例程。
SQL> startup
ORACLE例程已經啟動。
Total System Global Area 1.7108E+10 bytes
Fixed Size ? ? ? ? ? ? ? ? ?2101632 bytes
Variable Size ? ? ? ? ? ?3478638208 bytes
Database Buffers ? ? ? ? 1.3623E+10 bytes
Redo Buffers ? ? ? ? ? ? ? ?4431872 bytes
數據庫裝載完畢。
數據庫已經打開。
SQL> set pages 100 lines 120
SQL> select instance_name, status from v$instance;
INSTANCE_NAME ? ?STATUS
---------------- ------------
rac11g2 ? ? ? ? ?OPEN
SQL> select instance_name, status from gv$instance;
INSTANCE_NAME ? ?STATUS
---------------- ------------
rac11g2 ? ? ? ? ?OPEN
rac11g1 ? ? ? ? ?OPEN
SQL> select name,
2 ? ? open_mode,
3 ? ? database_role,
4 ? ? guard_status,
5 ? ? db_unique_name,
6 ? ? primary_db_unique_name
7 ?from v$database;
NAME ? ? ?OPEN_MODE ?DATABASE_ROLE ? ?GUARD_S DB_UNIQUE_NAME ?PRIMARY_DB_UNIQUE_NAME
--------- ---------- ---------------- ------- --------------- ----------------------
RAC11G ? ?READ ONLY ?PHYSICAL STANDBY NONE ? ?rac11g_s ? ? ? ?rac11g
從10g以后,不需要指定MOUNT STANDBY數據庫,也不需要指定OPEN READ ONLY,Oracle自動會裝載STANDBY數據庫,并將實例以READ ONLY方式進行打開。
下面設置一下TEMP表空間:
SQL> alter database tempfile '+DATA/RAC11G/rac11g_temp_1_4g' drop;
Database altered.
SQL> alter tablespace temp add tempfile '+DATA/RAC11G/rac11g_temp_1_4g' size4096m;
Tablespace altered.
至此RAC環境的STANDBY已經成功建立。從下一篇開始,介紹在STANDBY數據庫創建過程中碰到的各種問題和解決方法。
總結
以上是生活随笔為你收集整理的oracle rac standby,oracle RAC数据库建立STANDBY(二)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: cocos2d c 调用java_coc
- 下一篇: mysql时长用什么类型_MySQL 日