Merhaba arkadaşlar, bu gün ki makalemde Oracle database inde archivelog özelliğini nasıl değiştirileceğine değineceğim.
Öncelikle database’ e sqlplus üzerinden login oluyoruz. Daha sonra aşağıdaki parametreleri kontrol ediyoruz.
SQL> show parameter db_recovery_file_dest; SQL> show parameter DB_RECOVERY_FILE_DEST_SIZE;
Bu parametreler set edilmeden archivelog özelliği açılırsa log dosyaları home dizinine yazılacaktır ve bu durum home dizininin dolmasına sebep olacaktır. Home dizini dolduğunda DB hung olacaktır ve erişime kapatacaktır kendini.
Bu tarz bir sorunla karşılaşmamak için DB de ilk defa archivelog özelliği açıldığında bu 2 parametrenin mutlaka kontrol edilmesi gerekmektedir.
Yukarıdaki parametreler set edilmemişse aşağıdaki scriptler ile uygun dizin ve size ile bu parametreleri set etmemiz gerekmektedir.
SQL> alter system set db_recovery_file_dest = ‘+RECOC1’;
SQL> alter system set DB_RECOVERY_FILE_DEST_SIZE=200G;
Parametreleri kontrol edip set ettikten sonra artık archivelog özelliğini değiştirebiliriz. Noarchivelog mode da olan bir db yi archivelog mode almayı göreceğiz öncelikle.
19:24:01 SQL> shutdown immediate
19:26:58 SQL> startup mount
19:27:15 SQL> alter database archivelog;
19:27:23 SQL> alter database open;
Yukarıdaki kodları sırayla inceleyecek olursak. Öncelikle Database’i kapatmamız gerekmektedir. Daha sonra database’i mount mode a alıyoruz. Sonra alter database archivelog; scripti ile archivelog özelliğini açıyoruz ve son olarak open diyerek db yi açıyoruz.
Archivelog özelliğini değiştirdiğimizde gördüğünüz gibi db nin restart edilmesi gerekmektedir. Bu yüzden bu işlemi gerçekleştirmeden önce db yi kullanan ekiplerden onay alınması gerekmektedir.
Database i noarchivelog mode a alabilmek için ise aynı adımlar uygulanır. Sadece alter database noarchivelog; komutu kullanılır.
Bir makalenin daha sonuna geldik, esenle kalın.