第1阶段:安装VMware。
第 2a 阶段:安装 Linux (RHEL3 U2)
在开始安装之前,请下载并解压缩框架 zip 文件。 然后运行 .vmx 文件,这将打开空的 VM。 1. 将 RHEL3-U2 Disc 1 CD 插入 CD-ROM 驱动器或映射 ISO 镜像文件。 a. 要为 VMware 设置 CD 安装介质,请在 VMware 窗口的 "Devices" 面板中双击 "CD-ROM 1 (IDE 1:0)" 图标。 i. 选择 "Use physical drive:",如果您的软件在物理介质上,那么请转至第 iv 步。 ii.选择 "Use ISO image:" iii.单击 "Browse..." 按钮,转至您下载的 iso 镜像文件: "rhel-3-U2-i386-as-disc1.iso" iv.单击 "OK"。 您现在映射了 CD,因此客户操作系统可以访问该软件。 2. 在 VMware 窗口中,单击绿色箭头,启动 VM。 注意:这里您不需要重启计算机。您仅需在 Windows(或 Linux 主机)桌面上的 VMware 窗口内部启动 VM。 3. 一旦 VM 开始启动,请单击 VMware 工具栏上的 "Enters Full Screen Mode" 图标(右起第二个图标)。 注意:选择这一选项后,所有后续的鼠标和键盘输入将发送至 VM,而不是母操作系统。 要“释放”鼠标和键盘(允许输入返回至主机操作系统),请按 CTRL-ALT 键。 注意:如果您在之前的安装中中途失败,VM 没有到达下面的第 4 步(RedHat 启动提示符), 那么您需要在刚启动虚拟机时按下 F2 键,并将虚拟机的启动顺序修改为“从 CD-ROM 启动”: 按 F2,选择 "Boot",找到 CD-ROM 并按 "+" 直到它位于顶部为止。 按 F10,保存修改,现在 VM 将从 CD-ROM 启动。 4. 在进入全屏模式之后,等待 "Red Hat Enterprise Linux" 启动提示符出现。 a. 在 "boot:" 提示符下按 ENTER 键。 注意:如果您在 60 秒之内没有按 ENTER 键,那么安装程序将自动转至下一步。 这是可以的! 注意:如果您将 ISO 镜像设置在 NFS 或 FTP 上,那么您可以执行网络安装(推荐 100Mbps 或更高带宽), 不按 ENTER 键,按 F2,并输入: linux askmethod,按提示进行操作。 5. 屏幕:"CD Found" a. 按 TAB 直到 "Skip" 高亮显示。 b. 按 ENTER 键。 注意:如果您希望测试安装介质,请选择 "OK" 而不是 "Skip"。 将启动一个图形化屏幕以执行剩下的安装。 6. 屏幕:"Welcome to Red Hat Enterprise Linux" a. 单击 "Next"。 7. 屏幕:"Language Selection" a. 选择您偏好的语言来运行安装程序。 b. 单击 "Next"。 8. 屏幕:"Keyboard Configuration" a. 根据以下准则来选择布局: 在美国:您一般应选择 "U.S. English" 其他地方:选择最适合您的国家的布局。 b. 单击 "Next"。 9. 屏幕:"Mouse Configuration" a. 模式:选择 "3 Button Mouse (PS/2)"。 注意:因为我们在使用 VMware,因此您必须选择 PS/2 风格的鼠标, — 即使您的计算机实际安装了一个 USB 鼠标。 不过,如果我们在实际的计算机上进行安装,那么我们将选择合适的鼠标类型。 b. 设备:这个框将变灰,因此无需任何选择。 c. 保持 "Emulate 3 buttons" 复选框为未选中状态。 d. 单击 "Next"。 10. 屏幕:"Disk Partitioning Setup" a. 选择 "Manually partition with Disk Druid"。 b. 单击 "Next"。 c. 对话框:"The partition table on device was unreadable... Would you like to initialize this drive?" i. 单击 "Yes"。 注意:该对话框将出现 5 次:分别在 "sda"、"sdb"、"sdc"、"sdd" 和 "sde" 的情况下。 请每一次都单击 "Yes"。 11. 屏幕:"Disk Setup" a. 在屏幕的右下部分,在 "/dev/sda" 下双击 "Free space"。 i. 挂载点:从下拉菜单中选择 "/"。 ii.文件系统类型:选择默认的 "ext3"。 iii.其它所有的选项保持不变。 iv.单击 "OK"。 b. 在屏幕的右下部分,在 "/dev/sdb" 下双击 "Free space"。 i. 挂载点:该域保持为空白。 ii.文件系统类型:从下拉菜单中选择 "swap"。 iii.所有其他选项保持不变。 iv.单击 "OK"。 c. 在屏幕的右下部分,在 "/dev/sdc" 下双击 "Free space"。 i. 挂载点:输入 "/opt/oracle"。 ii. 文件系统类型: 选择默认的 "ext3"。 iii. 所有其他选项保持不变。 iv.单击 "OK"。 d. "/dev/sdd" 和 "/dev/sde" 保持为未分区状态。我们将稍后处理它们 sdd 将用于 OCFS 数据 sde 将用于原始设备应用 e. 单击 "Next"。 12. 屏幕:"Boot Loader Configuration" a. 默认将选择 GRUB 启动加载程序。 b. "Use a boot loader password" 复选框保持为未选中状态。 c. "Configure advanced boot loader options" 复选框保持为未选中状态。 d. 单击 "Next"。 13. 屏幕:"Network Configuration" a. 网络设备 i. 选择 "eth0" 并单击 "Edit"。 1. 取消选择 "Configure using DHCP"。 2. "Activate on boot" 保持为选中状态。 3. IP 地址:输入 "192.168.203.11"。 4. 网络掩码:输入 "255.255.255.0"。 5. 单击“Ok”。 ii.选择 "eth1" 并单击 "Edit"。 1. 取消选择 "Configure using DHCP"。 2. 选择 "Activate on boot"。 3. IP 地址:输入 "10.10.10.11"。 4. 网络掩码:输入 "255.255.255.0"。 5. 单击“Ok”。 b. 主机名 i. 选择 "manually" ii.输入 "raclinux1.us.oracle.com" 注意:服务器主机名中输入的必须是完全限定域名,否则某些 Oracle 产品将不能正常工作。 c. 杂项设置 i. 网关:输入 "192.168.203.2"。 ii.主 DNS:输入 "192.168.203.2"。 注意:如果在安装完成之后您需要修改 DNS 服务器,那么您可以在 /etc/resolv.conf 中编辑列表。 d. 单击 "Next"。 14. 屏幕:"Firewall Configuration" a. 选择 "No firewall"。 注意:这里我们选择 "No firewall" 来简化配置。 在实际的 Oracle 安装中,请选择最适合于服务器部署至的安全策略的防火墙配置。 b. 单击 "Next"。 15. 屏幕:"Additional Language Support" a. 选择您可能想在该服务器上使用的任何额外的语言。 b. 单击 "Next"。 16. 屏幕:"Time Zone Selection" a. 从底部的列表或顶部的地图中选择最合适的时区。 b. 保持 "System clock uses UTC" 复选框为未选中状态。 c. 单击 "Next"。 17. 屏幕:"Set Root Password" a. 根用户口令/确认:输入 "oracle"。 b. 单击 "Next"。 18. 屏幕:"Package Installation Defaults" a. 选择 "Customize the set of packages to be installed" b. 单击 "Next"。 19. 屏幕:"Package Group Selection" a. 在 "Applications" 标题下: i. 选择 "Editors"。 ii.单击 "Editors" 条目右边的 "Details"。 1. 取消选择 "Emacs" 复选框(为了节省空间)。 2. 单击 "OK"。 b. (可选)在 "Servers" 标题下: i. 选择 "FTP Server" ii.选择 "Legacy Network Server" iii.单击右边的 "Details" iv.选择 "telnet-server" 和 "rsh-server" 对 10g 而言不需要,但有些人喜欢安装这些。 v. 单击 "Close" c. 在 "Development" 标题下: i. 选择 "Development Tools"。 ii.选择 "Legacy Software Development"。 注意:在这里您必须为将安装 Oracle 软件的任何服务器选择这些软件开发程序包选项。 没有安装 "Software Development" 选项,Oracle 软件的安装将失败。 d. 在 "System" 标题下: i. 选择 "System Tools"。 ii.单击 "System Tools" 条目右边的 "Details"。 1. 在 "Optional Packages" 下向下滚动,并选中 "sysstat" 复选框。 2. 单击 "OK"。 e. 单击 "Next"。 注意:如果您在上面的步骤中遗忘了任何程序包,您可以通过点击 Fedora(Red Hat 图标) -> System Settings -> Add Remove Applications 或运行 redhat-config-packages 或使用 rpm -Uhv * 来将它们添加到运行系统中。 20. 屏幕:"About to Install" a. 单击 "Next"。 21. 屏幕:"Installing Packages" a. 在格式化文件系统之后(几分钟),将结束使用该 CD。 b. 对话框:"Please insert disc 2 to continue"。 i. 按 CTRL-ALT,退出全屏模式。 ii.弹出当前 CD 并插入 RHEL3-U2 Disc 2 CD 或映射 ISO 镜像。 iii.从 VMware 菜单中选择 "VM" --> "Settings..."(或按 CTRL-D)来打开 "Virtual Machine Settings"。 1. 单击 "CD-ROM 1 (IDE 1:0)" 图标。 2. 选择 "Use physical drive:",如果您的软件在物理介质上, 那么请转至第 4 步。否则,请选择 "Use ISO image:" 3. 单击 "Browse..." 按钮并转至您下载的 ISO 镜像: rhel-3-U2-i386-as-disc2.iso。 4. 单击 "OK"。 iv.单击 VMware 工具栏上的 "Enters Full Screen Mode" 图标。 v. 单击 "OK"。 c. 在大约 30 分钟之后,将结束使用该 CD。 d. 对话框:"Please insert disc 3 to continue." i. 使用 "rhel-3-U2-i386-as-disc3.iso" 文件重复上面的步骤 '21.b.'。 e. 在大约 10 分钟之后,将结束使用该 CD。 f. 对话框:"Please insert disc 4 to continue." i. 使用 "rhel-3-U2-i386-as-disc4.iso" 文件重复上面的步骤 '21.b.'。 g. 在大约 1 分钟之后,将结束使用该 CD。 h. 对话框:"Please insert disc 1 to continue." i. 使用 "rhel-3-U2-i386-as-disc1.iso" 文件重复上面的步骤 '21.b.'。 i. 文件将继续拷贝大约 1 分钟。 22. 屏幕:"Graphical Interface (X) Configuration" a. 保持 "VMWare" 为选中状态。 b. "Video Card RAM" 保持为默认状态。 c. "Skip X configuration" 复选框保持为未选中状态。 d. 单击 "Next"。 23. 屏幕:"Monitor Configuration" a. 对于笔记本显示器,请展开 "Generic LCD Display" 类别。 b. 选择 "LCD Panel 1024x768"(或最适合您的显示器的大小)。 c. 单击 "Next"。 24. 屏幕:"Customize Graphics Configuration" a. 颜色深度:选择 "High Color (16 Bit)"。 b. 屏幕分辨率:选择您偏好的屏幕分辨率。 c. 单击 "Next"。 25. 屏幕:"Congratulations" a. 单击 "Exit"。 b. CD 将自动弹出,Linux 将重启。 26. (在重启之后)屏幕:"Welcome" a. 单击 "Next"。 27. 屏幕:"License Agreement" a. 选择 "Yes, I agree to the License Agreement"。 b. 单击 "Next"。 28. 屏幕:"Date and Time" a. 如果需要的话,调整当前的日期和时间。 b."Enable Network Time Protocol" 复选框保持为未选中状态。 c. 单击 "Next"。 29. 屏幕:"User Account" a. 所有域保持为空白。我们将在稍后创建 oracle 用户。 b. 单击 "Next"。 c. 对话框:"Warning..." i. 单击 "Continue"。 30. 屏幕:"Sound Card" a. 单击 "Next"。 31. 屏幕:"Red Hat Network" a. 选择 "No, I do not want to register my system." b. 单击 "Next"。 32. 屏幕:"Additional CDs" a. 单击 "Next"。 33. 屏幕:"Finish Setup" a. 单击 "Next"。 Linux 将继续启动并显示一个图形化的登录提示。 34. 以 root/oracle 身份登录。 a. 启动一个终端窗口(主菜单 --> System Tools --> Terminal)。 b. 要创建 oracle 用户和用户组: i. 以 root 身份创建 Oracle 用户: groupadd -g 500 dba groupadd -g 501 oinstall useradd -u 500 -g dba -G oinstall -m -s /bin/bash oracle ii.设置口令 "passwd oracle"。 1. 在 "New password:" 提示符下,输入 "oracle"。 2. 忽略 "BAD PASSWORD: it is based on a dictionary word" 警告。 3. 在 "Retype new password:" 提示符下,再次输入 "oracle"。 c. 要确认 IP 地址是否正确设置: i. 公共接口 (eth0) 1. 运行 "ifconfig eth0"。 ii.专用接口 (eth1) 1. 运行 "ifconfig eth1"。 注意:如果您只看到 1 个 NIC,请确认当机器在 VMware 和 RedHat 中启动时,该设备被标记为“活动”(运行 "# neat")。 d. 编辑 /etc/hosts: i. 运行 "vi /etc/hosts" 或 "nedit /etc/hosts"。 ii.清理 127.0.0.1 行,使之与以下示例匹配。 iii.添加 6 个新行(如以下示例所示): 127.0.0.1 localhost.localdomain localhost 10.10.10.11 raclocal1.us.oracle.com raclocal1 10.10.10.12 raclocal2.us.oracle.com raclocal2 192.168.203.11 raclinux1.us.oracle.com raclinux1 192.168.203.12 raclinux2.us.oracle.com raclinux2 192.168.203.111 raclinux1-vip.us.oracle.com raclinux1-vip 192.168.203.112 raclinux2-vip.us.oracle.com raclinux2-vip 注意:还可以使用 GUI 网络配置工具来执行上面的步骤: gnome (Start)-> Programs->System->Network Configuration — 或 — # /usr/sbin/redhat-config-network e. 修改内核参数以符合 Oracle10g 的需求: i. 运行 "vi /etc/sysctl.conf" 或 "nedit /etc/sysctl.conf"。 ii.将以下行添加到文件末尾: fs.file-max = 65536 kernel.shmmax = 2147483648 kernel.sem = 250 32000 100 128 net.ipv4.ip_local_port_range = 1024 65000 net.core.rmem_default = 262144 net.core.rmem_max = 262144 net.core.wmem_default = 262144 net.core.wmem_max = 262144 iii.运行 "sysctl -p",使修改生效。 f. (可选)VMWARE 特有:虽然 RHEL3 中包含有用于 vmware 的视频驱动程序,但它们提供的功能比 vmware 软件所提供的要少。 要从 vmware 中安装更好的驱动程序(称为“vmware 工具”,它们允许缩减虚拟磁盘、与主机操作系统同步时间等),请执行以下操作: 1. 切换至在 level 3 下运行(无 GUI) — 这是安装 VMware 工具一般所需要的: # telinit 3 2. 按 CTRL-ALT 键,将鼠标和键盘从 VM 中释放。 3. 从 VMware 的 "File" 或 "VM" 菜单中,选择 "Install VMware Tools.." 4. 对话框:"Installing the VMware Tools package..." 单击 "Install"。(允许在 /mnt/cdrom 上进行虚拟 cdrom 挂载) 5. 在 VMware 窗口内部单击,将鼠标/键盘分配给 Linux。 6. 作为根用户登录 7. 挂载 /mnt/cdrom 8. # cd 9. tar xvfz /mnt/cdrom/vmware-linux-tools.tar.gz 10. # cd vmware-tools-distrib 11. ./vmware-install.pl 按 ENTER 键大约 8 次,接受所有的默认值。在点击绿色的 OK 之后, 对 "Do you want this program to build vmhgfs..." 单击 NO 最后选择分辨率,从 800x600 开始,如果需要的话通过再次运行 /usr/bin/vmware-config-tools.pl 来增加。 12. 重启 GUI # telinit 5 g. (可选)告诉 VMware 将时间与主机操作系统同步。 # vmware-toolbox 单击 "Options" 并选择 "Time synchronization..." 关闭 注意:长时间使用或批量删除之后,需要缩减虚拟磁盘以回收主机操作系统上的磁盘空间,可使用这一实用工具。 h. (可选)为了节省一些内存并稍微加速启动, 您可以禁用打印服务 (cups) 和电子邮件 (sendmail) # chkconfig cups --level 35 off # chkconfig sendmail --level 35 off 上述操作将在下一次重启时生效。要关闭这些,现在您可以执行: # /etc/init.d/cups stop # /etc/init.d/sendmail stop i. (可选)在 VM 内部启用 ftp 后台程序: i. (可选)在 /etc/vsftpd/vsftpd.conf 中为匿名 ftp 作修改,取消以下行的注释: anon_upload_enable=YES anon_mkdir_write_enable=YES ii.(可选)允许 ftp 上载: # chown ftp /var/ftp/pub 注意:匿名/ftp 连接的目录是 ftp 用户的目录 (/var/ftp/pub) iii.现在启动 vsftpd 后台程序: # service vsftpd start vi.在下一次重启时启用 vsftpd: # chkconfig --level 35 vsftpd on j. (可选)启用 telnet 服务器,不推荐使用 ssh 代替! i. 确保安装了 telnet-server rpm "rpm -qa|grep telnet-server" ii. vi /etc/xinetd.d/telnet,将 "disable=yes" 修改为 "disable=no" iii.作为根用户重启 xinetd 后台程序:"# service xinetd restart" k. (可选)启用 rsh & rlogin,不推荐使用 ssh 代替! i. 确保安装了 rsh-server rpm "rpm -qa|grep rsh-server" ii. vi /etc/xinetd.d/rsh & rlogin,将 "disable=yes" 修改为 "disable=no" iii.作为根用户重启 xinetd 后台程序:"# service xinetd restart" iv.对于无口令的连接,利用节点名称创建 $HOME/.rhosts l. (可选)VMware 在客户操作系统和主机操作系统之间有一个可选的“共享文件夹”特性,要启用它请执行: i. 在主机上创建一个共享文件夹,例如:c:\vmware_shared 选择该文件夹:"VM->Settings->Options->Shared Folders->Add.." ii.您需要一个加载在 VM 内部的特殊的内核模块(称为 "vmhgfs") 它预置了 VMWare 工具,但仅用于 RHEL3-U1 我们将使用技巧来使 vmware 将预置的 rpm 加载到 U2 上 # cd /usr/lib/vmware-tools/modules/binary # cp -r up-2.4.21-9.i686-RHAS3.0 up-2.4.21-15.i686-RHAS3.0 # cd up-2.4.21-15.i686-RHAS3.0 vi 或 nedit 属性文件 将 "9" 修改为 "15" 并保存修改,在 vi 中使用 "x!" iii.通过运行以下命令来加载内核模块: # vmware-config-tools.pl 注意:您可以验证它是否工作:lsmod|grep hgfs(将显示一行) iv.在客户操作系统内部使用共享文件夹: $ cd /mnt/hgfs/ $ ls (将显示一个共享文件夹的列表) 您放在这些共享文件夹下的任何文件都将显示在主机操作系统上。 如果您没有安装这个功能,那么请使用 ftp/nfs/samba 来共享文件。 m. (可选)要启用从 Linux VM 到 Windows 的拷贝/粘贴,您必须使 vmware 工具包在后台运行。 实现这一点的一种方式是将其作为桌面启动程序来运行。 RedHat -> Preferences -> More Preferences -> Sessions,单击启动程序选项卡,并输入以下命令来开始: vmware-toolbox --iconify --minimize 一旦您登录到了它的桌面上,就请使用与 Oracle 用户相同的过程。 n. 从 GUI 中注销,因为您是根用户(主菜单 --> Log Out): i. 保持 "Save current setup" 复选框为未选中状态。 ii.操作:选择 "Log Out" 或 "Reboot" — 您喜欢任意一种方式都可以。 iii.单击 "OK"。 -- 完成
阶段 3:安装 Oracle 集群文件系统 (OCFS) v1(针对 RHEL 或 SLES)
1. 作为 Oracle 用户登录 Linux GUI 桌面。 2. 获取最新的 OCFS RPMS: ** FOR REDHAT ** a. 单击任务栏上的“Mozilla”互联网浏览器图标。 b. 输入 URL “http://oss.oracle.com/”。 c. 在“Projects”下单击“OCFS”。 d. 在“Project:OCFS”下单击“Files”。 e. 依次单击“Red Hat”、“RHEL 3”和“i386”。 f. 单击“ocfs-tools-1.0.10-1.i386.rpm”。 选择“Save it to disk” 依次单击“OK”和“Save”。 g. 单击“ocfs-support-1.0.10-1.i386.rpm”。 选择“Save it to disk” 依次单击“OK”和“Save”。 h. 单击“1.0.13-1” i. 单击“ocfs-2.4.21-EL-1.0.13-1.i686.rpm” 请注意,我们选取的是 nonSMP,也称做 UP(单处理器核心) 请根据您所运行的内核 (uname -a) 来选择 smp 或 hugemem。 OCFS 有时会进行更新;请选取最新的 版本。上述示例中的版本为“1.0.13-1”。 选择“Save it to disk”。 依次单击“OK”和“Save”。 注意:工具/支持版本可能与 ocfs 版本不匹配。如果您拥有最新的版本, 那么一切事项都会顺利进行。(请参阅站点上的自述文件。) j. 退出 Mozilla。 ** 针对 SUSE ** a. 单击任务栏上的“Mozilla”互联网浏览器图标。 b. 输入 URL “http://oss.oracle.com/”。 c. 在“Projects”下单击“OCFS”。 d. 在“Project:OCFS”下单击“Files”。 e. 依次单击“United Linux”、“United Linux 1.0”和“i386”。 f. 浏览并查找适用于内核 (uname -a) 的最新 OCFS rpm SP3 plain 为 2.4.21-138 适用于它的最高 ocfs 是 1.0.11-1。 推荐版本是 1.0.13-1,这是内核 SP3-251 所必需的。 对于一般的硬件,导航过程如下: 依次单击“1.0.13-1”、“SP3-251”和 “ocfs-2.4.21-251-deflt-1.0.13-1.i586.rpm” 选择“Save it to disk” 依次单击“OK”和“Save”。 VMWARE 用户:VMware 仅支持纯 sp3 内核 (-138),如果您 将内核升级至 -198 或 -241、-251,您的系统 在 VM 内将无法稳定运行。如果选择 使用 OCFS v1.0.11 和普通 SP3 内核 -138, 则 CRS 10.1.0.3 将无法运行。 一般而言,您只需将内核 升级至 -251,将 OCFS 升级至 1.0.13 即可。 g. 对于 SUSE,选取 v1.1.2 的 OCFS 工具(不是 v1.0) 在“Projects”之下单击“OCFS Tools”(在 LEFT 边条上)。 h. 在“Project:OCFS Tools”之下单击“Files”。 i. 依次单击“United Linux”、“United Linux 1.0”和“i386”。 j. 单击“1.1.2-1” k. 单击“ocfs-support-1.1.2-1.i386.rpm”。 选择“Save it to disk” 依次单击“OK”和“Save”。 l. 单击“ocfs-tools-1.1.2-1.i386.rpm”。 选择“Save it to disk” 依次单击“OK”和“Save”。 3. 打开一个终端窗口: a. REDHAT:单击主菜单 --> 系统工具 --> 终端。 SUSE:单击主菜单 --> 系统 -> 终端 -> Konsole。 在任务栏上,从左数第四个图标 b. 输入以下内容,将用户更改为根用户: $ su - 密码:oracle # 注意:提示符从 "___FCKpd___0quot; 更改至 "#" 表示该 shell 是以 根权限运行的。现在,在这些脚本中,每个命令 都将以 "___FCKpd___0quot; 或 "#" 字符开头,以表示 该命令是应当在“oracle”窗口中运行,还是在 “root”窗口中运行。请注意,二者之间确实有所不同。 4. 以 root 用户身份运行以下命令: ** 针对 REDHAT ** # cd ~oracle (下载 rpms 的位置) # rpm -Uvh ocfs-2.4.21-EL-1.0.13-1.i686.rpm \ ocfs-support-1.0.10-1.i386.rpm \ ocfs-tools-1.0.10-1.i386.rpm ** 针对 SUSE ** # cd ~oracle (下载 rpms 的位置) # rpm -Uvh ocfs-2.4.21-138-deflt-1.0.13-1.i586.rpm \ ocfs-support-1.1.2-1.i386.rpm \ ocfs-tools-1.1.2-1.i386.rpm 或者简单地使用 Linux 提供的方法(通过向导选择 rpm): $ cd ~oracle # rpm -Uvh ocfs-*.rpm 5. 生成 OCFS 配置(仅一次) a. 作为根用户运行 "ocfstool" # export DISPLAY=localhost:0 # ocfstool & 注意:如果您选择 "Gtk-WARNING **:cannot open display:" "xhost +" 会作为桌面所有者(作为 oracle)发布 # xhost + 注意:忽略以下警告是安全的 Gtk-WARNING **:libgdk_pixbuf.so.2:cannot open shared object file: No such file or directory 如果您继续,变通方法是在下行前加上注释符: # include "/usr/share/themes/Bluecurve/gtk/gtkrc" in file /root/.gtkrc b. 选择 "Tasks" --> "Generate Config...".(Control-G) i. 界面:从下拉菜单中选择 "eth1"。 ii.节点名称:输入 "raclocal1.us.oracle.com"。 iii.单击 "OK"。 c. 选择 "File" --> "Exit"。 6. 作为根用户运行 "load_ocfs"。 对于 Red Hat 而言,忽略有关内核受污的消息: "Warning:loading /lib/modules/2.4.21-EL-ABI/ocfs/ocfs.o will taint the kernel:forced load" 7. 对 ocfs 设备进行分区。 a. 根据是将 OCR(Oracle 集群 注册)放置在原始设备还是 OCFS 上,您将遵循略有不同的 路径 -- 只选择一个选项。 性能或特性方面没有差别;将所有内容放置在 OCFS 上要更为简单,但是如果您希望试用/了解原始设备, 则需要选择相应的方法。请牢记您的选择,稍后您会用到它。 作为根用户运行: # fdisk /dev/sda 选项 1:OCR+Voting disk ON OCFS Filesystem: ** 请确保您使用的是受支持的 OCFS,版本为 1.0.11 以及以上 ** i. 命令:输入 "n" 并按下 ENTER 键。 ii.命令操作:输入 "p" 并按下 ENTER 键。 iii.分区编号:输入 "1" 并按下 ENTER 键。 iv.第一个 cylinder:按 ENTER 键。 v. 最后一个 cylinder:按 ENTER 键。(整个磁盘) 选项 2:OCR+Voting disk ON RAW Devices: 分区 1:(ocr_file) i. 命令:输入 "n" 并按下 ENTER 键。 ii.命令操作:输入 "p" 并按下 ENTER 键。 iii.分区编号:输入 "1" 并按下 ENTER 键。 iv.第一个 cylinder:按 ENTER 键。 v. 最后一个 cylinder:+100M。 分区 2:(voting_disk) i. 命令:输入 "n" 并按下 ENTER 键。 ii.命令操作:输入 "p" 并按下 ENTER 键。 iii.分区编号:输入 "2" 并按下 ENTER 键。 iv.第一个 cylinder:按 ENTER 键。 v. 最后一个 cylinder:+100M。 分区 3:(ocfs 文件系统) i. 命令:输入 "n" 并按下 ENTER 键。 ii.命令操作:输入 "p" 并按下 ENTER 键。 iii.分区编号:输入 "3" 并按下 ENTER 键。 iv.第一个 cylinder:按 ENTER 键。 v. 最后一个 cylinder:按 ENTER 键。(驱动器剩余部分) b. 查看分区表,以确定这就是您想要的,输入 "p" 输出如下所示(针对选项 2): Device Boot Start End Blocks Id System /dev/sda1 1 13 104391 83 Linux /dev/sdd2 14 26 104422+ 83 Linux /dev/sdd3 27 1044 8177085 83 Linux c. 确定更改:输入 "w" 并按下 ENTER 键。 8. 作为根用户运行 "ocfstool"。 a. 选择 "Tasks" --> "Format..."。 i. 设备:从下拉菜单中选择 "/dev/sdd1" (所有内容置于 OCFS 上)或 "/dev/sdd3" (如果 OCR+Voting 位于原始设备上)。 ii.卷标:输入 "ocfs"。 iii.挂载点:输入 "/ocfs"。 iv.用户:从下拉菜单中选取 "oracle"。 v. 组:从下拉菜单中选择 "dba"。 vi.单击 "OK"。 vii.对话框:"Are you sure you want to format /dev/sdd1?" 或 "sdd3?" 1. 单击 "Yes"。 b. 选择 "File" --> "Exit". 9. 作为根用户运行 "nedit /etc/fstab &" 或 vi /etc/fstab。 避免使用 xedit(它会忘记在行结尾处放置换行符) a. 将以下其中一行(不带引号)添加至 fstab 的末尾: 所有内容置于 OCFS 之上: "/dev/sdd1 /ocfs ocfs _netdev 0 0" OCR+Voting 位于原始设备上: "/dev/sdd3 /ocfs ocfs _netdev 0 0" b. 单击窗口顶部的 "File->Save"。 c. 单击窗口顶部的 "File->Exit"。 10. 作为根用户创建 OCFS 挂载点: # mkdir /ocfs 11. 作为根用户挂载 OCFS 卷: # mount /ocfs 自动挂载 ocfs 卷: 下一次重启后卷将自动安装在 RedHat 上(由于 _netdev )。 在 SUSE 上,选项可以使用 orarun 并指定启动 OCFS。或者手动将其安装在 /etc/init.d/ocfs 中,$LOAD_OCFS 之后: mount -a -t ocfs 以级别 09 启动 OCFS 意味着网络配置完成。 从 /etc/init.d/boot 进行调用以使用 /etc/init.d/boot.local 并不凑效,因为该阶段网络还未启用。 在 9i 中建议使用 orarun,它与 10g 并不完全兼容。 12. (仅 REDHAT)告知 updatedb/slocate 不要修改 ocfs 文件系统 在 /etc/updatedb.conf 中编辑两行(只需在末尾添加 "ocfs") PRUNEFS="devpts NFS nfs afs sfs proc smbfs autofs auto iso9660 ocfs" PRUNEPATHS="/tmp /usr/tmp /var/tmp /afs /net /sfs /ocfs" 因为 updatedb 调自 /etc/cron.daily,不具备 "-c" 标签,所以 updatedb.conf 无法看到,编辑 /etc/cron.daily/slocate.cron 并将 ocfs 添加至排除列表: /usr/bin/updatedb -f "nfs,smbfs,ncpfs,proc,devpts,ocfs" -e "/tmp,/var/tmp,/usr/tmp,/afs,/net,/ocfs" OCFS 滚动升级: 因为版本 1.0.10 滚动升级是可行的(请查阅 ocfs README 以获取详细信息)。 要以滚动升级方式升级 OCFS,请按照以下步骤进行: 1. 关闭节点 A 上的 db 2. 卸载 ocfs 卷 3. 卸载 ocfs 模块 4. 升级 ocfs rpm 5. 重新加载 ocfs 模块 6. 安装 ocfs 卷 7. 启动节点 A 上的 DB 8. 对节点 A+1 重复步骤 VMWARE 说明: 以下内容对于 OCFS 而言一般是正确的,但是对于 VMWare 环境 而言却并非如此。在对虚拟机进行复制或更改其 属性时,vmware uuid(唯一的 id,与 OCFS 的 guid 毫无关系)可能会更改,并进而导致 VM 的 NIC 卡的 MAC 地址 出现变化。OCFS 将出现加载失败,因为存储在 /etc/ocfs.conf 中的 MAC 地址与 NIC 的新 MAC 地址 不匹配。要配置并运行 OCFS,请按照以下步骤进行: a. 重新生成 OCFS 的 guid(全球唯一 id): # ocfs_uid_gen -r "ocfs_uid_gen:The new GUID is xxxxxx-random-appended-to-MAC-inHEX" 在 MAC 地址匹配的情况下重新运行不会产生任何有害结果 你会获得: "ocfs_uid_gen:The GUID is already correct.No action taken." 要自动修复启动时出现的这个信息,只需将命令置于 /etc/init.d/ocfs 中 ,或使用 LinuxDemoFiles zip 中预编辑好的 ocfs 文件即可。 b. 挂载 ocfs,要使用 "reclaimid" 选项(仅第一次安装需要): 所有内容都在 OCFS 上: # mount -t ocfs -o reclaimid /dev/sdd1 /ocfs OCR+Voting 位于原始设备上: # mount -t ocfs -o reclaimid /dev/sdd3 /ocfs 如果您忘记了这个 reclaimid 选项,安装将失败或导致内核 严重错误(基于 1.0.9 或更旧版本的 OCFS)。 要自动修复启动时的这个问题,只需将 reclaimid 选项添加至 /etc/fstab 中即可。 (请注意:仅在该 VMware 环境中使用这个自动修复方法; 请勿将其应用于真正集群系统。在那些环境中,当更换 NIC 卡时, 请手动设置 reclaim id。) -- 完成
第四阶段:安装带有 Oracle RAC 的 Oracle 数据库 10g (10.1.0.3)(用于 RHEL 或 SLES)
注意:如果您使用下载的软件,则必须为此脚本刻录物理 CD! VMWARE 注意事项:o 如果您在 VMWARE 中安装,可能会因 速度慢的 CDROM 产生问题。禁用 Norton AntiVirus 中的实时防护(注意,默认情况下它会在 30 分钟后自动重新启用 ) o 禁用 VM 中的屏幕保护程序以获得更好效果。 Redhat Start->Preferences->Screensaver SUSE Start->Preferences->Look & Feel->Screensaver o 我们正在单一节点上配置 RAC,即两个实例 运行在一台服务器上,这不是一种实际情况,但是 它对调试 CRS/RAC 和了解 CRS/RAC 的工作原理很有用。 在开发脚本时我们使其尽可能地通用, 这样它们不用做任何修改即可运行在实际服务器上。 1. 如果您还没有登录,则以 oracle 用户登录到 Linux GUI 桌面。 不要以根用户登录到桌面并用 su 连接 oracle。 2. (REDHAT 可选)要准备 GUI 环境: a. 找到终端程序 (Main Menu --> System Tools --> Terminal)。 b. 右键单击“Terminal”菜单项。 i. 选择“Add this launcher to panel”。 注意:这会将 Terminal 程序图标添加到屏幕底部的启动程序面板中, 我们将频繁使用这个程序。 SUSE (KDE) Desktop 把这个 shell 放在任务栏左起第 4 个图标位置 。 3. 如果您尚未打开,则打开两个终端窗口: a. 单击我们刚刚添加到任务栏的 Terminal 图标。 b. 通过以下方法在其中一个窗口中将用户更改为根用户: $ su - Password:oracle # 注意:提示符从“___FCKpd___0rdquo;变为了“#”,表示 shell 正以根用户权限运行。从现在开始,在这些脚本中,每个 命令都将以一个“___FCKpd___0rdquo;或“#”字符开始,以表明 该命令是应该在“oracle”窗口中运行还是在 “root”窗口中运行。注意,这的确是有区别的。 4. Oracle 10g 可以使用 ssh 而非 rsh 将软件安装到远程节点。 如果未定义 ssh,则安装程序将转而运行 rsh。 在这两种情况下 (ssh/rsh),安装期间的登录都必须是不需要口令的。 要通过 SSH 为 oracle 用户设置安全的不需要口令的登录,执行以下操作: a. 以 oracle 用户生成用户的 SSH 公钥和私钥(~/.ssh/id_dsa.pub 和 id_dsa): $ ssh-keygen -t dsa i. “Enter file in which to save the key ...:”--> 按 ENTER 键。 ii.“Enter passphrase ...:” 对于不需要太安全的连接,只要按下 ENTER 即可。 对于需要安全的连接,输入一个只有您知道的口令短语。 iii.“Enter same passphrase again:”或者按 Enter,或者输入口令短语。 注意:在实际的多服务器环境中,在进行步骤“b.”之前, 您要在群集中的每台服务器上重复步骤“a.”。 b. 通过将来自每台服务器的 id_dsa.pub 文件内容合并, 创建 authorized_keys 文件。您可以在一个节点上完成所有这些步骤: 多次运行下面的命令,每次用一个不同的节点名称 替换“raclinux1”。以 oracle 用户: $ ssh raclinux1 "cat ~/.ssh/id_dsa.pub" >> ~/.ssh/authorized_keys i. 每次您从任何节点首次连接到一个新主机名时, 您将看到类似这样的消息: “The authenticity of host 'raclinux1 (192.168.203.11)' can't be established.RSA key fingerprint is ... Are you sure you want to continue connecting (yes/no)?” 键入“yes”并按下 ENTER 键。接着您将看到此消息: “Warning:Permanently added 'raclinux1,192.168.203.11' (RSA) to the list of known hosts.” ii.“oracle@raclinux1's password:”--> 键入“oracle”并按下 ENTER 键。 注意:在实际的多服务器环境里,将您刚刚创建的 authorized_keys 文件 复制到群集中每台服务器上的 oracle 用户的 ~/.ssh 目录中。例如,您可以使用下列命令 将其复制到节点“raclinux2”: $ scp ~/.ssh/authorized_keys raclinux2:/home/oracle/.ssh/ oracle@raclinux2's password:--> 键入“oracle”并按下 ENTER 键。 c.(可选)如果您在前面输入了口令短语,而却希望无口令登录(RAC 10g 安装需要), 您需要将此口令短语通知 ssh-agent(已经为桌面运行), 这样就不会提示 ssh 客户端 输入口令短语。一旦您通知 ssh-agent 已经为 GUI 桌面登录过程缓存了口令短语, ssh-agent 就会满足后续的客户端请求。 $ ssh-add 为 /home/oracle/.ssh/id_dsa 输入口令短语:*键入您的口令短语* 添加了标识:/home/oracle/.ssh/id_dsa (/home/oracle/.ssh/id_dsa) d. (不可选)要结束并测试无需口令的 SSH 连接, 对任何提示都回答 YES(运行两次,第二次将不提示输入 口令): i. 运行“ssh raclinux1 date”。 ii.运行“ssh raclocal1 date”。 iii.运行“ssh raclinux1.us.oracle.com date”。 iv.运行“ssh raclocal1.us.oracle.com date”。 注意:在实际的多服务器环境中,在所有节点上重复以上步骤。 疑难解答:如果要求输入口令,检查 用户主目录的所有权应该被限制为对组和其他对象可写。 在尝试进行连接时运行 Tail /var/log/messages 在详细模式下运行 ssh:“ssh -vvv raclinux1 date” 5. 以 root 身份更改 ORACLE_BASE 目录的权限: # chown oracle:oinstall /opt/oracle 6. 如果选择将 CRS 文件(表决磁盘和 OCR 文件)放在原始设备上, 就必须进行此步骤,否则可以跳过此步骤。 请注意,如决定将 OCFS 用于 CRS 文件(跳过此步骤): ** 确保使用支持的 OCFS ** 为表决磁盘和 OCR 文件设置原始设备: a. 以 root 身份执行 vi 或 nedit: REDHAT:/etc/sysconfig/rawdevices SUSE:/etc/raw 并添加: Red Hat 语法: /dev/raw/raw1 /dev/sda1 /dev/raw/raw2 /dev/sda2 SuSE 语法: raw1:sdd1 raw2:sdd2 b. 将原始设备的权限更改为 oracle: # chown oracle:oinstall /dev/raw/raw1 # chown oracle:oinstall /dev/raw/raw1 或简化的 Linux 样式: # chown oracle:dba /dev/raw/raw[12] c. 以 root 身份启动原始设备(确保它们在下次重启动时启动): RedHat: # /etc/init.d/rawdevices restart 在 Red Hat 上将原始设备设置为启动时启动。 SUSE: # /etc/init.d/raw start # chkconfig -s raw 35 d. 以 oracle 身份为表决磁盘和 OCR 文件创建符号链接: $ cd /ocfs $ ln -sf /dev/raw/raw1 ocr_file $ ln -sf /dev/raw/raw2 voting_disk 7. 安装集群就绪服务 (CRS): a. 将 Oracle 10g CRS CD 放入 CD 托盘中,Linux 可能会 自动挂载它,并在桌面上添加一个“CDROM”图标。 否则,以 root 身份执行: Red Hat:# mount /mnt/cdrom SUSE:# mount /media/cdrom (以 oracle 用户挂载也可以) b. (可选,VMWare 专用)如果选择将 CRS 文件 (表决磁盘和 OCR 文件)放在 OCFS 上,可以以 oracle 用户身份执行这个 可选命令: $ dd if=/dev/zero of=/ocfs/voting_disk bs=1M count=9 注意:上面的 dd 命令不是必需的,但是如果我们在这里进行 CRS 安装的话, 它将加快在 CRS 安装后 运行的 root.sh 的速度。 c. 以 oracle 用户身份运行安装程序: $ cd (不要将目录更改为 /mnt/cdrom 或 /media/cdrom) RedHat:$ /mnt/cdrom/runInstaller SUSE:$ /media/cdrom/runInstaller i. 屏幕显示:“Welcome” 单击“Next” ii.屏幕显示:“Specify Inventory directory and credentials” 1. 将 Inventory 目录更改为:/opt/oracle/oraInventory 2. 将操作系统组名称更改为:oinstall 3. 单击“Next” iii.弹出窗口……以 root 身份运行 /opt/oracle/oraInventory/orainstRoot.sh # /opt/oracle/oraInventory/orainstRoot.sh 在安装程序中单击“Continue”。 iv.屏幕显示:“Specify File Locations” 将 Name 更改为:CRS10g 将 Path 更改为:/opt/oracle/CRS10g 单击“Next” v. 屏幕显示:“Language Selection” 单击“Next” vi.屏幕显示:“Cluster Configuration” 保持 Cluster Name 为“crs”不变 对于公共节点名称,使用“raclinux1.us.oracle.com”。 对于专用节点名称,使用“raclocal1.us.oracle.com”。 单击“Next” 注意:如果收到警告:找不到节点,则确保 “sshdate”仅返回日期 vii.屏幕显示:“Private Interconnect Enforcement” 对于 eth0,在“Interface Type”中选择“Public”。 对于 eth1,在“Interface Type”列中选择“Private”。 单击“Next” viii.屏幕显示:“Oracle Cluster Registry” 输入:/ocfs/ocr_file 单击“Next” ix.屏幕显示:“Voting Disk” 输入:/ocfs/voting_disk 单击“Next” x. 屏幕显示:“Summary” 单击“Install”结束安装 xi.弹出 Setup Privileges 窗口:以 root 在每个节点 上运行: # /opt/oracle/CRS10g/root.sh 忽略: “WARNING:directory '/opt/oracle' is not owned by root” CRS 成功消息如下: “Oracle CRS stack installed and running under init(1M)” 如果不是这样的,则仔细检查 /etc/hosts 文件。要重试 root.sh 1. vi /etc/inittab(注释掉最后 3 个 crs 行) 2. init q(重新读取 inittab 并终止不需要的进程) 3. 终止任何其他 crs/css/evm 进程 在安装程序弹出窗口中单击“OK”。 xii.屏幕显示:“End of Installation”,退出安装程序 单击“Exit”并确认退出。 xiii.检查 CRS 是否正在运行 # ps -efm | grep crs (应该有很多行) d. 以 root 身份取出 Oracle10g CRS CD: Red Hat:# umount /mnt/cdrom SUSE:# umount /media/cdrom CD 若未自动弹出的话,则手动弹出 CD。 8. 创建 Oracle 用户环境: a. 编辑 oracle 用户的 .bashrc 登录文件: $ vi $HOME/.bashrc 或 nedit $HOME/.bashrc 在最后插入下列 6 行: export ORACLE_SID=O10G1 export ORACLE_BASE=/opt/oracle export ORACLE_HOME=/opt/oracle/DB10g export ORA_CRS_HOME=/opt/oracle/CRS10g export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH export PATH=$PATH:$ORACLE_HOME/bin # export LD_ASSUME_KERNEL=2.4.19 (RHEL3 vanilla 或 Update 1 需要) 还可以使用 .bash_profile,但要注意的是默认情况下 KDE 环境(在 SUSE 上是默认的)不读取 .bash_profile。 如果在 SUSE 上安装了 orarun rpm,在 /etc/profile.d/oracle.sh,csh 中修改环境 注意:数据库名称是“O10G”(字母“O”、数字“10”和大写字母“G”) SID:“O10G1”和“O10G2”;1 和 2 由 dbca 自动追加。 不要混淆“O”(字母“O”)和“0”(零)。 b. 以 oracle 用户身份执行 .bashrc 脚本获得更改: $ source $HOME/.bashrc c. 以 root 用户身份执行: # source ~oracle/.bashrc 9. 从 CD 安装 Oracle 数据库 10g 企业版 10.1.0.3 (您可以从 OTN 下载 cpio 归档文件自己刻录 CD): a. 将 Oracle 数据库 CD 放入 CD 托盘中。Linux 会自动挂载它, 并在桌面上添加一个“CDROM”图标。否则,以 root 身份执行: Red Hat:# mount /mnt/cdrom SUSE:# mount /media/cdrom b. 以 oracle 用户身份运行安装程序: $ cd (不要将目录更改为 /mnt/cdrom 或 /media/cdrom) RedHat:$ /mnt/cdrom/runInstaller SUSE:$ /media/cdrom/runInstaller i. 屏幕显示:“Welcome” 单击“Next” ii.屏幕显示:“Specify File Locations” 将 Name 更改为:DB10g 确认验证 Path 为:/opt/oracle/DB10g 单击“Next” iii.屏幕显示:“Specify Hardware Cluster Installation Mode” 选择:“Cluster Installation” (最上面的选项) 选择所有节点(实际的 RAC 会有两个或两个以上的节点) 单击“Next” iv.屏幕显示:“Select Installation Type” 选择:“Enterprise Edition” (最上面的选项) 单击“Next” v. 屏幕显示:“Product-specific Prerequisite Checks” 所有检查都应该是成功的。 单击“Next” 注意:如果 OS 内核参数不正确,则按照第 2 阶段的步骤在 OS 级别上修复, 然后按 Back 和 Next 按钮,这样就能通过检查。 vi.屏幕显示:“Select Database Configuration” 选择:“Do not create a starter database” (最下面的选项) 单击“Next” vii.屏幕显示:Summary 单击“Install” (大约 10 分钟) viii.弹出 Setup Privileges 窗口:在每个节点上以 root 身份运行 $ORACLE_HOME/root.sh (确保将 DISPLAY 环境变量设置为用 xclock 测试), 否则可能会遇到如下错误: “InternalError:Can't connect to X11 window server using ':0.0'” # $ORACLE_HOME/root.sh 1. “Enter the full pathname of the local..”接受默认选项。 2. VIP 配置助手 (vipca) 自动启动: a. 屏幕显示:“Welcome” 单击“Next” b. 屏幕显示:“1 of 2, Network Interfaces” 只选择公用接口 — 在我们的例子中为“eth0” 单击“Next” c. 屏幕显示:“2 of 2, Virtial IPs for cluster nodes” 在“IP Alias Name”下输入“raclinux1-vip.us.oracle.com”。 按 TAB 自动填充“IP address”列。 单击“Next” d. 屏幕显示:“Summary” 单击“Finish” e. 对话框:“Configuration Assistant Progress Dialog” 所有步骤完成后,单击“OK”。 f. 对话框:“Configuration Results” 单击“Exit” 在安装程序弹出窗口中单击“OK”。 ix.屏幕显示:“End of Installation”,退出安装程序 单击“Exit”并确认退出。 c. 以 root 用户身份取出 Oracle10g 数据库 CD: Red Hat:# umount /mnt/cdrom SUSE:# umount /media/cdrom CD 若未自动弹出的话,则手动弹出 CD。 10. 加载 10g CRS 所需的 hangcheck-timer 内核模块 将以下行: modprobe hangcheck-timer hangcheck_tick=30 hangcheck_margin=180 添加到: REDHAT:/etc/rc.local SUSE:/etc/init.d/boot.local 以 root 身份输入: # modprobe hangcheck-timer hangcheck_tick=30 hangcheck_margin=180 或更高的值(见下面的 VMware 说明)。 VMWARE 说明:对于 VMWARE,使用高值,否则机器会重启动 如果从挂起模式恢复,这些是不错的值: hangcheck_tick=9000000 hangcheck_margin=36000000 11. 确认所有服务都在正常运行: a. 以 oracle 用户身份执行: $ srvctl status nodeapps -n raclinux1 VIP is running on node:raclinux1 GSD is running on node:raclinux1 PRKO-2016 :Error in checking condition of listener on node:raclinux1 ONS daemon is running on node:raclinux1 一旦我们运行 netca,监听器错误就会消失。 12. (可选)增加 RAC/CRS 超时设定,这通常专门针对 VMware。 a. 更改脚本超时值并检查 VIP 资源上的时间间隔。 为避免负载过大情况下所有数据库潜在的关闭可能,以 root 身份: i. 将要修改的资源的详细信息从 OCR 提取到文本: # cd /opt/oracle/CRS10g/bin # ./crs_stat -p ora.raclinux1.vip > /tmp/ora.raclinux1.vip.cap ii.从上面更新/修改 .cap 文件。将 CHECK_INTERVAL 更改为 900 秒,将 SCRIPT_TIMEOUT 更改为 600 秒(默认情况下二者都为 60 秒): # ./crs_profile -update ora.raclinux1.vip -dir /tmp -o ci=900,st=600 iii.现在用 OCR 注册已更新资源(注意, -u 意味着 更新一个已注册的资源): # ./crs_register ora.raclinux1.vip -dir /tmp -u 在注释 294336.1 中对这些步骤进行了进一步的说明。 b.(Mware 特有)如果在重启动时没有任何 CRS 资源启动, 则以 root 身份增加 CSS misscount(默认为 60 秒): # /opt/oracle/CRS10g/bin/crsctl set css misscount 180 使用这个值,磁盘 IO 用时可达 180*.75 = 160 秒。 要检查当前的 misscount,执行:# crsctl get css misscount 在注释 294430.1 中对这些步骤进行了进一步的说明。 13. (可选)启动 iSQL*Plus 中间层(设置 dbconsole 可以启用该中间层): a. 应用此变通方法: i. 以 oracle 身份用“vi”或“nedit”编辑 $ORACLE_HOME/bin/isqlplusctl: 找到“IS_RAC=true”这一行,并将其更改为“IS_RAC=false”。 b. 以 oracle 身份启动 iSQL*Plus: $ isqlplusctl start c. 确认 iSQL*Plus 正在运行: i. 从一个浏览器连接到 URL“http://raclinux1:5560/isqlplus” 由于没有创建数据库,因此还无法使用用户名和口令进行连接, 但此时会看到这个提示。 14. (可选,但强烈建议)为了为 Orcle 软件安装更多补丁, 您需要加载 OPatch。从错误 2617419 下的 Metalink 获得 OPatchfrom。 cd $ORACLE_HOME <将补丁 2617419 下载到这个目录> $ mv OPatch OPatch.orig $ unzip p2617419_10102_GENERIC.zip 15. (可选,但强烈建议)如果 CRS 在重启动时没有自动启动, 如下应用补丁 3455036。您将需要两个 shell 窗口,一个以 ($)“oracle”身份登录,另一个以 (#)“root”身份登录。这个 过程有点“不标准”,这是因为我们修补的是 CRS 主目录而不是 RDBMS 主目录(如需更多详细信息,请查看补丁的自述文件)。 a. 关闭所有(如果有的话)数据库和服务: $ srvctl stop db -d o10g $ srvctl stop asm -n raclinux1 -i +ASM1 (如果有 ASM 实例的话) 以 root 身份关闭 CRS: # /etc/init.d/init.crs stop 确认所有进程都已结束: # ps -efm |grep evm ; ps -efm |grep css ; ps -efm |grep crs 终止任何延迟进程(不应该有延迟进程) b. 从 Metalink 获得补丁 3455036,按照 补丁所带的 README.txt 进行操作。下面是针对我们环境 的步骤: 以 Oracle 用户身份在 CRS home 下解压缩: $ cd /opt/oracle/CRS10g $ mkdir Patches $ cd Patches <从 Metalink 将补丁 3455036 下载到这个目录> $ unzip -q p3455036_10103_LINUX.zip $ cd 3455036 $ chmod +x custom/scripts/*.sh c. 运行 root 预安装步骤: # cd /opt/oracle/CRS10g/Patches/3455036 # custom/scripts/prerootpatch.sh -crshome /opt/oracle/CRS10g -crsuser oracle d. 以 oracle 用户身份应用补丁: $ cd /opt/oracle/CRS10g/Patches/3455036 $ custom/scripts/prepatch.sh -crshome /opt/oracle/CRS10g $ export ORACLE_HOME=/opt/oracle/CRS10g $ /opt/oracle/DB10g/OPatch/opatch apply -local Is this system ready for updating?Please respond Y|N > Y $ custom/scripts/postpatch.sh -crshome /opt/oracle/CRS10g 在 postpatch.sh 完成之前不要继续操作 (当 ORACLE_HOME 指向了 CRS_HOME 后退出这个 shell) e. Root 安装后的步骤: # cd /opt/oracle/CRS10g/Patches/3455036 # custom/scripts/postrootpatch.sh -crshome /opt/oracle/CRS10g 现在所有服务都应自动启动。也可以 重启动以 100% 保证已自动启动所有服务(不是必需的)。 f. 确认已以 oracle 用户身份安装了补丁: $ export ORACLE_HOME=/opt/oracle/CRS10g $ /opt/oracle/DB10g/OPatch/opatch lsinventory -detail 应看到列出了错误 3455036。 16. (可选)禁止在 CRS 失败时重新启动 注释掉 FAST_REBOOT(大概在 linux 部分的第 81 行): REDHAT:/etc/rc.d/init.d/init.cssd SUSE:/etc/init.d/init.cssd ### FAST_REBOOT="/sbin/reboot -n -f" 17. (可选)EM 可能误报无效的对象。以下是使用 OPatch 的好实践: a. 从 Metalink 获得补丁 3774886, 按照补丁所带的 README.txt 进行操作,或安装下面的 这些相同指令: $ mkdir -p /opt/oracle/DB10g/Patches $ cd /opt/oracle/DB10g/Patches $ unzip -q p3774886_10103_GENERIC.zip $ cd 3774886 $ ../../OPatch/opatch apply 回答“Y” b. 从 Metalink 获得补丁 3377171, 按照补丁所带的 README.txt 进行操作。 忽略任何“java.io.IOException:Broken pipe”异常,该异常可能会在 最新版本的 opatch 中得到修复。 对于现有信息中心库(我们还没有数据库/信息中心库),运行: $ sqlplus sysman/oracle SQL> @?/sysman/admin/emdrep/sql/db/latest/policy/default_policy_setup c. 以 oracle 身份重新加载代理: $ emctl reload agent 如果还没有创建数据库,出现错误信息是很正常的。 18. (可选)如果计划在数据库中安装 Spatial 选项,则确保 从 Metalink 获得 3928367;按照补丁所带的 README.txt 进行操作。 -- 完成
第五阶段:使用数据库配置助手创建一个示例数据库
在此下载这个脚本的支持文件。 为了便于演示,我们将使用自定义方法 创建数据库。使用这一方法我们还将获得 比附带的示例数据库小的数据库。 VMWARE 注意事项:o 如果是在 RHEL3 vanilla 或 Update 1 上运行, 确保在环境中设置 LD_ASSUME_KERNEL=2.4.19, 否则 java 程序将看起来像挂起一样(解决方法:control-Z/bg/fg,或以上) RHEL3 Update 2(或以上),SUSE 没有问题。 1. 我们将使用 netca(网络配置助手)来配置 SQL*Net 监听器。TAF(透明的应用程序故障切换)部分我们将 手工完成。 a. 以 oracle 身份运行 netca 创建两个监听器(在一个节点上): $ export LD_ASSUME_KERNEL=2.4.19 (只用于 RHEL3 vanilla 或 Update1) $ netca i. 屏幕显示:“Oracle Net Config...” 选择:“Cluster configuration” 单击“Next” ii.屏幕显示:“TOPSNodes” 实际情况下我们应选择所有节点,在此只要保留 raclinux1 就行了 选择:“raclinux1” 单击“Next” iii.屏幕显示:“Welcome” 选择:“Listener configuration” 单击“Next” iv.屏幕显示:“Listener Configuration, Listener” 选择:“Add” 单击“Next” v. 屏幕显示:“Listener Configuration, Listener Name” 保留:“LISTENER” 单击“Next” vi.屏幕显示:“Listener Configuration, Select Protocols” 保留:“TCP” 单击“Next” vii.屏幕显示:“Listener Configuration, TCP/IP Protocol” 保留: "1521" 单击“Next” viii.屏幕显示:“Listener Configuration, More Listeners?” 选择:“Yes” 单击“Next” ix.在实际的硬件(两个或更多节点)上,上述步骤已在每个节点上 (都是端口 1521)配置了一个监听器,这非常好。 跳到步骤“x”,否则对于用于培训的“single node RAC”, 使用以下参数重复步骤 iv. 到 vii.: Listener Name = "LISTENER2" Port=1522 x. 屏幕显示:"Listener Configuration, More Listeners?" 选择:"No" 单击“Next” xi.屏幕显示:“Listener Configuration, Select Listener” 选择:“LISTENER2” 单击“Next” xii.屏幕显示:“Listener Configuration Done” 单击“Finish”(两次)。 b. 启动主监听器: $ srvctl start nodeapps -n raclinux1 c. 确认两个监听器正在运行: $ ps -efm|grep tnslsnr 应该看到两行:LISTENER_RACLINUX1 & LISTENER2_RACLINUX1 在 10.1.0.3 中启动的话,每个监听器都有多个线程,因此会 显示更多行。 注意:如果在没有正确设置监视器的情况下调用 dbca,则在数据库创建期间 emca 将无法配置。 d. 获得 tsnames.ora(在支持文件中) REDHAT:tnsnames.ora.RedHat SUSE:tnsnames.ora.SUSE 并将其复制到: $ORACLE_HOME/network/admin/tnsnames.ora e. 如果您通过 NETCA 创建了监听器,则 CRS 将自动启动它们, 否则:要在启动时启用自动启动, 将启动行添加到: REDHAT:/etc/rc.local SUSE:/etc/init.d/boot.local su - oracle -c "lsnrctl start listener_raclinux1" su - oracle -c "lsnrctl start listener2_raclinux1" 2. 使用 dbca 创建数据库时一些选项会看起来有些奇怪, 这是因为我们正在试图创建一个足够小的能适应有限空间的 数据库: a. 以 oracle 用户身份调用 dbca: $ export LD_ASSUME_KERNEL=2.4.19 (只用于 RHEL3 vanilla 或 Update1) $ dbca i. 屏幕显示:“Welcome...” 选择:“Oracle Real Application Clusters database” 单击“Next” ii.屏幕显示:“Step 1 of 17:Operations” 选择:“Create a database” 单击“Next” iii.屏幕显示:“Step 2 of 17:Node Selection” 实际情况下我们应选择所有节点,在此只要保留 raclinux1 就行了 如果没有看到这一信息,检查 VIP/GSD/ONS 是否为 UP 单击“Next” iv.屏幕显示:“Step 3 of 17:Database Templates” 选择:“Custom Database” 单击“Next” v. 屏幕显示:“Step 4 of 17:Database Identification” 在两个域中(SID 和 DB Name)都输入“O10G” 单击“Next” 注意:数据库名称为“O10G”(字母“O”,数字“10”和大写字母“G”) SID:“O10G1”和“O10G2”;1 和 2 由 dbca 自动追加。 不要混淆“O”(字母“O”)和“0”(零)。 vi.屏幕显示:“Step 5 of 16:Management Options” 保留:“Configure the Database with Enterprise Manager” 单击“Next” vii.屏幕显示:“Step 6 of 16:Database Credentials” 输入:“oracle”作为所有帐号的口令 单击“Next” viii.屏幕显示:“Step 7 of 14:Storage Options” 保留:“Cluster File System” 单击“Next” 注意:在这一阶段,可以选择 ASM 而非 OCFS 这意味着所有数据文件都将由 ASM 管理, 包括 init.ora、控制文件以及数据库和重做日志文件。 您需要设置原始设备或安装 ASMLib。 ix.屏幕显示:“Step 8 of 14:Database File Locations” 选择:“Use Common Location for All Database Files” 输入:“/ocfs” 单击“Next” x. 屏幕显示:“Step 9 of 14:Recovery Configuration” 输入位置“/ocfs/flash_recovery_area” 减少:将“Flash Recovery Area Size”减少到 500MB 单击“Next” xi.屏幕显示:“Step 10 of 14:Database Content” 取消除“Enterprise Manager Repository”外的所有选定 单击:“Standard Database Components” 取消选定:“Oracle Intermedia”和“Oracle XML DB” 单击“OK” 单击“Next” 注意:如果需要的话可以选择使 XML DB 保持打开,这是因为如果您计划 安装 HTML DB 的话,它会有所帮助 注意:如果您在上文中选择了 Spatial 选项,确保 a) 也选择 Intermedia b) 从 Metalink 应用补丁 3928367 xii.屏幕显示:“Step 11 of 14:Database Services” 单击“Next” xiii.屏幕显示:“Step 12 of 14:Initialization Parameters” 在“Sizing”选项卡中,更改: Block Size:2KB Processes: 100 在 10.1.0.3 中,SGA 内存的计算基于物理内存的百分比, 可以通过选择以下选项来禁用: “Custom”、“Manual” Shared Pool = 150M Buffer Cache = 40M Java Pool = 50M PGA Size = 58M 这是为了确保在 VMware 环境中即便在低内存情况下 也能成功创建数据库。 单击“Next” xiv.屏幕显示:“Step 13 of 14:Database Storage” 选择左侧的“Controlfile” 在“General”选项卡中删除 control03.ctl,突出显示并点击退格键 在“Options”选项卡中将 实例的最大数更改为: 8 将日志历史记录的最大数更改为: 100 展开左侧的“Tablespaces”并选择“SYSAUX” 在“General”选项卡中将大小更改为 150MB 选择“SYSTEM”表空间 在“General”选项卡中将大小更改为 300MB 单击“OK” 在“Storage”选项卡中更改为“Managed in the dictionary” 初始大小:32KB 更改后的大小:128KB 增加幅度:0