SUSE Linux 10 配置裸设备(raw devices)

来源:互联网 发布:云计算的典型应用案例 编辑:程序博客网 时间:2024/05/18 23:54

      裸设备,是没有经过格式化的分区或磁盘,也叫裸分区(原始分区),不被Unix通过文件系统来读取的特殊字符设备。它由应用程序负责对
它进行读写操作。不经过文件系统的缓冲,是不被操作系统直接管理的设备。由于跨过操作系统管理,使得I/O效率更高。在基于SUSE Linux
10上安装Oracle 10g RAC的话,由于Oracle 10g 不支持将ocr与votingdisk 存放在ASM 磁盘中,因此,依然需要为其使用裸设备方式。SUSE
Linux裸设备的配置与其他的Linux稍有差异,下面将具体描述。

1、先对磁盘进行分区,sdd如下面的方法炮制#下面的示例中使用sdc和sdd来用作裸设备,一块用于ocr,一块用于votingdiskbo2dbp:~ # fdisk /dev/sdcDevice contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabelBuilding a new DOS disklabel. Changes will remain in memory only,until you decide to write them. After that, of course, the previouscontent won't be recoverable.Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)Command (m for help): nCommand action   e   extended   p   primary partition (1-4)pPartition number (1-4): Value out of range.Partition number (1-4): Value out of range.Partition number (1-4): 1First cylinder (1-200, default 1): Using default value 1Last cylinder or +size or +sizeM or +sizeK (1-200, default 200): Using default value 200Command (m for help): wThe partition table has been altered!Calling ioctl() to re-read partition table.Syncing disks.2、分区后的结果bo2dbp:~ # fdisk -l /dev/sdcDisk /dev/sdc: 209 MB, 209715200 bytes64 heads, 32 sectors/track, 200 cylindersUnits = cylinders of 2048 * 512 = 1048576 bytes   Device Boot      Start         End      Blocks   Id  System/dev/sdc1               1         200      204784   83  Linuxbo2dbp:~ # fdisk -l /dev/sddDisk /dev/sdd: 209 MB, 209715200 bytes64 heads, 32 sectors/track, 200 cylindersUnits = cylinders of 2048 * 512 = 1048576 bytes   Device Boot      Start         End      Blocks   Id  System/dev/sdd1               1         200      204784   83  Linux3、配置裸设备bo2dbp:~ # vi /etc/raw# /etc/raw## sample configuration to bind raw devices# to block devices## The format of this file is:# raw<N>:<blockdev>## example:# ---------# raw1:hdb1## this means: bind /dev/raw/raw1 to /dev/hdb1## ...#Add new raw devicesraw1:sdc1raw2:sdd14、启动裸设备bo2dbp:~ # rcraw startbind /dev/raw/raw1 to /dev/sdc1...                                    donebind /dev/raw/raw2 to /dev/sdd1...                                    done5、配置裸设备随系统启动bo2dbp:~ # chkconfig rawraw  on#修改裸设备的权限与所有者,尽管该操作会修改,但重启之后将失效。永久修改见第7点.检查裸设备是否自动激活: chkconfig --list | grep rawbo2dbp:~ # chown oracle:dba /dev/raw/raw[1-2]bo2dbp:~ # chmod 660 /dev/raw/raw[1-2]6、测试裸设备bo2dbp:~ # dd if=/dev/zero of=/dev/raw/raw1 bs=1024k count=200dd: writing `/dev/raw/raw1': No space left on device200+0 records in199+0 records out209698816 bytes (210 MB) copied, 2.59567 seconds, 80.8 MB/s7、修改裸设备启动后权限及所有者#使用root用户修改/etc/udev/rules.d/50-udev-default.rules,确保raw设备的权限GROUP="dba", MODE="660", OWNER="oracle"#将其中包含KENREL=="raw"的记录修改为如下KERNEL=="raw[0-9]*", SUBSYSTEM=="raw", NAME="raw/%k", GROUP="dba", MODE="660", OWNER="oracle"8、确认配置成功#重启之后的状态     #Author :Robinson Cheng  Blog:http://blog.csdn.net/robinson_0612bo2dbp:~ # ls -hltr /dev/rawtotal 0crw-rw---- 1 root   disk 162, 0 Sep 19 10:22 rawctlcrw-rw---- 1 oracle dba  162, 1 Sep 19 10:22 raw1crw-rw---- 1 oracle dba  162, 2 Sep 19 10:22 raw2bo2dbs:~ # /usr/sbin/raw -qa /dev/raw/raw1:  bound to major 8, minor 33/dev/raw/raw2:  bound to major 8, minor 49

更多参考
Linux/Unix shell sql 之间传递变量
Linux/Unix shell 脚本中调用SQL,RMAN脚本
 

基于用管理的备份备份请参

    Oracle 冷备份

    Oracle 热备份

    Oracle 备份恢复概念

    Oracle 实例恢复

    Oracle 基于用户管理恢复的处理(详细描述了介及其)

    SYSTEM 表空间管理及备份恢复

    SYSAUX表空间管理及恢复

   Oracle 基于备份控制文件的恢复(unsing backup controlfile)

 

RMAN的备份复与管理请参

    RMAN 概述及其体系结构

    RMAN 配置、监控与管理

    RMAN 备份详解

    RMAN 还原与恢复

    RMAN catalog 的创建和使用

    基于catalog 创建RMAN存储脚本

    基于catalog 的RMAN 备份与恢复

    RMAN 备份困惑(使用plus archivelog)

 

ORACLE体系结构请参

    Oracle 表空间与数据文件

    Oracle 密码文件

    Oracle 参数文件

    Oracle 联机重做日志文件(ONLINE LOG FILE)

    Oracle 控制文件(CONTROLFILE)

    Oracle 归档日志

    Oracle 回滚(ROLLBACK)和撤销(UNDO)

    Oracle 数据库实例启动关闭过程

    Oracle 10g SGA 的自动化管理

    Oracle 实例和Oracle数据库(Oracle体系结构)