Orcale Tutorial Content
Getting Started - البدء مع إدارة قواعد البيانات
Oracle Architectural Components - مكونات قاعدة البيانات أوركل
Installing Oracle Database - تثبيت الأوركل
Creating and Configuring Database - إنشاء قاعدة البيانات
Controlling The Database -التحكم في قاعدة البيانات
Administrating Users - إدارة المستخدمين
Database Security & Monitoring - تأمين ومراقبة قاعدة البيانات
Oracle Net Services & Database Link & Metrlized Viewِ
Undo Management & Flashback Technology
Managing Shared Servers
Using Globalization Support
Logical Backup & Recovery
Physical Backup & Recovery
Recovery Manager (RMAN)
Managing Resources
Automating Tasks with the Scheduler
Dealing with Locking
Diagnostic Sources
Dealing With Database Corruption
Managing & Monitoring Memory
Performance Tunning
Control File & Redo Log Files
Redo Log Files
ﻫﺫﺍ ﺍﻟﻤﻠﻑ ﻟﺘﺴﺠﻴل ﺍﻟﺘﻐﻴﻴﺭﺍﺕ ﺍﻟﺘﻲ ﺘﺤﺼل ﻓﻲ ﻗﺎﻋﺩﺓ ﺍﻟﺒﻴﺎﻨﺎﺕ ﺒﺤﻴﺙ ﻴﺘﻡ ﺘﺴﺠﻴل ﺍﻟﺘﻐﻴﻴﺭﺍﺕ ﺍﻟﺘﻲ ﺘﻡ ﺘﺜﺒﻴﺘﻬﺎ (Commit) ﺃﻭ ﻟﻡ ﻴﺘﻡ ﺘﺜﺒﻴﺘﻬﺎ،
ﻨﺴﺘﻔﻴﺩ ﻤﻥ ﻫﺫﺍ ﺍﻟﻤﻠﻔﺎﺕ ﻓﻲ ﺍﺴﺘﺭﺠﺎﻉ ﻗﺎﻋﺩﺓ ﺍﻟﺒﻴﺎﻨﺎﺕ ﺤﺎل ﺤﺩﻭﺙ ﻤﺸﻜﻠﺔ. ﺒﺤﻴﺙ ﺘﻜﻭﻥ ﻫﻨﺎﻙ ﺒﻌﺽ ﺍﻟﺒﻴﺎﻨﺎﺕ ﻟﻡ ﺘﻜﺘﺏ ﻓﻲ ﺍلData Files ﺒﻴﻨﻤﺎ ﻜﺘﺒﺕ ﻓﻲ ﺍلRedo Log Files .
ﻴﻜﻭﻥ ﻫﺫﺍ ﺍﻟﻤﻠﻑ ﻓﻲ ﺸﻜل GROUP ﺒﺤﻴﺙ ﺘﻌﻤل ﻗﺎﻋﺩﺓ ﺍﻟﺒﻴﺎﻨﺎﺕ ﻋﻠﻰ ﺍﻷﻗل ﺒﺎﺜﻨﻴﻥ ﻤﻥ ﺍلGroups .
ﺇﺫﺍﹰ ﻴﺴﺘﺨﺩﻡ ﻫﺫﺍ ﺍﻟﻤﻠﻑ ﺃﺴﺎﺴﹰﺎ ﻟﻌﻤﻠﻴﺔ ﺍﻻﺴﺘﺭﺠﺎﻉ ﻓﻲ ﺤﺎﻟﺔ ﺤﺩﻭﺙ ﺨﻁﺎﹰ ﺇﺫ ﻴﺤﺘﻭﻯ ﻋﻠﻰ ﺍﻟﺘﻐﻴﻴﺭﺍﺕ ﺍﻟﺘﻲ ﺘﺤﺼل ﻋﻠﻰ ﺍﻟﺒﻴﺎﻨﺎﺕ.
ﻭﻟﻀﻤﺎﻥ ﺍﻟﺤﻔﺎﻅ ﻋﻠﻰ ﻫﺫﺍ ﺍﻟﻤﻠﻑ ﻓﺈﻥ ﻜل Group ﻴﻨﺘﻅﻡ ﻓﻲ ﺸﻜل Members ﻭﻜل ﺍلMember ﺩﺍﺨل ﺍلGroup ﻫﻲ ﻨﺴﺨﺔ ﻁﺒﻕ ﺍﻷﺼل ﺍﻟﻬﺩﻑ ﻤﻨﻬﺎ ﺘﻘﻠﻴل ﻨﺴﺒﺔ ﺨﻁﺭ ﺍﻟﻔﻘﺩﺍﻥ .
LGWR Background Process ﻴﻘﻭﻡ ﺒﻜﺘﺎﺒﺔ ﺍﻟﺒﻴﺎﻨﺎﺕ ﺍﻟﻤﻭﺠﻭﺩة في ﺍلRedo log Buffer ﺇﻟﻰ الRedo Log Files.
ﻟﺤﻅﺔ ﻤلﺀ ﺍلRedo Log File ﻓﺎﻥ ﺍلLGWR ﻴﻘﻭﻡ ﺒﺎﻟﺘﺤﻭل ﻟلRedo Log File ﺍﻷﺨﺭﻯ ﻓﻲ ﻋﻤﻠﻴﺔ ﺘﻌﺭﻑ ﺒﺎلLog Switch.
ﺇﺫﺍﹰ ﻓﺎل Oracle Server ﻴﻘﻭﻡ ﺒﻜﺘﺎﺒﺔ ﻜل ﺍﻟﺘﻐﻴﺭﺍﺕ ﻋﻠﻰ ﻗﺎﻋﺩﺓ ﺍﻟﺒﻴﺎﻨﺎﺕ ﻓﻲ ﺍلRedo Log Buffer, ﻫﺫﻩ ﺍﻟﻤﺘﻐﻴﺭﺍﺕ ﺘﻜﺘﺏ ﻤﻥ ﺍلBuffer ﺇﻟﻰ ﺍلRedo Log File ﻋﻥ ﻁﺭﻴﻕ ﺍلLGWR ﻓﻲ ﺍﻟﺤﺎﻻﺕ ﺍﻟﺘﺎﻟﻴﺔ:-
1- ﻟﺤﻅﺔ ﺘﺜﺒﻴﺕ ﺍﻟﻌﻤﻠﻴﺎﺕ .(Commit).
2- ﻟﺤﻅﺔ ﺍﻤﺘﻼﺀ ﺍلBuffer ﺇﻟﻰ ﺍﻟﺜﻠﺙ.
٣- ﻗﺒل ﻋﻤﻠﻴﺔ DBWn.
ﺇﺫﺍﹰ ﻋﻤﻠﻴﺔ ﺍلLog Switch ﺘﺤﺩﺙ ﺁﻟﻴﺎﹰ ﺩﻭﻥ ﺘﺩﺨل ﻤﻥ ﻤﺩﻴﺭ ﻗﺎﻋﺩﺓ ﺍﻟﺒﻴﺎﻨﺎﺕ، ﻟﻜﻥ ﻗﺩ ﻴﺤﺘﺎﺝ ﻤﺩﻴﺭ ﻗﺎﻋﺩﺓ ﺍﻟﺒﻴﺎﻨﺎﺕ ﺃﺤﻴﺎﻨﹰﺎ ﻟﻌﻤل ﻫﺫﻩ ﺍﻟﻤﻬﻤﺔ ﻴﺩﻭﻴﺎﹰ ﻤﻥ ﺨﻼل ﺍﻷﻤﺭ ﺍﻟﺘﺎﻟﻲ:-
ALTER SYSTEM SWITCH LOGFILE; |
ﻜﺫﻟﻙ ﻋﻤﻠﻴﺔ ﺍلCheckpoint ﺘﺤﺩﺙ ﺁﻟﻴﺎﹰ ﻋﻨﺩ ﺤﺩﻭﺙ ﺍلLog Switch.
ﺃﻴﻀﺎﹰ ﻴﻤﻜﻥ ﻋﻤل Checkpoint ﺃﻟﻴﺎﹰ ﻋﻥ ﻁﺭﻴﻕ ﻤﺩﻴﺭ ﻗﺎﻋﺩﺓ ﺍﻟﺒﻴﺎﻨﺎﺕ ﺒﺎﻷﻤﺭ ﺍﻟﺘﺎﻟﻲ:-
ALTER SYSTEM CHECKPOINT; |
:Online Redo Log Files Group ﺇﻀﺎﻓﺔ
ﻓﻲ ﺒﻌﺽ ﺍﻷﺤﻴﺎﻥ ﻨﺤﺘﺎﺝ ﻹﻀﺎﻓﺔ Online Redo Log Files Group ﺠﺩﻴﺩ، ﻭﺫﻟﻙ ﻋﻥ ﻁﺭﻴﻕ ﺍﻷﻤﺭ ﺍﻟﺘﺎﻟﻲ:-
ALTER DATABASE ADD LOGFILE GROUP 4 ‘D:\ORACLE\PRODUCT\10.1.0\ORADATA\OBAY\REDO04.RDO’ SIZE 10M; |
- : Groupsﻟل Members ﺇﻀﺎﻓﺔ
ALTER DATABASE ADD LOGFILE MEMBER 'D:\oracle\product\10.1.0\oradata\OBAY\RED1.RDO' TO GROUP 1, ,'D:\oracle\product\10.1.0\oradata\OBAY\RED2.RDO ' TO GROUP ٢, 'D:\oracle\product\10.1.0\oradata\OBAY\RED3.RDO' TO GROUP 3, 'D:\oracle\product\10.1.0\oradata\OBAY\RED4RD O' TO GROUP 4; |
- :Online Redo Log Groups ﺤﺫﻑ
ALTER DATABASE DROP LOGFILE GROUP 4; |
ﻤﻊ ﻤﻼﺤﻅﺔ ﺃﻥ ﻗﺎﻋﺩﺓ ﺍﻟﺒﻴﺎﻨﺎﺕ ﺘﻌﻤل ﻋﻠﻰ ﺍﻷﻗل ﻋﻠﻰ ﺍﺜﻨﻴﻥ ﻤﻥ ﺍلGroups، ﻜﺫﻟﻙ ﻻ ﻴﻤﻜﻥ ﺤﺫﻑ current or active Groups.
- :Online Redo Log Members ﺤﺫﻑ
ALTER DATABASE DROP LOGFILE MEMBER ‘D:\ORACLE\PRODUCT\10.1.0\ORADATA\OBAY\RED3.RDO; |
-:Clearing Online Redo Log Files
ﻭﻫﻰ ﻟﺤل ﻤﺸﻜﻠﺔ ﺍﻟﻌﻁل ﺍﻟﺫﻱ ﻴﺤﺩﺙ ﻟﻜل ﺍلMembers ﻓﻲ ﺍلGroup ، ﻓﻬﻲ ﻀﻤﻨﺎﹰ ﺘﻌﻨﻰ ﺇﻋﺎﺩﺓ ﺇﻨﺸﺎﺀ ﻟلRedo Log Files.
ALTER DATABASE CLEAR LOGFILE GROUP 2; |
ﺇﺫﺍ ﻜﺎﻨﺕ ﻗﺎﻋﺩﺓ ﺍﻟﺒﻴﺎﻨﺎﺕ ﺘﻌﻤل ﻓﻲ ﺍﻟﻭﻀﻊ Archive log ﻓﺈﻥ ﻋﻤﻠﻴﺔ ﺍلClearing ﺃﻋﻼﻩ ﺴﺘﻔﺸل ﺇﺫﺍ ﻜﺎﻥ ﺍل2 Group ﻟﻡ ﺘﺘﻡ ﺃﺭﺸﻔﺘﻪ،
ﻋﻤﻭﻤﹰﺎ ﺴﻨﺘﺤﺩﺙ ﻋﻥ ﻤﻭﻀﻭﻉ ﺍﻷﺭﺸﻴﻑ ﻻﺤﻘﺎﹰ ﻭﻟﻜﻥ ﻟﺤل ﻫﺫﺍ ﺍﻹﺸﻜﺎل ﻴﻤﻜﻥ ﺘﻌﺩﻴل ﺍﻷﻤﺭ ﺍﻟﺴﺎﺒﻕ ﻜﺎﻷﺘﻲ:-
ALTER DATABASE CLEAR UNARCHIVED LOGFILE GROUP 2; |
ﻭﻟﻜﻥ ﻴﺠﺏ ﻗﺒل ﺍﻟﻘﻴﺎﻡ ﺒﻬﺫﺍ ﺍﻷﻤﺭ ﺒﻌﻤل ﻨﺴﺦ ﺇﺤﺘﻴﺎﻁﻰ ﻜﺎﻤل ﻟﻘﺎﻋﺩﺓ ﺍﻟﺒﻴﺎﻨﺎﺕ (Full Backup).
ﺇﻋﺎﺩﺓ ﺘﺴﻤﻴﺔ ﺍلRedo Log Files:-
ﻴﻤﻜﻥ ﺇﻋﺎﺩﺓ ﺘﺴﻤﻴﺔ ﺍلRedo Log Files ﺃﻭ ﺘﻐﻴﻴﺭ ﻤﻜﺎﻨﻪ ﻋﻥ ﻁﺭﻴﻕ ﺇﻀﺎﻓﺔ Log File ﺠﺩﻴﺩ ﻭﺤﺫﻑ ﺍﻟﻘﺩﻴﻡ .
ﻴﻤﻜﻥ ﻜﺫﻟﻙ ﺍﺴﺘﺨﺩﺍﻡ ﺍﻷﻤﺭ ALTER DATABASE RENAME FILE ﻟﻜﻥ ﻫﺫﺍ ﺍﻷﻤﺭ ﻴﺘﻁﻠﺏ ﺠﻠﺏ ﻗﺎﻋﺩﺓ ﺍﻟﺒﻴﺎﻨﺎﺕ ﺇﻟﻲ ﺍﻟﻭﻀﻊ MOUNT.
ﻓﻘﺩﺍﻥ ﺍلRedo Log File:
ﺇﺫﺍ ﻓﻘﺩﻨﺎ Member ﻤﻥ ﺍلRedo Log Files Group ﻓﺈﻥ ﻗﺎﻋﺩﺓ ﺍﻟﺒﻴﺎﻨﺎﺕ ﺴﺘﻅل ﻤﻔﺘﻭﺤﺔ ﻭﻤﺘﺎﺤﺔ ﻤﺎ ﺩﺍﻡ ﺃﻥ ﻫﻨﺎﻙ Member ﺃﺨﺭﻯ ﻓﻲ ﺍلGroup ،
ﻟﻜﻥ ﺴﻭﻑ ﻨﺴﺘﻘﺒل ﺭﺴﺎﺌل ﺘﺤﺫﻴﺭﻴﺔ ﻓﻲ ﺍلAlert log File. ﺒﺎﻟﻁﺒﻊ ﻴﻤﻜﻥ ﺍﻻﺴﺘﺭﺠﺎﻉ ﺒﻌﻤل ﻨﺴﺦ ﻷﺤﺩ ﺍلMember ﺍﻟﻤﻭﺠﻭﺩﺓ ﻭﻤﻥ ﺜﻡ ﺇﻋﺎﺩﺓ ﺘﺴﻤﻴﺘﻬﺎ.
ﻟﻺﺴﺘﻼﻡ ﻋﻥ ﺍلRedo Log File:
V$LOG
V$LOGFILE
--------------------