如果查看Oracle数据块和操作系统块大小

如果查看Oracle数据块和操作系统块大小

 

1、 1、 在命令窗口中执行:
SQL> show parameter db_block_size
NAME                 TYPE       VALUE
------------------------------------ -----------------------------------------
db_block_size          integer      8192

2、2、 在SQL窗口中执行:
//查询实例的db_block_size值(为8192 bytes)
select value from v$parameter where name='db_block_size'
如果查看Oracle数据块和操作系统块大小

//查询出的回滚段中每个extent的初始分配的大小
select initial_extent fromdba_rollback_segs
如果查看Oracle数据块和操作系统块大小

//initial_extent值除以db_block_size后的结果:
select initial_extent/8192 fromdba_rollback_segs
如果查看Oracle数据块和操作系统块大小

由此可见,initial_extent值是db_block_size的整数倍,db_block_size的默认值为8192 bytes,是不能被用户修改的。因为db_block_size对应于一个实例,所以意味着在数据库创建(建库)以后是不能修改的,如需修改,可行的方式是重新建库并把原库的数据export到新库。当然最好的方式是在建数据库之前就规划好,一般如果是OLTP系统,可以保持默认值;OLAP环境可以考虑适当调大。 

db_block_size典型的值有4096 bytes 和 8192 bytes,且必须是操作系统块(os block)的整数倍。操作系统块(os block)在Windows下可以通过fsutil工具查看,在Linux下则可以使用tune2fs命令。

Windows下使用方法如下:
D:\>fsutil fsinfontfsinfo c:
NTFS 卷序列号 :                      0x 388c89188c88d1b4
版本:                                        3.1
区数量:                                    0x00000000013fe599
簇总数:                                    0x000000000027fcb3
可用簇:                                    0x0000000000011e43
保留总数:                                 0x0000000000000060
每个扇区字节数:                      512
每个簇字节数:                          4096
每个FileRecord 段的字节数 :  1024
每个FileRecord 段的簇数 :    0
Mft 有效数据长度 :                   0x00000000051cc000
Mft 起始 Lcn :                          0x00000000000c0000
Mft2 起始 Lcn :                         0x000000000013fe59
Mft 区域起 :                             0x0000000000221960
Mft 区域结 :                             0x000000000022a280

这里的"每个簇字节数" 4096就是Windows上的文件系统块大小。

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值