操作系统中数据文件与ORACLE数据库中查询的bytes大小不同的解析
来源:互联网 发布:核盾网络验证破解 编辑:程序博客网 时间:2024/06/17 16:04
1.操作系统中数据文件与ORACLE数据库中查询的大小不同的疑惑:
以SYSTEM为例:操作系统中数据文件比ORACLE数据库中查询的多 8192byte --其它数据文件同样情况[oracle@bys3 ~]$ which dbfsize
/u01/app/oracle/product/11.2.0/dbhome_1/bin/dbfsize
[oracle@bys3 ~]$ dbfsize /u01/oradata/bys3/system01.dbf
Database file: /u01/oradata/bys3/system01.dbf
Database file type: file system
Database file size: 64000 8192 byte blocks 64000个BLOCK,每块8192 byte。64000*8192/1024/1024=500M
[oracle@bys3 bys3]$ ll system01.dbf
-rw-r----- 1 oracle oinstall 524296192 Nov 28 10:22 system01.dbf
BYS@ bys3>select bytes,name from v$datafile;
BYTES NAME
---------- ------------------------------
524288000 /u01/oradata/bys3/system01.dbf
对比:
524288000 数据库中
524296192 操作系统中,比数据库中多出8192字节
这里,多出的是数据文件的0号块,是由操作系统来管理的。
而数据文件中的1号块,叫做文件头。
2.使用BBED: dump FILE 1 BLOCK 0 查看数据文件中块情况并与操作系统中查询的对比:
首先从操作系统中使用命令查看数据文件中块的情况:[oracle@mydb ocm]$ dbfsize system01.dbf
Database file: system01.dbf
Database file type: file system
Database file size: 64000 8192 byte blocks
即数据文件有64000个块,每个块8192 byte
在BBED中,首先设置BLOCK为0,然后DUMP,数据文件块大小及块个数对应的字段见下图- --BBED的DUMP见:http://blog.csdn.net/q947817003/article/details/16996475 开头
关于大小字节序简单概述:
ORACLE数据库中元数据(数据字典里的):
字符不用颠倒 char varchar
数字需要颠倒 number
表里面数据是NUMBER类型的不需要颠倒==ORACLE来处理
如图中:
00200000 是块大小,是数字,需要颠倒-每2位表示1bytes,要以两位(即为1bytes)单位颠倒:颠倒后是:00002000
BYS@ bys3>select to_number('00002000','xxxxxxxxxxxxx') from dual;
TO_NUMBER('00002000','XXXXXXXXXXXXX')
-------------------------------------
8192
00fa0000 是BLOKC的个数:数字类型,需要颠倒,颠倒后是:===>0000fa00
BYS@ bys3>select to_number('0000fa00','xxxxxxxxxxxxx') from dual;
TO_NUMBER('0000FA00','XXXXXXXXXXXXX')
-------------------------------------
64000
BBED> map
File: /u01/oradata/bys3/system01.dbf (1)
Block: 0 Dba:0x00400000
------------------------------------------------------------
BBED-00400: invalid blocktype (00)
- 操作系统中数据文件与ORACLE数据库中查询的bytes大小不同的解析
- 不同数据库中查询Table占用空间的大小
- oracle数据库单个数据文件的大小限制
- oracle数据库单个数据文件的大小限制
- Oracle数据文件的大小
- Oracle中查询当前数据库中的所有表空间和对应的数据文件语句命令
- oracle中查询某张表的大小
- oracle中查询某张表的大小
- oracle中数据文件的描述
- 查询数据库中每个表的大小
- Oracle中不同条件的日期查询
- Oracle中不同条件的日期查询
- 在Oracle数据库中移动数据文件的具体方法
- 在Oracle数据库中移动数据文件的具体方法
- Linux中模拟oracle数据文件的误删除与恢复
- 查询Oracle 数据库中带有lob字段的某一个表的大小
- 操作系统中不同的锁
- 不同机器中不同变量的大小
- php-fpm通过request_slowlog_timeout检查哪个脚本执行时间长
- c文件操作 (转)
- 解决BASH SHELL脚本报错 ‘: not a valid identifier
- 经济学十大原理之二:理性人考虑边际量
- 递归方法创建二叉树,遍历二叉树
- 操作系统中数据文件与ORACLE数据库中查询的bytes大小不同的解析
- Mac下 Xcode4.6.3,cocos2d-x2.2(或者cocos2d-x2.1.5)Android,eclipse(2013 September版本)跨平台环境配置以及创建跨平台项目
- java中newInstance()与new 比较
- System.Data.OracleClient需要Oracle客户端软件8.1.7或更高版本 的解决办法 vs2010 链接oracle数据库
- zoj 1914 poj 2349 Arctic Network
- MediaRecorder.start报错 start.fail -19
- 取石子游戏(原创)
- 在哪里工作更好?Facebook大胜Google
- Cmake入门第一课