Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2885718
  • 博文数量: 599
  • 博客积分: 16398
  • 博客等级: 上将
  • 技术积分: 6875
  • 用 户 组: 普通用户
  • 注册时间: 2009-11-30 12:04
个人简介

WINDOWS下的程序员出身,偶尔也写一些linux平台下小程序, 后转行数据库行业,专注于ORACLE和DB2的运维和优化。 同时也是ios移动开发者。欢迎志同道合的朋友一起研究技术。 数据库技术交流群:58308065,23618606

文章分类

全部博文(599)

文章存档

2014年(12)

2013年(56)

2012年(199)

2011年(105)

2010年(128)

2009年(99)

分类: Oracle

2009-12-07 22:00:19

3. 在第一个虚拟机上安装并配置Enterprise Linux

 () 并解压缩文件:

  • Enterprise-R4-U4-i386-disc1.iso
  • Enterprise-R4-U4-i386-disc2.iso
  • Enterprise-R4-U4-i386-disc3.iso
  • Enterprise-R4-U4-i386-disc4.iso

Wilson注:可以从 下载这些介质


  1. 在 VMware Server 控制台上,双击右面板上的 CD-ROM 设备,然后选择第 1 张磁盘的 ISO 镜像 Enterprise-R4-U4-i386-disc1.iso。
  2. VMware Server 控制台:
    • 单击 Start this virtual machine
  3. Enter 键以图形模式安装。
  4. 跳过介质测试并启动安装。
  5. 欢迎使用 Enterprise Linux:单击 Next
  6. 语言选择:<选择语言首选项>。
  7. 键盘配置:<选择键盘首选项>。
  8. 安装类型:自定义。
  9. 磁盘分区设置:使用 Disk Druid 进行手动分区。
    • 警告:单击 Yes 将初始化每个设备 — sda、sdb、sdc、sdd 和 sde。
  10. 磁盘设置:通过双击挂载点(/ 和 /u01)和交换空间的 /dev/sda 可用空间来分配 sda 驱动器上的磁盘空间。您稍后将为 OCFS2 和 ASM 配置其余驱动器。
    • 添加分区:
      • 挂载点: /
      • 文件系统类型:ext3
      • 开始柱面: 1
      • 结束柱面: 910

      • 文件系统类型:Swap
      • 开始柱面: 911
      • 结束柱面: 1170

      • 挂载点:/u01
      • 文件系统类型:ext3
      • 开始柱面: 1171
      • 结束柱面: 2610
图 2
  1. 引导加载程序配置:仅选择默认的 /dev/sda1,其余选项均保留未选中状态。
  2. 网络配置:
    1. 网络设备
      • 选择并编辑 eth0
        1. 取消选择 Configure Using DHCP
        2. 选择 Activate on boot
        3. IP 地址:输入“192.168.2.131”。/* Wilson注: 由于本网卡使用的bridge方式。其IP地址的选择应该和你Windows主机的IP地址在同一个网段。这样windows主机才可能和该Linux虚拟机想通,才可以把Oracle的介质传送到Linux当中。举个例子: 如果你的windows机器的IP地址是192.168.1.5, 那么这里的地址也要设置成192.168.1.xxx,而不是192.168.2.xxx */
        4. 网络掩码:输入“255.255.255.0”。
      • 选择并编辑 eth1
        1. 取消选择 Configure Using DHCP
        2. 选择 Activate on boot
        3. IP 地址:输入“10.10.10.31”。
        4. 网络掩码:输入“255.255.255.0”。
    2. 主机名
      • 选择 manually 并输入“rac1.mycorpdomain.com”。
    3. 杂项设置
      • 网关:输入“192.168.2.1”。
      • 首选 DNS:<可选>
      • 备用 DNS:<可选>
  3. 防火墙配置:
    1. 选择 No Firewall。如果启用了防火墙,当您稍后在设置期间尝试挂载 ocfs2 文件系统时,可能会遇到错误“mount.ocfs2:Transport endpoint is not connected while mounting”。
    2. 启用 SELinux 吗?:Active。
  4. 警告 — 无防火墙:单击 Proceed
  5. 其他语言支持:<选择所需的语言>。
  6. 时区选择:<选择您的时区>
  7. 设置 Root 口令:<输入您的 root 口令>
  8. 程序包组选择:
    1. 选择 X Window System
    2. 选择 GNOME Desktop Environment
    3. 选择 Editors
      • 单击 Details 并选择您偏好的文本编辑器。
    4. 选择 Graphical Internet
    5. 选择 Text-based Internet
    6. 选择 Office/Productivity
    7. 选择 Sound and Video
    8. 选择 Graphics
    9. 选择 Server Configuration Tools
    10. 选择 FTP Server
    11. 选择 Legacy Network Server
      • 单击 Details
        1. 选择 rsh-server
        2. 选择 telnet-server
    12. 选择 Development Tools
    13. 选择 Legacy Software Development
    14. 选择 Administration Tools
    15. 选择 System Tools
      • 单击 Details。除了默认选中的程序包外,再选择以下程序包。
        1. 选择 ocfs-2-2.6.9-42.0.0.0.1EL(UP 内核驱动程序),或者选择 ocfs-2-2.6.9-42.0.0.0.1ELsmp(SMP 内核驱动程序)。
        2. 选择 ocfs2-tools
        3. 选择 ocfs2console
        4. 选择 oracle oracleasm-2.6.9-42.0.0.0.1EL(UP 内核驱动程序),或者选择 oracleasm-2.6.9-42.0.0.0.1ELsmp(SMP 内核驱动程序)。
        5. 选择 sysstat
    16. 选择 Printing Support
  9. 准备安装:单击 Next
  10. 所需的安装介质:单击 Continue
  11. 更改 CD-ROM:在 VMware Server 控制台上,按 CTRL-D 显示 Virtual Machine Settings。单击 CD-ROM 设备并选择第 2 张磁盘的 ISO 镜像 Enterprise-R4-U4-i386-disc2.iso,然后是第 3 张磁盘的 ISO 镜像 Enterprise-R4-U4-i386-disc3.iso。
  12. 安装结束时:
    1. 在 VMware Server 控制台上,按 CTRL-D 显示 Virtual Machine Settings。单击 CD-ROM 设备并选择 Use physical drive
    2. 单击 Reboot
  13. 欢迎页面:单击 Next
  14. 许可协议:选择 Yes, I agree to the License Agreement
  15. 日期和时间:设置日期和时间。
  16. 显示:<选择所需的分辨率>。
  17. 系统用户:保留项目为空并单击 Next
  18. 其他 CD:单击 Next
  19. 完成设置:单击 Next
图 3

恭喜,您已经在 VMware Server 上安装了 Enterprise Linux!

安装 VMware 工具。VMware 工具要求同步主机和客户机的时间。

在 VMware 控制台上,以 root 用户身份登录。

  1. 单击 VM,然后选择 Install VMware Tools
  2. rac1 — 虚拟机:单击 Install
  3. 双击桌面上的 VMware Tools 图标。
  4. cdrom:双击 VMwareTools-1.0.1-29996.i386.rpm
图 4
  1. 完成系统准备:单击 Continue
  2. 打开一个终端并执行 vmware-config-tools.pl
    • 输入所需的显示大小。
同步客户 OS 与主机 OS 的时间。在安装 Oracle 集群件和 Oracle 数据库软件时,Oracle 安装程序将首先在本地节点上安装软件,然后再将软件远程复制到远程节点。如果两个 RAC 节点的日期和时间未同步,您可能会收到类似于以下内容的错误。
"/bin/tar: ./inventory/Components21/oracle.ordim.server/10.2.0.1.0: time 
stamp  2006-11-04 06:24:04 is 25 s in the future"
要确保成功安装 Oracle RAC,虚拟机上的时间必须与主机上的时间同步。执行下面的步骤,以 root 用户身份同步时间。
  1. 执行“vmware-toolbox”以显示 VMware Tools Properties 窗口。/* Wilson注:vmware-toolbox是一个可执行文件,直接在Terminal窗口中以root身份敲vmware-toolbox就可以执行它了 */ 在 Options 选项卡下,选择 Time synchronization between the virtual machine and the host operating system。您应该发现 tools.syncTime = "TRUE" 参数已经追加到虚拟机配置文件 d:\vm\rac\rac1\Red Hat Enterprise Linux 4.vmx 中。
  2. 编辑 /boot/grub/grub.conf,并将选项“clock=pit nosmp noapic nolapic”添加到读取内核 /boot/ 的那一行。您已经将选项添加到两个内核,现在只需对特定内核进行更改。
    #boot=/dev/sda
    default=0
    timeout=5
    splashimage=(hd0,0)/boot/grub/splash.xpm.gz
    hiddenmenu
    title Enterprise (2.6.9-42.0.0.0.1.ELsmp)
            root (hd0,0)
            kernel /boot/vmlinuz-2.6.9-42.0.0.0.1.ELsmp ro 
    root=LABEL=/ rhgb quiet clock=pit nosmp noapic nolapic
            initrd /boot/initrd-2.6.9-42.0.0.0.1.ELsmp.img
    title Enterprise-up (2.6.9-42.0.0.0.1.EL)
            root (hd0,0)
            kernel /boot/vmlinuz-2.6.9-42.0.0.0.1.EL ro root=LABEL=/ 
    rhgb quiet clock=pit nosmp noapic nolapic
            initrd /boot/initrd-2.6.9-42.0.0.0.1.EL.img
    
  3. 重新引导 rac1。
    # reboot
创建 oracle 用户。 以 root 用户身份执行
# groupadd oinstall
# groupadd dba
# mkdir -p /export/home/oracle /ocfs
# useradd -d /export/home/oracle -g oinstall -G dba -s /bin/ksh oracle
# chown oracle:dba /export/home/oracle /u01
# passwd oracle
New Password:
Re-enter new Password:
passwd: password successfully changed for oracle
创建 oracle 用户环境文件。

/export/home/oracle/.profile

export PS1="`/bin/hostname -s`-> "
export EDITOR=vi
export ORACLE_SID=devdb1
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
export ORA_CRS_HOME=$ORACLE_BASE/product/10.2.0/crs_1
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export PATH=$ORACLE_HOME/bin:$ORA_CRS_HOME/bin:/bin:
/usr/bin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin
umask 022
创建文件系统目录结构。以 oracle 用户身份执行
rac1-> mkdir p $ORACLE_BASE/admin 
rac1-> mkdir p $ORACLE_HOME
rac1-> mkdir p $ORA_CRS_HOME
rac1-> mkdir -p /u01/oradata/devdb

提高 Oracle 用户的 shell 限制。使用文本编辑器将下面列出的行添加到 /etc/security/limits.conf、/etc/pam.d/login 和 /etc/profile。其他信息可以从中获得。

/etc/security/limits.conf

oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
/etc/pam.d/login
session required /lib/security/pam_limits.so
/etc/profile
if [ $USER = "oracle" ]; then
	if [ $SHELL = "/bin/ksh" ]; then
		ulimit -p 16384
		ulimit -n 65536
	else
		ulimit -u 16384 -n 65536
	fi
fi
安装 Enterprise Linux 软件程序包。安装 Oracle 软件需要以下附加程序包。如果您已经安装了 64 位版本的 Enterprise Linux,则安装程序应该已安装了这些程序包。
  • libaio-0.3.105-2.i386.rpm
  • openmotif21-2.1.30-11.RHEL4.6.i386.rpm

从 ISO CD 解压缩这些程序包,并以 root 用户身份执行下面的命令。

# ls
libaio-0.3.105-2.i386.rpm  openmotif21-2.1.30-11.RHEL4.6.i386.rpm
#
# rpm -Uvh *.rpm
warning: libaio-0.3.105-2.i386.rpm: V3 DSA signature: NOKEY, key ID b38a8516
Preparing...                
########################################### [100%]
   1:openmotif21            
########################################### [ 50%]
   2:libaio                 
########################################### [100%]
配置内核参数。使用文本编辑器将下面列出的行添加到 /etc/sysctl.conf。要使更改立即生效,请执行 /sbin/sysctl –p
# more  /etc/sysctl.conf
kernel.shmall                = 2097152
kernel.shmmax                = 2147483648
kernel.shmmni                = 4096
kernel.sem                   = 250 32000 100 128
fs.file-max                  = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default        = 1048576
net.core.rmem_max            = 1048576
net.core.wmem_default        = 262144
net.core.wmem_max            = 262144
修改 /etc/hosts 文件。
# more /etc/hosts
127.0.0.1               localhost
192.168.2.131           rac1.mycorpdomain.com        rac1
192.168.2.31            rac1-vip.mycorpdomain.com    rac1-vip
10.10.10.31             rac1-priv.mycorpdomain.com   rac1-priv
192.168.2.132           rac2.mycorpdomain.com        rac2
192.168.2.32            rac2-vip.mycorpdomain.com    rac2-vip
10.10.10.32             rac2-priv.mycorpdomain.com   rac2-priv
配置 hangcheck timer 内核模块。hangcheck timer 内核模块可监控系统的运行情况,并重新启动出现故障的 RAC 节点。它使用两个参数,即 hangcheck_tick(定义系统检查频率)和 hangcheck_margin(定义在重置 RAC 节点前的最大挂起延时)来确定节点是否出现故障。

在 /etc/modprobe.conf 中添加以下行,以设置 hangcheck 内核模块参数。

/etc/modprobe.conf
options hangcheck-timer hangcheck_tick=30 hangcheck_margin=180

要立即加载模块,执行“modprobe -v hangcheck-timer”。

为 OCFS2 和 Oracle ASM 创建磁盘分区。为 OCFS2 (/dev/sdb) 和 Oracle ASM(/dev/sdc、/dev/sdd、/dev/sde)准备一组原始磁盘。

在 rac1 上,以 root 用户身份执行

# fdisk /dev/sdb

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

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

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

# fdisk /dev/sdc

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

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

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

# fdisk /dev/sdd

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

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

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

# fdisk /dev/sde

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

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

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

# fdisk -l

Disk /dev/sda: 21.4 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1         910     7309543+  83  Linux
/dev/sda2             911        1170     2088450   82  Linux swap
/dev/sda3            1171        2610    11566800   83  Linux

Disk /dev/sdb: 536 MB, 536870912 bytes
64 heads, 32 sectors/track, 512 cylinders
Units = cylinders of 2048 * 512 = 1048576 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1         512      524272   83  Linux

Disk /dev/sdc: 3221 MB, 3221225472 bytes
255 heads, 63 sectors/track, 391 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sdc1               1         391     3140676   83  Linux

Disk /dev/sdd: 3221 MB, 3221225472 bytes
255 heads, 63 sectors/track, 391 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sdd1               1         391     3140676   83  Linux

Disk /dev/sde: 2147 MB, 2147483648 bytes
255 heads, 63 sectors/track, 261 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sde1               1         261     2096451   83  Linux
安装 oracleasmlib 程序包。 从 OTN ASM 库,并以 root 用户身份安装 ASM RPM。
 # rpm -Uvh oracleasmlib-2.0.2-1.i386.rpm
Preparing...                
########################################### [100%]
   1:oracleasmlib           
########################################### [100%]

在这个阶段,您应该已经安装了以下 ASM 程序包。

[root@rac1 swdl]# rpm -qa | grep oracleasm
oracleasm-support-2.0.3-2
oracleasm-2.6.9-42.0.0.0.1.ELsmp-2.0.3-2
oracleasmlib-2.0.2-1
为 ASM 磁盘映射原始设备。仅当您打算使用标准 Linux I/O 创建 ASM 磁盘时,才需要原始设备映射。创建 ASM 磁盘的另一个方法是使用 Oracle 提供的 ASM 库驱动程序。稍后,您将使用 ASM 库驱动程序配置 ASM 磁盘。

执行以下任务,将原始设备映射到先前创建的共享分区。每次引导集群节点时,原始设备都必须与块设备绑定。

将以下行添加到 /etc/sysconfig/rawdevices 中。

/etc/sysconfig/rawdevices

/dev/raw/raw1 /dev/sdc1
/dev/raw/raw2 /dev/sdd1
/dev/raw/raw3 /dev/sde1
要使映射立即生效,以 root 用户身份执行以下命令:
# /sbin/service rawdevices restart
Assigning devices:
           /dev/raw/raw1  -->   /dev/sdc1
/dev/raw/raw1:  bound to major 8, minor 33
           /dev/raw/raw2  -->   /dev/sdd1
/dev/raw/raw2:  bound to major 8, minor 49
           /dev/raw/raw3  -->   /dev/sde1
/dev/raw/raw3:  bound to major 8, minor 65
done

# chown oracle:dba /dev/raw/raw[1-3]
# chmod 660 /dev/raw/raw[1-3]
# ls -lat /dev/raw/raw*
crw-rw----  1 oracle dba 162, 3 Nov  4 07:04 /dev/raw/raw3
crw-rw----  1 oracle dba 162, 2 Nov  4 07:04 /dev/raw/raw2
crw-rw----  1 oracle dba 162, 1 Nov  4 07:04 /dev/raw/raw1

以 oracle 用户身份执行

rac1-> ln -sf /dev/raw/raw1 /u01/oradata/devdb/asmdisk1
rac1-> ln -sf /dev/raw/raw2 /u01/oradata/devdb/asmdisk2
rac1-> ln -sf /dev/raw/raw3 /u01/oradata/devdb/asmdisk3

修改 /etc/udev/permissions.d/50-udev.permissions。原始设备在引导时会重新映射。默认情况下,在引导时原始设备的拥有者将更改为 root 用户。如果拥有者不是 oracle 用户,则 ASM 在访问共享分区时会出现问题。在 /etc/udev/permissions.d/50-udev.permissions 中为原始行“raw/*:root:disk:0660”添加注释,然后添加一个新行“raw/*:oracle:dba:0660”。

/etc/udev/permissions.d/50-udev.permissions

# raw devices
ram*:root:disk:0660
#raw/*:root:disk:0660
raw/*:oracle:dba:0660
阅读(1487) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~