The DB_BLOCK_CHECKING initialization parameter is set to OFF. Which block checking would be performed?
A. The Oracle database will perform block checking for the index blocks only
B. The Oracle database will not perform block checking for any of the data blocks
C. The Oracle database will perform block checking for the default permanent tablespace only
D. The Oracle database will perform block checking for the data blocks in all user tablespaces
E. The Oracle database will perform block checking for the data blocks in the SYSTEM tablespace only
此题考点是 DB_BLOCK_CHECKING 参数。其默认值是 FALSE,可以设置为OFF,TRUE,FULL,LOW,MEDIUM。用于指定数据库是否对数据库块进行块检查。
OFF 或者 FALSE:不会在用户表空间上进行块检查。但是 SYSTEM 表空间上的语义块检查总是打开的。
LOW:在块的内容在内存中变化之后,检查基本的块头。(例如,在 update 或 insert 语句,磁盘读,或RAC 中 inter-instance 块传递之后)。
MEDIUM:包含 LOW 等级的检查,和对除了索引之外的所有对象进行完整语义检查。
FULL 或 TRUE:包含 LOW 和 MEDIUM 等级,并且对所有的对象进行完整语义检查
Oracle 通过对块中的数据进行检查,来确保其在逻辑上是一致的。块检查可以放置内存和数据损坏。但是通常会消耗 1%到 10%的开销,具体取决于工作负载。
越多的 update 和 insert,那么开销就越多。如果不考虑性能问题,可以设置为 true