技术资料首页 >> 数据库专栏 >> Sybase专栏 >> SYBASE内存和缓冲区管理

SYBASE内存和缓冲区管理 (4)

2007-03-04 10:18:09作者: 来源:http://www.chinaunix.net/jh/21/15715.html 浏览次数:37 文字大小:【】【】【
相应对象上的其它操作可能有延迟.此外,可不删除现有的捆绑而重新捆绑
      对象.另外,当被捆绑对象上有脏的读活动或有打开的游标时,捆绑或删除捆绑的操作
      将不能进行.
        1>;sp_dboption pubs2,single,true   置pubs2库为单用户状态
        2>;use pubs2
        3>;checkpoint
        4>;go     准备进行数据库对象的捆绑。注意,捆绑对象须在对象所在的库中进行。
        >;sp_bindcache pubs_cache,pubs2,titles
           将pubs2库中的表titles捆绑至缓冲区pubs_cache.
        >;sp_bindcache pubs_cache,pubs2,titles.titleind
           在titles上捆绑索引,并将pubs2库中的表titles捆绑至缓冲区pubs_cache.
        >;sp_bindcache pubs_cache,pubs2,"hj.sale_east"
           将pubs2库中用户hj的表sale_east捆绑至缓冲区pubs_cache.
        >;sp_bindcache pubs_log,pubs2,syslogs
           将pubs2库的事务日志syslogs捆绑至缓冲区pubs_log.
        >;sp_bindcache pubs_cache,pubs2,au_pix,"text only"
           表的text和image列存储在一个单独的数据结构中,若将此表捆绑至缓冲区,需加
           "text"参数.
        1>;sp_dboption pubs3,single,true   置pubs3库为单用户状态
        2>;use pubs3
        3>;checkpoiot
        4>;use master
        5>;go     准备进行数据库的捆绑,注意,捆绑数据库须在master库中进行。         
        >;sp_bindcache tempdb_cache,tempdb
           将数据库tempdb捆绑至缓冲区tempdb_cache。
        注意,被捆绑到日志缓冲区上的对象只能是syslogs表。
        可通过sp_helpcache过程查询所有或指定缓冲区及其中被捆绑对象的捆绑信息.如下
      例示,其中status列报告缓冲区的捆绑是("V")否("I")有效.若数据库或对象被捆绑至缓
      冲池而该缓冲区已被删除,则捆绑信息仍保留在系统表中但缓冲区捆绑被标记无效,所有
      无效的捆绑对象均使用默认的数据库缓冲区.若随后用与被删除的缓冲区相同的名字创建
      了另一个缓冲区,则当该缓冲区通过重启SQL SERVER而被激活时,上述捆绑又将变为有效.
        删除缓冲区捆绑可用两个过程:sp_unbindcache用于删除缓冲区中对一个实体的捆绑&#59;
      sp_unbindcache_all则用于删除缓冲区中对所有对象的捆绑,但若捆绑至缓冲区的数据库
      超过8个,或数据库的对象超过8个,就不能使用sp_unbindcache_all,此情况下,必须使用
      sp_unbindcache删除单个的数据库或对象,使捆绑的数据库不超过8个.此外,当删除缓冲
      区对一个对象的捆绑时,内存中所有当前的页都被从缓冲区中清除.
        >;sp_unbindcache pubs2
           删除对数据库pubs2的捆绑
        >;sp_unbindcache pubs2,titles
           删除对pubs2库中对titles表的捆绑
        >;sp_unbindcache pubs2,titles,titleidind
           铲除对pubs2库中titles表上titleidind索引的捆绑.
    >;   改变命名数据缓冲区大小
        可通过sp_cacheconfig指定一个新的空间以增加或减少指定缓冲区的大小,所有新增空
      间都将从缺省数据缓冲区default data cache内的2K缓冲池中被加到指定缓冲区内的2K
      页缓冲池中,所有减少的空间亦从指定缓冲区内的2K页缓冲池中被释放到缺省数据库缓冲
      区default data cache内的2K缓冲池中.
        >;sp_cacheconfig pubs_cache
         Cache   Name       Status    Type    Config Value     Run value
       ----------------     ------   ------ ---------------- -------------
        pubs_cache          Active   mixed   10.00MB           10.00MB
                                           -------------------------------
                                      Total  10.00MB           10.00MB
       ===================================================================
       Cache:pubs_cache,           status:Active,    Type:mixed  
       Config Size:10.00MB,        Run size:10.00MB
          IO Size      Wash Size     Config Size     Run Size
          -------      ---------     -----------     --------
          2KB          720KB         0.00MB           3.00MB  
          4KB          1024KB        4.00MB           4.00MB
          16KB         1424KB        3.00MB           3.00MB
        现以sp_cacheconfig pubs_cache,"20M"后重启,则改变如下:
        >;sp_cacheconfig pubs_cache
         Cache   Name       Status    Type    Config Value     Run value
       ----------------     ------   ------ ---------------- -------------
        pubs_cache          Active   mixed   20.00MB           20.00MB
                                           ----------------------
[1] [2] [3] [4] [5]

相关文章