当前位置:  数据库>oracle

Oracle Study--RAW Device在Oracle下的应用

    来源: 互联网  发布时间:2017-06-09

    本文导语: 1、 什么是裸设备(RAW DEVICE) 裸设备是指未创建文件系统的磁盘分区(raw partition)或逻辑卷(raw logical volume),应用程序直接通过一个字符设备驱动程序对它进行访问。如何对设备上的数据读写决定于使用它的应用程序。由于对裸设备...

1、 什么是裸设备(RAW DEVICE)

裸设备是指未创建文件系统的磁盘分区(raw partition)或逻辑卷(raw logical volume),应用程序直接通过一个字符设备驱动程序对它进行访问。如何对设备上的数据读写决定于使用它的应用程序。由于对裸设备的操作不通过UNIX的缓冲区,数据在Oracle的数据缓冲区(BUFFER CACHE)和磁盘之间直接传递,所以使用裸设备在一定程度上能够提高I/O性能,适合I/O量大的系统。另外OPS/RAC (Oracle Parallel Server/Real Application Cluster)环境下,多个节点同时访问同一个数据库,所以CONTROL FILE、DATA FILE、REDO LOG都必须建在RAW DEVICE上。

2、裸设备的可用空间

不同的UNIX对裸设备的管理不完全相同,特别要注意的是某些UNIX在每个裸设备的头部要保留一定的空间,应用程序在使用裸设备时不可以覆盖这一部分,否则会对裸设备造成损坏。所以一个裸设备的实际可用空间是分配给裸设备的空间再减去这部分操作系统保留空间。下面是常用UNIX的OS Reserved Size列表:

UNIX     OS Reserved Size
------------           - ---------------
SUN Solaris         0
HP-UX          0
IBM AIX         4k
Tru64 UNIX       64k
Linux          0

3、dd命令

UNIX上读写裸设备不能使用cp, cpio, tar等命令,必须用dd,下面是几个dd常用参数的简单说明,更详细的信息请参考UNIX使用手册或用命令man dd。
dd [ operand=value ... ]
if=file 指定输入文件,缺省值是标准输入
of=file 指定输出文件,缺省值是标准输出
bs=n 设置输入和输出的块大小为n字节,也可以用“k”作单位
skip=n 在拷贝之前跳过n个输入块,缺省值是0
seek=n 在拷贝之前从输出文件首部跳过n块,缺省值是0
count=n 指定拷贝的块数,缺省拷贝到输入文件结束

4、在raw上创建数据文件可用空间

SQL> CREATE TABLESPACE ts_test DATAFILE '/dev/rlv_data' SIZE 8180k;
SIZE指定的数值必须小于或等于8180k,否则语句将会失败:
ORA-01119: error in creating database file '/dev/rlv_data'
ORA-27042: not enough space on raw partition to fullfill request
这个最大值的计算方法如下:
8192k(RAW DEVICE SIZE) - 4k (OS_RESERVED_SIZE) - 8k (DB_BLOCK_SIZE) = 8180k
为什么还要减去一个DB_BLOCK_SIZE呢?这是因为ORACLE建立DATAFILE时,在命令中SIZE指定的大小之外,还要在文件头另加一个BLOCK,叫作“Oracle OS Header Block”,里面保存有这个文件的逻辑块大小和文件块数等信息。这一点并不是在RAW DEVICE上建DATAFILE特有的,如果你在文件系统上建一个DATAFILE,指定SIZE 1000k的话,你用ls -l或dir命令看到的文件大小将是1008k (DB_BLOCK_SIZE=8K)。


    
 
 

您可能感兴趣的文章:

  • 哪位兄弟用过oracle的J2EE应用服务器IAS?据说“在应用服务器领域:Oracle第一,IBM第二,BEA第三”
  • Oracle、应用服务器(weblogic)一般安装在那个目录下好!
  • 请问保存文章内容的字段应用什么类型的(oracle),急!!!
  • unix通过crontab 定时启动oracle应用程序??????????
  • 成功实现应用程序和Oracle客户端一起打包
  • ORACLE数据库应用开发常见问题及排除
  • sqlserver iis7站长之家
  • Linux(Oracle系统在上面)系统无缘无故死机 , 可能是由于应用程序引起 , 可是由于重新启动查不到相关信息 , 不知道在哪里有记录系统CPU Lo
  • oracle异常(预定义异常,自定义异常)应用介绍
  • 详解如何应用改变跟踪技术加速Oracle递增备份
  • 用Oracle9ias开发无线应用程序开发者网络Oracle
  • 也谈Oracle 数据库的绑定变量特性及应用
  • Oracle创建主键自增表(sql语句实现)及触发器应用
  • Oracle Table Demo语句应用介绍
  • Oracle应用集成架构不断实现创新
  • Oracle中的树型递归的应用
  • oracle 声明游标(不具备字段)规则应用
  • Oracle数据库及应用程序优化开发者网络Oracle
  • Oracle中自连接和case when,decode的应用
  • Oracle数据库应用程序性能优化探究
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • Oracle 12c发布简单介绍及官方下载地址
  • 在linux下安装oracle,如何设置让oracle自动启动!也就是让oracle那个服务自动启动,不是手动的
  • oracle 11g最新版官方下载地址
  • 请问su oracle 和su - oracle有什么不同?
  • Oracle 数据库(oracle Database)Select 多表关联查询方式
  • 虚拟机装Oracle R12与Oracle10g
  • Oracle数据库(Oracle Database)体系结构及基本组成介绍
  • Oracle 数据库开发工具 Oracle SQL Developer
  • 如何设置让Oracle SQL Developer显示的时间包含时分秒
  • Oracle EBS R12 支持 Oracle Database 11g
  • Oracle 10g和Oracle 11g网格技术介绍
  • SCO unix下安装oracle,但没有光盘,请大家推荐一个oracle下载站点(unix版本的)。谢谢!!!!
  • oracle中如何把表中具有相同值列的多行数据合并成一行
  • 请问大家用oracle数据库, 用import oracle.*;下的东西么? 还是用标准库?
  • Oracle 数据库(oracle Database)性能调优技术详解
  • Linux /$ORACLE_HOME $ORACLE_HOME
  • ORACLE日期相关操作
  • Linux系统下Oracle的启动与Oracle监听的启动
  • ORACLE数据库常用字段数据类型介绍
  • 请问在solaris下安装ORACLE,用root用户和用oracle用户安装有什么区别么?
  • Oracle 12c的九大最新技术特性介绍
  • 网间Oracle的连接,远程连接Oracle服务器??


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,