Standby veri tabanının oluşturulması
Adım 1:
PRIMARY DB de
vi /home/oracle/CreateStandbyDB.rcv –adında bir rman script oluşturulup aşağıdakiler eklenir.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
DUPLICATE TARGET DATABASE FOR STANDBY FROM ACTIVE DATABASE DORECOVER SPFILE SET DB_UNIQUE_NAME='erpsby' SET LOG_ARCHIVE_DEST_2='SERVICE=erpprm LGWR SYNC AFFIRM REGISTER VALID_FOR=(ONLINE_LOGFILE,PRIMARY_ROLE)' Set STANDBY_FILE_MANAGEMENT='AUTO' SET FAL_SERVER='erpprm' SET FAL_CLIENT='erpsby' SET CONTROL_FILES=’/Oracle/oradata/erp/control01.ctl’,’ /Oracle/fast_recovery_area/erp/control02.ctl’ NOFILENAMECHECK; |
Adım 2:
STANDBY DB de
nomount modda açılır.
1 2 3 |
sqlplus / as sysdba startup nomount |
Adım 3:
PRIMARY DB de
standby db yi rman dublicate ile oluşturuyoruz.
1 |
rman target / auxiliary sys/sys@erpsby cmdfile=/home/oracle/CreateStandbyDB.rcv log=/home/oracle/Log_CreateStandbyDB.log |
To view the operations as they execute: tail -f /home/oracle/Log_CreateStandbyDB.log
bu işlem sırasında
tail -f /home/oracle/Log_CreateStandbyDB.log –ile olup biteni izleyebilirsiniz.
hata ile karşılanırsa.
tnsping erpsby ile test edebilirsiniz. Tekrar rman komutunu çalıştırmanız gerekirse standby db de /Oracle/11G/dbs/ dizinine oluşturulmuş
spfileerp.ora yı silmeniz gerekebilir.
Adım 4:
crayon]
shutdown immediate;
startup
alter database add standby logfile group 4 size 100m;
alter database add standby logfile group 5 size 100m;
alter database add standby logfile group 6 size 100m;
alter database add standby logfile group 7 size 100m;
alter database recover managed standby database using current logfile disconnect;
[/crayon]
Control
1 2 3 4 5 |
!ps -ef | grep mrp oracle 471268 1 0 10:51:16 - 0:02 ora_mrp0_erp oracle 475150 270568 1 11:02:47 pts/0 0:00 grep mrp |
Durumu kontrol etmek için Views
Adım 1:
STANDBY DB de
1 2 3 4 5 6 7 8 9 10 11 12 13 |
alter database open ; select OPEN_MODE from V$DATABASE; select SWITCHOVER_STATUS,PROTECTION_MODE,DATABASE_ROLE from V$DATABASE; select STATUS, ERROR from V$ARCHIVE_DEST ; select PROTECTION_MODE from V$DATABASE; select SWITCHOVER_STATUS,OPEN_MODE from v$database ; select name, value, datum_time, time_COMPUTED from V$DATAGUARD_STATS where name like 'APPLY LAG' --the difference should be less than 30 seconds; |
Adım 2:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
select LOGGROUP.GROUP#, LOGGROUP.SEQUENCE#, LOGGROUP.ARCHIVED, LOGGROUP.STATUS, LOGDETAIL.TYPE from v$log loggroup join v$logfile logdetail on loggroup.GROUP# = logdetail.GROUP#; -- select loggroup.GROUP#, loggroup.SEQUENCE#, loggroup.archived, loggroup.status, logdetail.type from v$standby_log loggroup join v$logfile logdetail on loggroup.GROUP# = logdetail.GROUP#; |
Adım 3:
Standby DB de
1 |
SELECT SEQUENCE#, FIRST_TIME, NEXT_TIME FROM V$ARCHIVED_LOG ORDER BY SEQUENCE#; |
Primary DB de
1 |
ALTER SYSTEM SWITCH LOGFILE; |
Adım 4:
Standby DB de
1 2 3 |
select SEQUENCE#, FIRST_TIME, NEXT_TIME from V$ARCHIVED_LOG order by SEQUENCE#; select SEQUENCE#,APPLIED from V$ARCHIVED_LOG order by SEQUENCE#; |
Stanby db açıldıktan sonra kullanılması gereken komut;
1 |
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE DISCONNECT; |
Sonuç
Bu makale, fiziksel standby veritabanını başarıyla kurmanıza ve veritabanının yüksek kullanılabilirlik kriterlerinin yerine getirildiğinden emin olmanıza yardımcı olacaktır. Switchover ve Failover senaryolarını sonraki yazılarımızda anlatacağız ve yakında burada link verilecektir.
Yararlanılan kaynaklar :
http://docs.oracle.com/cd/E11882_01/backup.112/e10642.pdf
http://www.troug.org/?page_id=42 (Uğur İnal)
Create Standby Database using 11g DUPLICATE FROM ACTIVE DATABASE
Not : Bu makale hazırlanırken sadece open source yazılımlar kullanılmıştır ( ücretsiz, açık kaynak kodlu yazılımlar) ;
Host makine işletim sistemi Ubuntu 11.10 X64
Sanal Makine yazılımı VirtualBox 4.1.2
Dizayn Dia
Text editör Gedit&Open ofis
Sorgular
13 Mart 2019