Oracle Dataguard Installation-1

Selamlar,bu yazı da Dataguard kurulum ve konfigürasyon konusuna değinmek istedim, Bu yazı serisini 3 adım olarak paylaşacağım bu adımda Dataguard kurulumunu anlatacağım, bir sonraki yazımda switchover, failover adımlarını yapacağım, son kısımda ise dataguard mimarisinin teorik kısmını anlatmayı planlıyorum.

Dataguard kurulumunun birkaç farklı yöntemi var Rman duplicate bunlardan birisi, ancak rman duplicate yöntemi de iki şekilde kullanılabilir.

1-) Duplicate from active database

2-)Duplicate target database for standby backup

Ben daha çok tercih edilen 1. yöntem ile kurmayı ele aldım. Yaptığım örnekleri sanal makina üzerinde Oracle Linux 6 işletim sisteminde gerçekleştireceğim, bu yüzden gerçek bir PRODUCTION ortamı olmadığından bazı dosyaların tüm parametrelerini set etmeyebilirim (örn, pfile, standby log file,) bunuda şimdiden belirtmiş olmak istedim.

Kısaca dataguard ortamı bizim için neden önemli, neden ihtiyaç duyarız ?

Dataguard, Oracle’ın sunduğu bir Disaster Recovery çözümüdür. Veri merkezimizde bir problem olduğunda veya donanımsal olarak ciddi bir problem yaşandığında, üzerinde çalışan veritabanımızı farklı bir lokasyonda bulunan bir veri merkezinde ayağa kaldırmaktır. Bu yüzden Prod. veritabanımız sürekli olarak dataguard ortamını beslemelidir ki herhangi bir problem anında, synchronous şekilde veri kaybetmeden veritabanını ayağa kaldırabilelim.

Teorik kısımları farklı yazılarımda detaylı bahsediyor olacağım. Şimdi uygulama kısmına geçelim.

Kurulumu single instance olarak yapıyorum.

Dataguard kurulu olacak makinamızda Grid infrastructure kurulu olmalı ve ASM diskler hazır olmalıdır, ayrıca Oracle software only kurulu olmalıdır. Diğer makinamız PRODUTCION olacağı için database ve grid zaten kurulu olacaktır.

Kurulum adımlarında en çok dikkat edilmesi gereken noktalar şunlar;

1-) Dataguard kurulacak makinada static listener oluşturulmalı(Oracle home altında, grid değil !)

2-) Her iki makinada da tnsnames dosyası ayarlanmalı.

3-) profile dosyası mutlaka set edilmeli

4-) Dataguard makinasındaki SID,Service_name gibi kısımlar PROD makinanda ki SID, Service_name ile aynı olmalı.

5-) iptables kuralları kapalı olmalı veya kapatılmayacaksa düzgün configüre edilmeli.

6-) Her iki makinada tnsping atabilmeli ve rman ile karşılıklı bağlanabilmeli.

Bu adımlar en minimum gerekli olan, bana göre kurulumun %50 sini oluşturan kısım. Çünkü bağlantılar başarılı olarak gerçekleştiğinde diğer kısımlar daha hızlı ilerliyor.

Dataguard ortamında ki listener ve tnsnames ayarlarını yapılandıralım.

vi /oracle/app/oracle/product/11.2.0.4/dbhome_1/network/admin/tnsnames.ora

 

Bu ayarlar her iki makinanın tnsnames.ora dosyasında bulunmalı.

vi /oracle/app/oracle/product/11.2.0.4/dbhome_1/network/admin/listener.ora


Dataguard ortamımızda static listener tanımladık ve şimdi bunu start edelim

lsnrctl start LISTENER_DG


 

profile dosyasını düzenleyelim.

vi .bash_profile

Bunları Ekleyelim;

Siz kendi oluşturduğunuz SID ve UNQNAME’i verebilirsiniz.

export ORACLE_UNQNAME=TESTDBDG
export ORACLE_BASE=/oracle/app/oracle
export ORACLE_HOME=/oracle/app/oracle/product/11.2.0.4/dbhome_1
export GRID_HOME=/oracle/app/grid
export ORACLE_SID=TESTDB

Değişikliklerimizi kaydedelim.

source .bash_profile

Her iki sunucuda, hostname dosyasında ip adresleri ve hostname’leri yazılı olmalı

 

Karşılıkli tnsping atabiliyor muyuz kontrol edelim.

tnsping TESTDBDG

 

tnsping TESTDB



 

tnsping başarılı gözüküyor, bir de rman ile bağlantı deneyelim.

[oracle@testdbdg ~]$ rman target sys/oracle@TESTDB

 

[oracle@testdb dbs]$ rman target sys/oracle@TESTDB auxiliary sys/oracle@TESTDBDG


 

İki bağlantıda başarılı. Bir sonraki yazıda kurulumun 2. adımına geçeceğiz.

Görüşmek üzere.

About Deniz Parlak

Hi, i’m Security Data Scientist & Data Engineer at My Security Analytics. I have experienced Advance Python, Machine Learning and Big Data tools. Also i worked Oracle Database Administration, Migration and upgrade projects. For your questions [email protected]

Leave a Reply

Your email address will not be published. Required fields are marked *