zoukankan      html  css  js  c++  java
  • 052-147

    View the Exhibit.



    You want to create a tablespace to contain objects with block size 16 KB. But while configuring the
    storage you find that the block size that you can provide is only 8 KB.
    Which configuration could have enabled the block selection of 16 KB?
    A.choosing the extent allocation type to uniform
    B.choosing the Segment Space Management option to manual
    C.setting autoextension on for the data file mentioned for the tablespace
    D.setting the DB_16K_CACHE_SIZE parameter for the database instance to a nonzero value

      1.9i 之后可以使用多种块大小,首先使用一个标准的数据块,然后最多可以定义 4 种其他的数据块,值为 2 的 n 次方,范围是 2~32(这里也就 5 种)
      2.使用其他块大小的时候,必须首先设置 db_nk_cache_size 的大小
    SQL> show parameter k_cache_size
    NAME TYPE VALUE
    ------------------ ----------- ------
    db_16k_cache_size big integer 0
    db_2k_cache_size big integer 0
    db_32k_cache_size big integer 0
    db_4k_cache_size big integer 0
    db_8k_cache_size big integer 0
    首先应该设置这里对应的值,这里需要注意的是与数据库块大小相同的不能设置
    create tablespace cache_size datafile'cache_size_001.dbf' size 16M BLOCKSIZE 16K; --这里的 16k 必须先设置 db_16k_cache_size
      3.标准数据库大小用于系统表空间和临时表空间
      4.数据块的内容和参数
    i.块头
    存储数据块的地址、表目录、行目录和事务槽,头部从上往下增长
    ii.数据区
    位于数据块的底部,当插入行的时候从下向上增长
    iii.空闲区
    位于中间,最初始是连续的,当删除和插入后导致碎片化,smon 会进行合并空闲区的操作
      5.手工数据块的管理
    i.插入操作的时候,oracle 将保留数据块 15%的空闲空间,为将来的更新做准备
    ii.当空闲区小于 15%的时候,oracle 将该数据从空闲队列(freelists)中去掉
    iii.如果删除或修改造成了数据行的缩小,虽然大于了 15%,但是使用的空间大于 30,因此还是不能插入
    iv.只有当小于 30(pctused),该数据块才可以重新放入空闲队列中

  • 相关阅读:
    栈· 用一个栈实现另一个栈的排序
    Array+DP leetcode-11.装更多的水
    string+DP leetcode-4.最长回文子串
    leetcode-3 最长无重复字串
    栈 · 有getMin功能的栈O(1)
    VS OpenCV imread imwrite nameWindow等相关报错问题
    socket字符流循环截取
    jsp:set/getProperty底层实现的探究
    关于C++11右值引用和移动语义的探究
    VS fopen sprinft ... unsafe 问题
  • 原文地址:https://www.cnblogs.com/Babylon/p/8037295.html
Copyright © 2011-2022 走看看