Chinaunix首页 | 论坛 | 博客
  • 博客访问: 103678176
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类: LINUX

2008-04-28 22:25:50

 
文章来源数据库在线 作者Jeffrey … 

 

删除 FireWire 共享存储器上的所有分区

在本示例中,我将使用整个 FireWire 磁盘(没有分区)。在这种情况下,我将使用 /dev/sda 来创建逻辑卷 / 物理卷。这并不是完成创建 LVM 环境任务的唯一方法。我们还可以在磁盘上创建 Linux LVM 分区(其类型为 8e )。让我们假设该 LVM 分区是在磁盘上创建的第一个分区。这样我们需要利用 /dev/sda1 来工作。同样,在本示例中,我将使用整个 FireWire 驱动器(没有分区) , 因此要访问 /dev/sda 。在创建物理卷和逻辑卷之前,通过使用 fdisk 命令删除 FireWire 驱动器上的任何现有分区,这是很重要的(因为我们要使用整个磁盘):

# fdisk /dev/sda

Command (m for help):p

Disk /dev/sda:203.9 GB, 203927060480 bytes

255 heads, 63 sectors/track, 24792 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System

/dev/sda1 1 24791 199133676 c Win95 FAT32 (LBA)

Command (m for help):d

Selected partition 1

Command (m for help):p

Disk /dev/sda:203.9 GB, 203927060480 bytes

255 heads, 63 sectors/track, 24792 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System

Command (m for help):w

The partition table has been altered!

Calling ioctl() to re-read partition table.

Syncing disks.

创建逻辑卷

以下的一组命令执行创建逻辑卷所需的步骤:

•  运行 vgscan 命令( 在集群中所有的 RAC 节点上运行 ),以创建 /etc/lvmtab 文件。

•  使用 pvcreate 创建由逻辑卷管理器 (LVM) 所使用的物理卷。

•  使用 vgcreate ,为驱动器或者为您希望用于 RAW 设备的分区创建一个卷组。在这里我们为整个驱动器创建卷。在我们的示例中(如下所示),该命令将允许创建 256 个逻辑分区和 256 个物理分区,范围大小为 128K 。

•  使用 lvcreate 在卷组中创建逻辑卷。

注意: 上文讲到,我需要在所有节点上运行 vgscan 命令,以便该命令能够创建 /etc/lvmtab 文件。应该在运行下列命令之前执行该命令。

将以下命令放在一个 schell 脚本中,更改执行权限,然后以 “root”UNIX 用户 id 来运行该脚本:

vgscan

pvcreate -d /dev/sda

vgcreate -l 256 -p 256 -s 128k /dev/pv1 /dev/sda

lvcreate -L 5m /dev/pv1

lvcreate -L 100m /dev/pv1

lvcreate -L 10m /dev/pv1

lvcreate -L 200m /dev/pv1

lvcreate -L 200m /dev/pv1

lvcreate -L 200m /dev/pv1

lvcreate -L 55m /dev/pv1

lvcreate -L 25m /dev/pv1

lvcreate -L 255m /dev/pv1

lvcreate -L 105m /dev/pv1

lvcreate -L 55m /dev/pv1

lvcreate -L 805m /dev/pv1

lvcreate -L 255m /dev/pv1

lvcreate -L 105m /dev/pv1

lvcreate -L 405m /dev/pv1

lvcreate -L 405m /dev/pv1

lvcreate -L 105m /dev/pv1

lvcreate -L 155m /dev/pv1

lvcreate -L 105m /dev/pv1

lvcreate -L 105m /dev/pv1

lvcreate -L 105m /dev/pv1

lvcreate -L 105m /dev/pv1

lvcreate -L 105m /dev/pv1

使用该脚本(如上所示)将会创建 /dev/pv1/lvol1 - /dev/pv1/lvol23 。

我通常使用 lvscan 命令来检查逻辑卷的状态:

[root@linux2 root]# lvscan

lvscan -- ACTIVE "/dev/pv1/lvol1" [5 MB]

lvscan -- ACTIVE "/dev/pv1/lvol2" [100 MB]

lvscan -- ACTIVE "/dev/pv1/lvol3" [10 MB]

lvscan -- ACTIVE "/dev/pv1/lvol4" [200 MB]

lvscan -- ACTIVE "/dev/pv1/lvol5" [200 MB]

lvscan -- ACTIVE "/dev/pv1/lvol6" [200 MB]

lvscan -- ACTIVE "/dev/pv1/lvol7" [55 MB]

lvscan -- ACTIVE "/dev/pv1/lvol8" [25 MB]

lvscan -- ACTIVE "/dev/pv1/lvol9" [255 MB]

lvscan -- ACTIVE "/dev/pv1/lvol10" [105 MB]

lvscan -- ACTIVE "/dev/pv1/lvol11" [55 MB]

lvscan -- ACTIVE "/dev/pv1/lvol12" [805 MB]

lvscan -- ACTIVE "/dev/pv1/lvol13" [255 MB]

lvscan -- ACTIVE "/dev/pv1/lvol14" [105 MB]

lvscan -- ACTIVE "/dev/pv1/lvol15" [405 MB]

lvscan -- ACTIVE "/dev/pv1/lvol16" [405 MB]

lvscan -- ACTIVE "/dev/pv1/lvol17" [105 MB]

lvscan -- ACTIVE "/dev/pv1/lvol18" [155 MB]

lvscan -- ACTIVE "/dev/pv1/lvol19" [105 MB]

lvscan -- ACTIVE "/dev/pv1/lvol20" [105 MB]

lvscan -- ACTIVE "/dev/pv1/lvol21" [105 MB]

lvscan -- ACTIVE "/dev/pv1/lvol22" [105 MB]

lvscan -- ACTIVE "/dev/pv1/lvol23" [105 MB]

lvscan -- 23 logical volumes with 3.88 GB total in 1 volume group

lvscan -- 23 active logical volumes

重新启动 RAC 集群中的所有节点

在完成分区的创建之后,建议您重新启动所有 RAC 节点上的内核,以确保所有的新分区被所有 RAC 节点上的内核所识别:

# su -

# reboot

重要声明: 切记,您需要在您的一个启动脚本中添加语句,先调用 vgscan ,然后调用 vgchange -a y ,以便您的 RAC 集群中的每台机器在启动时运行它们。这两个命令在激活所有的卷组之前为您提供一个实际的卷管理器数据库。本文将提供所有应该加入到您的 /etc/rc.local 脚本中的设置,以便对 Oracle9 i RAC 集群中的每个节点进行设定。

创建 RAW 绑定(在两个节点上执行)

注意: 在每次启动机器时 , 需要在集群中的每个节点上执行本部分中的一些命令。这些命令的详细信息以及关于将其加入启动脚本的说明都包含在 用于每个 RAC 节点的所有启动命令 一节中。

在本部分中,我将说明如何在 FireWire 共享存储器上配置原始设备,这些设备将用于所有的物理 Oracle 数据库文件,包括 srvctl 的 Cluster Manager Quorum File 和 Shared Configuration File 。

现在,我们已经在 FireWire 共享存储器上创建了所需的分区。我们现在需要使用 raw 命令将所有卷绑定到原始设备:

usr/bin/raw /dev/raw/raw1 /dev/pv1/lvol1

/usr/bin/raw /dev/raw/raw2 /dev/pv1/lvol2

/usr/bin/raw /dev/raw/raw3 /dev/pv1/lvol3

/usr/bin/raw /dev/raw/raw4 /dev/pv1/lvol4

/usr/bin/raw /dev/raw/raw5 /dev/pv1/lvol5

/usr/bin/raw /dev/raw/raw6 /dev/pv1/lvol6

/usr/bin/raw /dev/raw/raw7 /dev/pv1/lvol7

/usr/bin/raw /dev/raw/raw8 /dev/pv1/lvol8

/usr/bin/raw /dev/raw/raw9 /dev/pv1/lvol9

/usr/bin/raw /dev/raw/raw10 /dev/pv1/lvol10

/usr/bin/raw /dev/raw/raw11 /dev/pv1/lvol11

/usr/bin/raw /dev/raw/raw12 /dev/pv1/lvol12

/usr/bin/raw /dev/raw/raw13 /dev/pv1/lvol13

/usr/bin/raw /dev/raw/raw14 /dev/pv1/lvol14

/usr/bin/raw /dev/raw/raw15 /dev/pv1/lvol15

/usr/bin/raw /dev/raw/raw16 /dev/pv1/lvol16

/usr/bin/raw /dev/raw/raw17 /dev/pv1/lvol17

/usr/bin/raw /dev/raw/raw18 /dev/pv1/lvol18

/usr/bin/raw /dev/raw/raw19 /dev/pv1/lvol19

/usr/bin/raw /dev/raw/raw20 /dev/pv1/lvol20

/usr/bin/raw /dev/raw/raw21 /dev/pv1/lvol21

/usr/bin/raw /dev/raw/raw22 /dev/pv1/lvol22

/usr/bin/raw /dev/raw/raw23 /dev/pv1/lvol23

/bin/chmod 600 /dev/raw/raw1

/bin/chmod 600 /dev/raw/raw2

/bin/chmod 600 /dev/raw/raw3

/bin/chmod 600 /dev/raw/raw4

/bin/chmod 600 /dev/raw/raw5

/bin/chmod 600 /dev/raw/raw6

/bin/chmod 600 /dev/raw/raw7

/bin/chmod 600 /dev/raw/raw8

/bin/chmod 600 /dev/raw/raw9

/bin/chmod 600 /dev/raw/raw10

/bin/chmod 600 /dev/raw/raw11

/bin/chmod 600 /dev/raw/raw12

/bin/chmod 600 /dev/raw/raw13

/bin/chmod 600 /dev/raw/raw14

/bin/chmod 600 /dev/raw/raw15

/bin/chmod 600 /dev/raw/raw16

/bin/chmod 600 /dev/raw/raw17

/bin/chmod 600 /dev/raw/raw18

/bin/chmod 600 /dev/raw/raw19

/bin/chmod 600 /dev/raw/raw20

/bin/chmod 600 /dev/raw/raw21

/bin/chmod 600 /dev/raw/raw22

/bin/chmod 600 /dev/raw/raw23

/bin/chown oracle:dba /dev/raw/raw1

/bin/chown oracle:dba /dev/raw/raw2

/bin/chown oracle:dba /dev/raw/raw3

/bin/chown oracle:dba /dev/raw/raw4

/bin/chown oracle:dba /dev/raw/raw5

/bin/chown oracle:dba /dev/raw/raw6

/bin/chown oracle:dba /dev/raw/raw7

/bin/chown oracle:dba /dev/raw/raw8

/bin/chown oracle:dba /dev/raw/raw9

/bin/chown oracle:dba /dev/raw/raw10

/bin/chown oracle:dba /dev/raw/raw11

/bin/chown oracle:dba /dev/raw/raw12

/bin/chown oracle:dba /dev/raw/raw13

/bin/chown oracle:dba /dev/raw/raw14

/bin/chown oracle:dba /dev/raw/raw15

/bin/chown oracle:dba /dev/raw/raw16

/bin/chown oracle:dba /dev/raw/raw17

/bin/chown oracle:dba /dev/raw/raw18

/bin/chown oracle:dba /dev/raw/raw19

/bin/chown oracle:dba /dev/raw/raw20

/bin/chown oracle:dba /dev/raw/raw21

/bin/chown oracle:dba /dev/raw/raw22

/bin/chown oracle:dba /dev/raw/raw23

注意: 切记,需要在每次启动时为 RAC 集群中的每个节点执行以上的 绑定 步骤。它应该放在类似 /etc/rc.local 的启动脚本中。

您可以使用 raw 命令来验证原始绑定:

# raw -qa

/dev/raw/raw1:bound to major 58, minor 0

/dev/raw/raw2:bound to major 58, minor 1

/dev/raw/raw3:bound to major 58, minor 2

/dev/raw/raw4:bound to major 58, minor 3

/dev/raw/raw5:bound to major 58, minor 4

/dev/raw/raw6:bound to major 58, minor 5

/dev/raw/raw7:bound to major 58, minor 6

/dev/raw/raw8:bound to major 58, minor 7

/dev/raw/raw9:bound to major 58, minor 8

/dev/raw/raw10:bound to major 58, minor 9

/dev/raw/raw11:bound to major 58, minor 10

/dev/raw/raw12:bound to major 58, minor 11

/dev/raw/raw13:bound to major 58, minor 12

/dev/raw/raw14:bound to major 58, minor 13

/dev/raw/raw15:bound to major 58, minor 14

/dev/raw/raw16:bound to major 58, minor 15

/dev/raw/raw17:bound to major 58, minor 16

/dev/raw/raw18:bound to major 58, minor 17

/dev/raw/raw19:bound to major 58, minor 18

/dev/raw/raw20:bound to major 58, minor 19

/dev/raw/raw21:bound to major 58, minor 20

/dev/raw/raw22:bound to major 58, minor 21

/dev/raw/raw23:bound to major 58, minor 22

阅读(355) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~