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
Managing & Monitoring Memory
The Nonstandard Block Size Pools
ﺘﺴﻤﺢ ﺃﻭﺭﻜل ﺒﺎﺴﺘﺨﺩﺍﻡ Multiple Block Sizes ﻓﻲ ﻗﺎﻋﺩﺓ ﺍﻟﺒﻴﺎﻨﺎﺕ، ﻭﻟﻜﻥ ﺃﻱ Size Block ﻴﺠﺏ ﺃﻥ ﻴﻜﻭﻥ ﻟﻪ Pool ﻓﻲ Database Buffer Cache ﺒﻨﻔﺱ ﺍﻟﻤﻘﺎﺱ،
ﻓﻼ ﻴﻤﻜﻥ ﺃﻥ ﻴﺘﻡ ﻋﻤل Cashe 8KB Block في 4KB BufferK.
ﻴﻤﻜﻥ ﺃﻥ ﻴﻜﻭﻥ ﺤﺠﻡ ﺍﻟﻜﺘﻠﺔ Block Size ﻓﻲ ﻗﺎﻋﺩﺓ ﺍﻟﺒﻴﺎﻨﺎﺕ (2KB ,4KB,, 8KB, 16KB, 32KB)، ﻟﻜﻥ ﺍلStandard Block Size ﻓﻴﺘﻡ ﺍﺨﺘﻴﺎﺭﻩ ﺃﺜﻨﺎﺀ ﺇﻨﺸﺎﺀ ﻗﺎﻋﺩﺓ ﺍﻟﺒﻴﺎﻨﺎﺕ
ﻭﻻ ﻴﻤﻜﻥ ﺘﻐﻴﻴﺭﻩ، ﺃﻤﺎ ﺇﺫﺍ ﻜﺎﻥ ﻏﻴﺭ ﻤﻨﺎﺴﺒﺎﹰ، ﻓﻴﺠﺏ ﺇﻨﺸﺎﺀ ﻗﺎﻋﺩﺓ ﺒﻴﺎﻨﺎﺕ ﺃﺨﺭﻱ ﺘﻜﻭﻥ ﺃﻜﺜﺭ ﻤﻼﺌﻤﺔ ﻟلBlock Size، ﻭﻴﺘﻡ ﺘﺤﺩﻴﺩ ﺤﺠﻡ ﺍلBlock Size ﻟﻘﺎﻋﺩﺓ ﺍﻟﺒﻴﺎﻨﺎﺕ ﻋﻥ ﻁﺭﻴﻕ
ﺍﻟﻤﺘﻐﻴﺭ DB_BLOCK_SIZE، ﻭﺍﻓﺘﺭﺍﻀﻴﹰﺎ ﻴﻜﻭﻥ 2KB، ﻭﻴﺴﺘﺨﺩﻡ ﻫﺫﺍ ﺍﻟﻤﺘﻐﻴﺭ DB_BLOCK_SIZE ﻟﻌﻤل Formatting ﻟلSYSTEM and SYSAUX Tablespace Datafiles، ﻭﺒﻌﺩ
ﺇﻨﺸﺎﺀ ﻗﺎﻋﺩﺓ ﺍﻟﺒﻴﺎﻨﺎﺕ ﻴﻤﻜﻥ ﻋﻤل Formatting ﻟلTablespaces ﺒﻤﻘﺎﺱ ﺁﺨﺭ ﻟلBlock Size، ﺒﺤﻴﺙ ﻴﺘﻡ ﺘﺠﻬﻴﺯ Pool ﻓﻲ ﺍلDatabase Buffer Cache ﺒﻨﻔﺱ ﻤﻘﺎﺱ ﺍلBlock،
ﻭﻟﺘﺠﻬﻴﺯ ﻫﺫﻩ ﺍلPools ﻴﺠﺏ ﺃﻥ ﻨﻘﻭﻡ ﺒﺘﻬﻴﺌﺔ واحد او اكثر من المتغيرات:
DB_2K_CACHE_SIZE
DB_4K_CACHE_SIZE
DB_8K_CACHE_SIZE
DB_16K_CACHE_SIZE
DB_32K_CACHE_SIZE
ﻻﺤﻅ ﺃﻨﻪ ﻻ ﻴﻤﻜﻥ ﺘﻬﻴﺌﺔ ﺍﻟﻤﺘﻐﻴﺭ DB_nK_CACHE_SIZE ﺇﺫﺍ ﻜﺎﻨﺕ ﺍﻟﻘﻴﻤﺔ n ﻫﻲ ﺍل Standard Size Block، ﻻﺤﻅ ﺃﻥ ﺍلStandard Block Size ﺘﺘﻡ ﺘﻬﻴﺌﺔ ﻋﻥ ﻁﺭﻴﻕ ﺍﻟﻤﺘﻐﻴﺭ
DB_CACHE_SIZE.
ﺇﻟﻴﻙ ﻫﺫﺍ ﺍﻟﺴﻴﻨﺎﺭﻴﻭ، ﻟﻨﻔﺘﺭﺽ ﺃﻥ ﻟﺩﻴﻙ ﻗﺎﻋﺩﺓ ﺒﻴﺎﻨﺎﺕ ﺘﻌﻤل ﻋﻠﻲ Standard Block Size ﻴﺴﺎﻭﻱ 8KB، ﻭﻜﺎﻥ ﻫﺫﺍ ﺍﻻﺨﺘﻴﺎﺭ ﻫﻭ ﺍﻷﻨﺴﺏ ﻓﻲ ﻏﺎﻟﺏ ﺍﻷﺤﻴﺎﻥ،
ﻭﻟﻜﻥ ﻟﻨﻔﺘﺭﺽ ﺃﻨﻙ ﺍﺤﺘﺠﺕ ﻟﺘﺨﺯﻴﻥ ﻤﻠﻔﺎﺕ ﺼﻭﺕ ﻓﻲ ﻗﺎﻋﺩﺓ ﺍﻟﺒﻴﺎﻨﺎﺕ، ﺒﺎﻟﻁﺒﻊ ﻗﺩ ﻴﻜﻭﻥ ﻤﻥ ﺍﻷﻨﺴﺏ ﺃﻥ ﻴﻜﻭﻥ ﺍلBlock Size ﻴﺴﺎﻭﻱ 32KB، ﻭﺫﻟﻙ ﻷﻥ ﻤﻠﻔﺎﺕ ﺍﻟﺼﻭﺕ
ﺘﺨﺯﻥ ﻙBLOBs، ﻓﻔﻲ ﻤﺜل ﻫﺫﺍ ﺍﻟﺤﺎل ﻴﻤﻜﻥ ﺃﻥ ﻨﻘﻭﻡ ﺒﺈﻨﺸﺎﺀ Tablespace ﻴﻜﻭﻥ ﺍلBlock Size ﻓﻴﻪ 32KB، ﻭﻤﻥ ﺜﻡ ﻨﻘﻭﻡ ﺒﺘﺨﺯﻴﻥ ﺍلLOB Segments ﻓﻴﻪ.
ﻤﻥ ﺃﻫﻡ ﻤﻴﺯﺍﺕ ﺇﻤﻜﺎﻨﻴﺔ ﻋﻤل ﻗﺎﻋﺩﺓ ﺍﻟﺒﻴﺎﻨﺎﺕ ﻋﻠﻲ Multiple Block Sizes ﻫﻭ ﺃﻨﻪ ﻴﻤﻜﻥ ﻨﻘل ﺍلTablespaces ﺒﻴﻥ ﻗﻭﺍﻋﺩ ﺒﻴﺎﻨﺎﺕ ﺘﻌﻤل ﻋﻠﻲ Block Sizes ﻤﺨﺘﻠﻔﺔ،
ﻋﻠﻲ ﺴﺒﻴل ﺍﻟﻤﺜﺎل ﻟﻭ ﺃﻥ ﻟﻲ ﻗﺎﻋﺩﺓ ﺒﻴﺎﻨﺎﺕ ﺘﻌﻤل ﻋﻠﻲ 4KB Standard Block Size ﻭﻨﺭﻴﺩ ﺃﻥ ﻨﻘﻭﻡ ﺒﻨﻘﻠﻪ ﻟﻘﺎﻋﺩﺓ ﺒﻴﺎﻨﺎﺕ ﺘﻌﻤل ﻋﻠﻲ 8KB Standard Block Size ،
ﻓﻤﺎ ﻋﻠﻴﻙ ﺇﻻ ﺃﻥ ﺘﻘﻭﻡ ﺒﺘﻬﻴﺌﺔ ﺍﻟﻤﺘﻐﻴﺭ DB_4K_CACHE_SIZE ﻓﻲ ﻗﺎﻋﺩﺓ ﺍﻟﺒﻴﺎﻨﺎﺕ ﺍﻟﺜﺎﻨﻴﺔ ﻟﺘﺴﺘﻘﺒل ﺍلTablespace ﻭﻟﻴﺘﻡ ﺇﻨﺸﺎﺀ Buffer Pool ﺘﻌﻤل ﻋﻠﻲ ﻨﻔﺱ
ﺍلBlock Size ﺍﻟﺠﺩﻴﺩ.
ﻴﺠﺏ ﺍﻟﺘﻨﺒﻴﻪ ﺇﻟﻲ ﺃﻨﻪ ﻻ ﻴﻤﻜﻥ ﺍﺴﺘﺨﺩﺍﻡ ﺍلNonstandard Block Size ﻓﻲ ﺍلTemporary Tablespace ﺒﻴﻨﻤﺎ ﻴﻤﻜﻥ ﺍﺴﺘﺨﺩﺍﻤﻪ ﻓﻲ ﺍلUndo and User Tablespace،
ﻭﺃﻴﻀﺎﹰ ﻻ ﻴﻤﻜﻥ ﺘﻘﺴﻴﻡ ﺍلNonstandard Block Size ﺇﻟﻲ Keep or Recycle Pool ﻭﺇﻨﻤﺎ ﻓﻘﻁ Default Pool.
ﻗﻡ ﺍﻵﻥ ﺒﺈﻨﺸﺎﺀ Tablespace ﻤﺴﺘﺨﺩﻤﺎﹰ ﺍﻟﺨﻴﺎﺭ Blocksize ﻟﺘﺤﺩﻴﺩ Block Size ﻏﻴﺭ ﺍلStandard Block Size، ﺒﺎﻟﻁﺒﻊ ﺴﺘﻔﺸل ﻋﻤﻠﻴﺔ ﺍﻹﻨﺸﺎﺀ (ORA-29339) ﻭﺫﻟﻙ ﻷﻥ
ﺍلBuffer Cache Pool ﺘﻌﻤل علي Standard Buffer.
ﻤﺎ ﻋﻠﻴﻙ ﺍﻵﻥ ﺇﻻ ﺍﻟﻘﻴﺎﻡ ﺒﺘﻬﻴﺌﺔ ﺍﻟﻤﺘﻐﻴﺭ DB_16K_CACHE_SIZE، ﻟﻴﺘﻡ ﺇﻨﺸﺎﺀ Buffer Pool ﺤﺴﺏ ﺍلBlock Size ﺍﻟﺠﺩﻴﺩ، ﻟﻜﻥ ﺒﺸﺭﻁ ﺃﻥ ﻻ ﻴﺯﻴﺩ ﺤﺠﻡ ﺍﻟﻜﻠﻲ ﻟﻠﺫﺍﻜﺭﺓ SGA
ﻋﻥ ﺍﻟﻘﻴﻤﺔ ﻓﻲ ﺍﻟﻤﺘﻐﻴﺭ .SGA_MAX_SIZE ﺃﻤﺎ ﺇﺫﺍ ﻜﺎﻥ ﺍﻟﺤﺠﻡ ﺍﻟﻜﻠﻲ ﻟﻠﺫﺍﻜﺭﺓ SGA ﻭﺼل ﻟﻠﻘﻴﻤﺔ ﺍﻟﻘﺼﻭﻯ ﻓﻌﻠﻴﻙ ﺃﻭﻻﹰ ﺘﺨﻔﻴﺽ ﺤﺠﻡ ﺃﺤﺩ ﻤﻜﻭﻨﺎﺕ ﺍﻟﺫﺍﻜﺭﺓ SGA ﺃﻭﻻﹰ، ﺃﻭ ﻴﺘﻁﻠﺏ
ﺍﻟﺘﻌﺩﻴل ﺇﻏﻼﻕ ﻗﺎﻋﺩﺓ ﺍﻟﺒﻴﺎﻨﺎﺕ.
-------------------------------------------------------------------