Monday, August 17, 2009

ALTER SYSTEM SWITCH LOGFILE;

LOGFILE'LERİ KAYDETMEK

ALTER SYSTEM SWITCH LOGFILE;

LGWR (Log Writer) Bir redo log grubuna yazmayı bitirdiğinde diğer gruba gecer. LGWR bir log group dolduğunda diğerine yazma işlemlerini otomatik olarak yapar . Yazmakta olduğu grup active durumdadır. Yazma işlemini bitirdikleri ise inactive duruma gecer.

Redo loglarda düzenleme yapmak için bazen active durumdaki grupları inactive yapmak gerekebilir. Örneğin active olan bir redo group'u silmek istiyorsunuz. active olan bir redo grup'u inactive olana kadar silemezsiniz. Öncelik ile buradaki verilerin datafilelere yazılması gerekir. Şu şekilde bir senaryoda yaratabiliriz. Şu anda active olan bir redolog groubunu arşivlemek istiyorsak bu grubun dolmasını beklememiz gerekiyor. Bazen redo log gruplarımız o kadar büyük olur ki dolamsını beklemek uzun zaman alabilir.

Log dosyalrını kaydetmek için ALTER SYSTEM yetkimizin olması gerekiyor.

ALTER SYSTEM SWITCH LOGFILE; komutu işimizi görüyor.

Redo loglarımız datafilelere yazıyoruz. Bu işlemden sonra backuplama arşivleme işlemini yapabiliriz.

Kullanıldığı birkaç yere örnek vermek gerekir ise
1- full backup almadan önce redo loglardaki verileri datafilelere yazmak isteyebilirsiniz.
2- Database NOACRHIVELOG moddan ARCHIVELOG moda alma sırasında kullanabilirsiniz.

Aşağıdaki sorgu ile loglarımızın durumunu görebilriz.
select GROUP#, ARCHIVED, STATUS from v$log;

Active durumdaki bir redolog file'ı silmek isteğimizde aşağıdaki hatayı alırız.Bu durumda
ALTER SYSTEM SWITCH LOGFILE ile inactive hale getirdikten sonra silebiliriz.

ORA-01624: 2 günlügü, orcl (thread 1) aninin çökme durumunda kurtarilmasi için gerekli
ORA-00312: çevrimiçi günlük 2, thread 1: 'C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO02.LOG'

Yeni bir redolog file eklemek için aşağıdaki scripti kullanabiliriz
ALTER DATABASE
ADD LOGFILE ('C:\oracle\product\10.2.0\oradata\ORCL\REDO03.LOG') SIZE 50000K;
silmek içinde

select GROUP#, ARCHIVED, STATUS from v$log;

sorgusu ile inactive durumda olan redologun group nosunu öğrendikten sonra


ALTER DATABASE DROP LOGFILE GROUP 3;
komutunu kullanabiliriz.



1 comment:

Anonymous said...

This is my first tіme pay а νisit at here
and i am reallу impressеd tο read eνеrthing at alone placе.


Feеl fгee to visit my hоmepаge ::
zıplama oyunları