Rman Backup-Restore Yöntemi ile Standby Kurulumu

Datagurad kurulumu ile ilgili olarak bir çok arkadaşım farklı biir takım yöntemlerle dataguard kurulumlarından bahsetmişti. Dolayısıyla nette böylebir konuyuaraştırmak istediğinizde fazlasıyla gerek türkçe grekçe ingilizce kaynak bulabilirsiniz. Sayısı her ne kadar yeterli olmasada nihayat bu konuda artık Türkçe dökümanlarada ulaşabilir duruma geldik. Çalışmış olduğum kurumda aşağıdaki işlemlerin testlerini, production kurulumlarını yapan ve araştırmacı yapılarından dolayı teşşekkür etmek istediğim çalışma arkadaşım var. Altan (Karaman) beraber yaklaşık 5 yıldır birlikte çalışıyoruz ve genel olarak yaptığımız her projeyi dökümante etmeye çalışıyoruz. İlk başlarda dökümantasyona bu kadar gerek olup olmadığını her ne kadar sorgulamış olsakda sonrasında farkettik ki , bu bizim iş yapış şeklimizi, süremizi olumlu anlamda çok ciddi şekilde etkilediğini gördük. Dolayısıyla nacizane sektöre yeni girmiş olan veya halihazırda çalışan arkadaşlarıma önerim mutlaka yaptıklarınızı dökümante edin.

Kurulumla ilgili adımların detaylarını aşağıda bulabilirsiniz;

1 – Production Veritabanındaki Mevcut Backupların Kontrolü

* Veritabanında alınan son backup bilgileri rman ile kontrol edilir.

oracle@Node1:/u01> rman target / rcvcat rmanuser/XXXXX@RMAN_CATALOG
Recovery Manager: Release 11.2.0.2.0 – Production on Wed Dec 5 10:44:08 2012
Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.
connected to target database: PROD1 (DBID=447362322)
connected to recovery catalog database

RMAN> list backupset COMPLETED AFTER ‘SYSDATE-1’;
……
……
……
BS Key Type LV Size Device Type Elapsed Time Completion Time
——- —- — ———- ———– ———— —————
1236830 Full 15.25M SBT_TAPE 00:00:51 05-DEC-12
BP Key: 1236844 Status: AVAILABLE Compressed: NO Tag: TAG20121205T081216
Handle: f-547462352-50521255-02 Media: 002076
SPFILE Included: Modification time: 05-DEC-12
SPFILE db_unique_name: PROD1
Control File Included: Ckp SCN: 103479315383 Ckp time: 05-DEC-12

Dataguardı hangi backupdan döneceğimize karar verdikden sonra artık işlemlerimize başlayabiliriz.

2 – Standby Veritabanının Restore İçin Hazırlanması

* Production veritabanından init.ora kopyalanarak standby için gerekli değişiklikler yapılır. Örneğin db_unique_name , gerekliyse log_file_convert parametreleri set edilir. Spfile oluşturulur.

* Standby node üzerinden Production database’ inin catalog’una bağlanılır.

oracle@Node2:~/db/11.2.0/dbs> rman target / rcvcat PROD1/xxxxxxxx@RMAN_CATALOG
Recovery Manager: Release 11.2.0.2.0 – Production on Wed Dec 5 11:43:17 2012
Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.
connected to target database (not started)
connected to recovery catalog database

* Veritabanı nomunt modda start edilir.

RMAN> STARTUP FORCE NOMOUNT
Oracle instance started
Total System Global Area 74826371072 bytes
Fixed Size 2234296 bytes
Variable Size 20401096776 bytes
Database Buffers 54223962112 bytes
Redo Buffers 199077888 bytes

* Production database’ inin Dbid’ si set edilir.

RMAN> set dbid=447362322
executing command: SET DBID
database name is “PROD1” and DBID is 447362322

* Controlfile backuptan restore edilir.

RMAN> RUN
{
ALLOCATE CHANNEL ch00 DEVICE TYPE sbt_tape PARMS=’ENV=(SBT_LIBRARY=/u01/oracle/db/11.2.0/lib/libobk.a, NB_ORA_CLIENT=Node1, NB_ORA_SERV=veritas)’;
RESTORE CONTROLFILE FROM TAG ‘TAG20121205T081216’;
}
allocated channel: ch00
channel ch00: SID=1653 device type=SBT_TAPE
channel ch00: Veritas NetBackup for Oracle – Release 7.0 (3020080900)

Starting restore at 05-DEC-12
channel ch00: starting datafile backup set restore
channel ch00: restoring control file
channel ch00: reading from backup piece f-547462352-50521255-02
channel ch00: piece handle=f-547462352-50521255-02 tag=TAG20121205T081216
channel ch00: restored backup piece 1
channel ch00: restore complete, elapsed time: 00:04:05
output file name=/oradata/PROD1/controlfile/control01.ctl
output file name=/oradata/PROD1/controlfile/control02.ctl
output file name=/oradata/PROD1/controlfile/control03.ctl
Finished restore at 05-DEC-12
released channel: ch00

3- Veritabanının Standby Tarafında Restore Edilmesi

* Rman’e catalog’a bağlanmadan girilir. (Datafile restore işlemini yapmak için catalog’dan çıkıp Rman’ e tekrar bağlanıyoruz. )

oracle@Node2:~> rman target / nocatalog
Recovery Manager: Release 11.2.0.2.0 – Production on Wed Dec 5 15:29:30 2012
Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.

connected to target database (not started)

* Veritabanı mount modda açılır.

RMAN> startup force mount;
Oracle instance started
database mounted
Total System Global Area 74826371072 bytes

Fixed Size 2234296 bytes
Variable Size 20401096776 bytes
Database Buffers 54223962112 bytes
Redo Buffers 199077888 bytes

* Veritabanını restore işlemi başlatılır

RMAN> RUN
{
ALLOCATE CHANNEL ch0 DEVICE TYPE sbt_tape PARMS=’ENV=(SBT_LIBRARY=/u01/oracle/db/11.2.0/lib/libobk.a, NB_ORA_CLIENT=Node1, NB_ORA_SERV=veritas)’;
ALLOCATE CHANNEL ch1 DEVICE TYPE sbt_tape PARMS=’ENV=(SBT_LIBRARY=/u01/oracle/db/11.2.0/lib/libobk.a, NB_ORA_CLIENT=Node1, NB_ORA_SERV=veritas)’;
ALLOCATE CHANNEL ch2 DEVICE TYPE sbt_tape PARMS=’ENV=(SBT_LIBRARY=/u01/oracle/db/11.2.0/lib/libobk.a, NB_ORA_CLIENT=Node1, NB_ORA_SERV=veritas)’;
ALLOCATE CHANNEL ch3 DEVICE TYPE sbt_tape PARMS=’ENV=(SBT_LIBRARY=/u01/oracle/db/11.2.0/lib/libobk.a, NB_ORA_CLIENT=Node1, NB_ORA_SERV=veritas)’;
ALLOCATE CHANNEL ch4 DEVICE TYPE sbt_tape PARMS=’ENV=(SBT_LIBRARY=/u01/oracle/db/11.2.0/lib/libobk.a, NB_ORA_CLIENT=Node1, NB_ORA_SERV=veritas)’;
ALLOCATE CHANNEL ch5 DEVICE TYPE sbt_tape PARMS=’ENV=(SBT_LIBRARY=/u01/oracle/db/11.2.0/lib/libobk.a, NB_ORA_CLIENT=Node1, NB_ORA_SERV=veritas)’;
ALLOCATE CHANNEL ch6 DEVICE TYPE sbt_tape PARMS=’ENV=(SBT_LIBRARY=/u01/oracle/db/11.2.0/lib/libobk.a, NB_ORA_CLIENT=Node1, NB_ORA_SERV=veritas)’;
ALLOCATE CHANNEL ch7 DEVICE TYPE sbt_tape PARMS=’ENV=(SBT_LIBRARY=/u01/oracle/db/11.2.0/lib/libobk.a, NB_ORA_CLIENT=Node1, NB_ORA_SERV=veritas)’;
ALLOCATE CHANNEL ch8 DEVICE TYPE sbt_tape PARMS=’ENV=(SBT_LIBRARY=/u01/oracle/db/11.2.0/lib/libobk.a, NB_ORA_CLIENT=Node1, NB_ORA_SERV=veritas)’;
ALLOCATE CHANNEL ch9 DEVICE TYPE sbt_tape PARMS=’ENV=(SBT_LIBRARY=/u01/oracle/db/11.2.0/lib/libobk.a, NB_ORA_CLIENT=Node1, NB_ORA_SERV=veritas)’;
RESTORE DATABASE FROM TAG ‘PROD1PROD_20121205’;
SWITCH DATAFILE ALL;
RELEASE CHANNEL ch0;
RELEASE CHANNEL ch1;
RELEASE CHANNEL ch2;
RELEASE CHANNEL ch3;
RELEASE CHANNEL ch4;
RELEASE CHANNEL ch5;
RELEASE CHANNEL ch6;
RELEASE CHANNEL ch7;
RELEASE CHANNEL ch8;
RELEASE CHANNEL ch9;
}
allocated channel: ch0
channel ch0: SID=1653 device type=SBT_TAPE
channel ch0: Veritas NetBackup for Oracle – Release 7.0 (3020080900)
……
……
allocated channel: ch9
channel ch9: SID=2184 device type=SBT_TAPE
channel ch9: Veritas NetBackup for Oracle – Release 7.0 (3020080900)

Starting restore at 05-DEC-12

channel ch0: starting datafile backup set restore
channel ch0: specifying datafile(s) to restore from backup set
channel ch0: restoring datafile 00003 to /u12/oradata/PROD1/dbf/UNDOTBS2_03.dbf
….
….
channel ch8: restoring datafile 00043 to /u12/oradata/PROD1/dbf/PROD1_ lob01.dbf
….
….
channel ch7: restore complete, elapsed time: 01:50:60
Finished restore at 05-DEC-12
released channel: ch0
released channel: ch1
released channel: ch2
released channel: ch3
released channel: ch4
released channel: ch5
released channel: ch6
released channel: ch7
released channel: ch8
released channel: ch9

4- Standby Managed Recovery İşleminin Başlatılması

* Recover işlemi cancel edilmek üzere başlatılır. (Asıl recovery Standby tarafından managed recovery başlatılarak yapılacak bu yüzden hatalar dikkate alınmamalıdır)

SQL> RECOVER DATABASE UNTIL CANCEL USING BACKUP CONTROLFILE
ORA-00279: change 103458069948 generated at 12/05/2012 00:57:56 needed for thread 1
ORA-00289: suggestion : /oradata/PROD1/arch/PROD1_1_35773_780437663.arc
ORA-00280: change 103458069948 for thread 1 is in sequence #35773

Specify log: {=suggested | filename | AUTO | CANCEL}
/ORA-00279: change 103458407374 generated at 12/05/2012 01:04:38 needed for thread 1
ORA-00289: suggestion : /oradata/PROD1/arch/PROD1_1_35774_780437663.arc
ORA-00280: change 103458407374 for thread 1 is in sequence #35774
ORA-00278: log file ‘/oradata/PROD1/arch/PROD1_1_35773_780437663.arc’ no longer needed for this recovery

* Veritabanı kapatılır

SQL> shu immediate
ORA-01109: database not open
Database dismounted.
ORACLE instance shut down.

* Primary veritabanında standby için controlfile oluşturulur.

SQL> ALTER DATABASE CREATE STANDBY CONTROLFILE AS ‘/u01/stby_control.ctl’;

* Standby controlfile standby veritabanına atılarak mevcut controlfile’larının yerine konur.

oracle@Node1:/u01> scp /u01/stby_control.ctl oracle@Node2:/u01/.
oracle@Node2:/u01> cp /u01/stby_control.ctl /oradata/PROD1/controlfile/
oracle@Node2:/u01> cp /oradata/PROD1/controlfile/control01.ctl /oradata/PROD1/controlfile/control01.ctl_old
oracle@Node2:/u01> mv /oradata/PROD1/controlfile/stby_control.ctl /oradata/PROD1/controlfile/ control01.ctl
Yukarıdaki işlem tüm controlfile’ ler için de yapılır.

* Standby controlfile ile veritabanı tekrar mount edilir.

SQL> startup mount
ORACLE instance started.
Total System Global Area 7.4826E+10 bytes
Fixed Size 2234296 bytes
Variable Size 2.0401E+10 bytes
Database Buffers 5.4224E+10 bytes
Redo Buffers 199077888 bytes
Database mounted.

* Standby recovery başlatılır.

SQL> alter database recover managed standby database disconnect from session;
Database altered.

* RFS ve MRP process’ler kontrol edilir.

SQL> select process, status, sequence# from v$managed_standby;
PROCESS STATUS SEQUENCE#
——— ———— ———-
ARCH CONNECTED 0
ARCH CONNECTED 0
ARCH CONNECTED 0
ARCH CONNECTED 0
ARCH CONNECTED 0
ARCH CONNECTED 0
ARCH CONNECTED 0
ARCH CONNECTED 0
ARCH CONNECTED 0
ARCH CONNECTED 0
MRP0 WAIT_FOR_GAP 35775
RFS IDLE 0
RFS IDLE 0
RFS IDLE 0

14 rows selected.

Artık dataguardımız kullanıma hazır.

Be Sociable, Share!

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir


yedi + 9 =