12
返回列表 发新帖
楼主: applezh

DB_CACHE_SIZE的问题

[复制链接]
论坛徽章:
1
授权会员
日期:2005-10-30 17:05:33
11#
 楼主| 发表于 2005-2-11 21:47 | 只看该作者
这样的话问题又回到原地了

那么如下创建表空间语句
CREATE TABLESPACE DAT DATAFILE
'D:\ORACLE\ORADATA\MISORCL\DAT1.DBF' SIZE 300M AUTOEXTEND OFF
LOGGING
ONLINE
PERMANENT
EXTENT MANAGEMENT LOCAL AUTOALLOCATE
BLOCKSIZE 4K
SEGMENT SPACE MANAGEMENT MANUAL;

它指定了BLOCKSIZE 为4K,但是v$parameter视图中查DB__4K_CACHE_SIZE的值是0,请问为什么,缓冲区的大小又是多少那(是不是默认的DB_CACHE_SIZE)???



谢谢!!!

使用道具 举报

回复
论坛徽章:
23
ITPUB元老
日期:2005-02-28 12:57:002012新春纪念徽章
日期:2012-02-13 15:10:582012新春纪念徽章
日期:2012-02-13 15:10:582012新春纪念徽章
日期:2012-02-13 15:10:582012新春纪念徽章
日期:2012-02-13 15:10:58马上有车
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有对象
日期:2014-02-19 11:55:142012新春纪念徽章
日期:2012-02-13 15:10:58
12#
发表于 2005-2-11 22:50 | 只看该作者
最初由 jaunt 发布
[B]对于CREATE TABLESPACE 来说:
BLOCKSIZE Clause:
Use the BLOCKSIZE clause to specify a nonstandard block size for the tablespace. In order to specify this clause, you must have the DB_CACHE_SIZE and at least one DB_nK_CACHE_SIZE parameter set, and the integer you specify in this clause must correspond with the setting of one DB_nK_CACHE_SIZE parameter setting.
Restriction on BLOCKSIZE:
You cannot specify nonstandard block sizes for a temporary tablespace (that is, if you also specify TEMPORARY) or if you intend to assign this tablespace as the temporary tablespace for any users.
也就是说,CREATE TABLESPACE 时使用BLOCKSIZE子句时,要求在SGA 中有对应的DB_[I]n[/I]K_CACHE_SIZE。但是并不是说使用CREATE TABLESPACE 来使得SGA 中可以有DB_[I]n[/I]K_CACHE_SIZE,DB_[I]n[/I]K_CACHE_SIZE 是只能通过初始化参数来设置的。[/COLOR]

DB_[I]n[/I]K_CACHE_SIZE 和DB_BLOCK_SIZE 有一些关系的:
DB_nK_CACHE_SIZE (where n = 2, 4, 8, 16, 32) specifies the size of the cache for the nK buffers. You can set this parameter only when DB_BLOCK_SIZE has a value other than nK. For example, if DB_BLOCK_SIZE=4096, then it is illegal to specify the parameter DB_4K_CACHE_SIZE (because the size for the 4 KB block cache is already specified by DB_CACHE_SIZE). [/B]


至于缓冲区的大小是多少,是你DB_[I]n[/I]K_CACHE_SIZE 设置为多少,就是多少。

使用道具 举报

回复
论坛徽章:
131
2006年度最佳技术回答
日期:2007-01-24 12:58:48福特
日期:2013-10-24 13:57:422014年新春福章
日期:2014-02-18 16:41:11马上有车
日期:2014-02-18 16:41:11马上有车
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有对象
日期:2014-02-19 11:55:14马上加薪
日期:2014-02-19 11:55:142013年新春福章
日期:2013-02-25 14:51:24
13#
发表于 2005-2-14 12:43 | 只看该作者
最初由 applezh 发布
[B]这样的话问题又回到原地了

那么如下创建表空间语句
CREATE TABLESPACE DAT DATAFILE
'D:\ORACLE\ORADATA\MISORCL\DAT1.DBF' SIZE 300M AUTOEXTEND OFF
LOGGING
ONLINE
PERMANENT
EXTENT MANAGEMENT LOCAL AUTOALLOCATE
BLOCKSIZE 4K
SEGMENT SPACE MANAGEMENT MANUAL;

它指定了BLOCKSIZE 为4K,但是v$parameter视图中查DB__4K_CACHE_SIZE的值是0,请问为什么,缓冲区的大小又是多少那(是不是默认的DB_CACHE_SIZE)???



谢谢!!! [/B]


1,如果你的nK不是标准的block_size,db_nK_cache_size =0 的话
是无法创建该nK的tablespace的
[php]
  1* create tablespace test datafile '/tmp/a.dbf' size 1M blocksize 8192
sys@test> /

Tablespace created.

sys@test> show parameters block_size

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_block_size                        integer     8192
sys@test> show parameters db_4k_cache_size

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_4k_cache_size                     big integer 0
sys@test> create tablespace tt datafile '/tmp/tt.dbf' size 1M blocksize 4k
  2  /
create tablespace tt datafile '/tmp/tt.dbf' size 1M blocksize 4k
*
ERROR at line 1:
ORA-29339: tablespace block size 4096 does not match configured block sizes

[/php]

2.你所举的例子能成功是因为你的standard block size 社为了4K
show paramters block_size

你可以试试看
alter system set db_16k_cache_size=0 scope=memory;

CREATE TABLESPACE DAT DATAFILE
'D:\ORACLE\ORADATA\MISORCL\DAT1.DBF' SIZE 300M AUTOEXTEND OFF
LOGGING
ONLINE
PERMANENT
EXTENT MANAGEMENT LOCAL AUTOALLOCATE
BLOCKSIZE 16K
SEGMENT SPACE MANAGEMENT MANUAL;

就不能成功了。

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表