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

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

1、先对磁盘进行分区,sdd如下面的方法炮制
#下面的示例中使用sdc和sdd来用作裸设备,一块用于ocr,一块用于votingdisk
bo2dbp:~ # fdisk /dev/sdc
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel. Changes will remain in memory only,
until you decide to write them. After that, of course, the previous
content won't be recoverable.

Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)

Command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
p
Partition number (1-4): 
Value out of range.
Partition number (1-4): 
Value out of range.
Partition number (1-4): 1
First cylinder (1-200, default 1): 
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-200, default 200): 
Using default value 200

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.

2、分区后的结果
bo2dbp:~ # fdisk -l /dev/sdc

Disk /dev/sdc: 209 MB, 209715200 bytes
64 heads, 32 sectors/track, 200 cylinders
Units = cylinders of 2048 * 512 = 1048576 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sdc1               1         200      204784   83  Linux
bo2dbp:~ # fdisk -l /dev/sdd

Disk /dev/sdd: 209 MB, 209715200 bytes
64 heads, 32 sectors/track, 200 cylinders
Units = cylinders of 2048 * 512 = 1048576 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sdd1               1         200      204784   83  Linux

3、配置裸设备
bo2dbp:~ # vi /etc/raw

# /etc/raw
#
# sample configuration to bind raw devices
# to block devices
#
# The format of this file is:
# raw:
#
# example:
# ---------
# raw1:hdb1
#
# this means: bind /dev/raw/raw1 to /dev/hdb1
#
# ...

#Add new raw devices
raw1:sdc1
raw2:sdd1

4、启动裸设备
bo2dbp:~ # rcraw start
bind /dev/raw/raw1 to /dev/sdc1...                                    done
bind /dev/raw/raw2 to /dev/sdd1...                                    done

5、配置裸设备随系统启动
bo2dbp:~ # chkconfig raw
raw  on
#修改裸设备的权限与所有者,尽管该操作会修改,但重启之后将失效。永久修改见第7点.检查裸设备是否自动激活: chkconfig --list | grep raw
bo2dbp:~ # 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=200
dd: writing `/dev/raw/raw1': No space left on device
200+0 records in
199+0 records out
209698816 bytes (210 MB) copied, 2.59567 seconds, 80.8 MB/s

7、修改裸设备启动后权限及所有者
#使用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_0612
bo2dbp:~ # ls -hltr /dev/raw
total 0
crw-rw---- 1 root   disk 162, 0 Sep 19 10:22 rawctl
crw-rw---- 1 oracle dba  162, 1 Sep 19 10:22 raw1
crw-rw---- 1 oracle dba  162, 2 Sep 19 10:22 raw2

bo2dbs:~ # /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体系结构)       

 

你可能感兴趣的:(-----Linux相关特性,suse,linux,oracle,command,table,脚本)