设为首页 收藏本站
查看: 1652|回复: 0

[经验分享] oracle rac 10g安装指南

[复制链接]

尚未签到

发表于 2018-9-14 07:53:27 | 显示全部楼层 |阅读模式
  1. 硬件要求和概述
  客户操作系统环境概况:
  主机名操作系统处理器内存
  rac1 Oracle Enterprise Linux 4(32 位) 1700 MB
  rac2 Oracle Enterprise Linux 4(32 位) 1700 MB
  虚拟磁盘布局概况:
  大小(MB)描述
  d:\vm\rac\localdisk.vmdk /dev/sda1 /dev/sda2 /dev/sda3
  d:\vm\rac\sharedstorage\ocfs2disk.vmdk
  /dev/sdb SCSI 1:0 512 OCFS2 磁盘
  d:\vm\rac\sharedstorage\asmdisk1.vmdk
  /dev/sdc SCSI 1:1 3072 ASM 磁盘组1
  d:\vm\rac\sharedstorage\asmdisk2.vmdk
  /dev/sdd SCSI 1:2 3072 ASM 磁盘组1
  d:\vm\rac\sharedstorage\asmdisk3.vmdk
  重复创建四个虚拟SCSI 硬盘—ocfs2disk.vmdk (512MB)、asmdisk1.vmdk (3GB)、asmdisk2.vmdk (3GB)和asmdisk3.vmdk(2GB)。
  16. VMware Server 控制台:单击 Edit virtual machine settings。
  17. 虚拟机设置:单击 Add。
  18. 新增硬件向导:单击 Next。
  19. 硬件类型:
  a. 硬件类型:选择 Hard Disk。
  20. 选择磁盘:
  a. 磁盘:选择 Create a new virtual disk。
  21. 选择磁盘类型:
  a. 虚拟磁盘类型:选择 SCSI (Recommended)。
  22. 指定磁盘容量:
  a. 磁盘容量:输入“0.5GB”。
  b. 选择 Allocate all disk space now。如果您希望节省空间,则不必分配所有磁盘空间。出于性能方面的考虑,您需要为每个虚拟共享磁盘预先分配所有磁盘空间。特别是在Oracle 数据库创建期间或者当数据库的DML 活动较频繁时,如果共享磁盘的大小增长快速,虚拟机可能会间歇挂起一段较短的时间甚至崩溃(这种情况很少见)。
  23. 指定磁盘文件:
  a. 磁盘文件:输入“d:\vm\rac\sharedstorage\ocfs2disk.vmdk”。
  b. 单击 Advanced。
  24. 新增硬件向导:
  a. 虚拟设备节点:选择 SCSI 1:0。
  b. 模式:选择 Independent,针对所有共享磁盘选择 Persistent。
  修改虚拟机配置文件。还需要设置其他参数以启用两个虚拟RAC 节点之间的磁盘共享。打开配置文件d:\vm\rac\rac1\RedHatEnterprise Linux 4.vmx,并添加下面列出的粗体参数。
  disk.locking= "FALSE"
  diskLib.dataCacheMaxSize = "0"
  scsi1.sharedBus = "virtual"
  scsi1.present = "TRUE"
  scsi1:0.present = "TRUE"
  scsi1:0.fileName ="D:\vm\rac\sharedstorage\ocfs2disk.vmdk"
  scsi1:0.mode ="independent-persistent"
  scsi1:0.deviceType= "disk"
  scsi1:1.present = "TRUE"
  scsi1:1.fileName ="D:\vm\rac\sharedstorage\asmdisk1.vmdk"
  scsi1:1.mode ="independent-persistent"
  3. 在第一个虚拟机上安装并配置Enterprise Linux
  从Oracle网站下载EnterpriseLinux 并解压缩文件:
  ● Enterprise-R4-U4-i386-disc1.iso
  ● Enterprise-R4-U4-i386-disc2.iso
  ● Enterprise-R4-U4-i386-disc3.iso
  ● Enterprise-R4-U4-i386-disc4.iso
  VMware 工具。VMware 工具要求同步主机和客户机的时间。
  在VMware控制台上,以root 用户身份登录。
  1. 单击 VM,然后选择 Install VMware Tools。
  2. rac1 —虚拟机:单击 Install。
  3. 双击桌面上的VMware Tools 图标。
  4. cdrom:双击VMwareTools-1.0.1-29996.i386.rpm。
  5. 完成系统准备:单击 Continue。
  6. 打开一个终端并执行 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 thefuture"要确保成功安装Oracle RAC,虚拟机上的时间必须与主机上的时间同步。执行下面的步骤,以root用户身份同步时间。
  1. 执行“vmware-toolbox”以显示VMwareTools Properties 窗口。在Options 选项卡下,选择 Time synchronization
  between the virtual machine and the hostoperating 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
  root=LABEL=/ rhgb quiet clock=pit nosmp noapicnolapic
  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 roroot=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 -Gdba -s /bin/ksh oracle
  # chown oracle:dba /export/home/oracle /u01
  # passwd oracle
  创建oracle用户环境文件。/export/home/oracle/.profile
  export PS1="`/bin/hostname -s`-> "
  export EDITOR=vi
  export ORACLE_SID=devdb1
  export ORACLE_BASE=/u01/app/oracle
  exportORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
  exportORA_CRS_HOME=$ORACLE_BASE/product/10.2.0/crs_1
  export LD_LIBRARY_PATH=$ORACLE_HOME/lib
  exportPATH=$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
  安装EnterpriseLinux 软件程序包。安装Oracle 软件需要以下附加程序包。如果您已经安装了64 位版本的Enterprise
  Linux,则安装程序应该已安装了这些程序包。
  ● libaio-0.3.105-2.i386.rpm
  ● openmotif21-2.1.30-11.RHEL4.6.i386.rpm
  从ISOCD 解压缩这些程序包,并以root 用户身份执行下面的命令。
  # ls
  libaio-0.3.105-2.i386.rpmopenmotif21-2.1.30-11.RHEL4.6.i386.rpm
  #
  # rpm -Uvh *.rpm
  配置内核参数。使用文本编辑器将下面列出的行添加到/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
  配置hangchecktimer 内核模块。hangcheck timer 内核模块可监控系统的运行情况,并重新启动出现故障的RAC 节点。它使用两个参数,即hangcheck_tick(定义系统检查频率) 和hangcheck_margin(定义在重置RAC 节点前的最大挂起延时)来确定节点是否出现故障。在/etc/modprobe.conf 中添加以下行,以设置hangcheck 内核模块参数。/etc/modprobe.conf
  options hangcheck-timer hangcheck_tick=30hangcheck_margin=180
  要立即加载模块,执行“modprobe -v hangcheck-timer”。
  为OCFS2和OracleASM 创建磁盘分区。为OCFS2 (/dev/sdb) 和Oracle ASM(/dev/sdc、/dev/sdd、/dev/sde)准备一组原始磁盘。
  在rac1上,以root用户身份执行
  # fdisk /dev/sdb
  # fdisk /dev/sdc
  # fdisk /dev/sdd
  # fdisk /dev/sde
  # fdisk -l
  安装oracleasmlib程序包。从OTN 下载ASM 库,并以root用户身份安装ASM RPM。
  # rpm -Uvh oracleasmlib-2.0.2-1.i386.rpm
  在这个阶段,您应该已经安装了以下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
  4. 创建并配置第二个虚拟机
  要创建第二个虚拟机,只需关闭第一个虚拟机,将d:\vm\rac\rac1 中的所有文件复制到d:\vm\rac\rac2,然后更改几个配置即可。修改网络配置。
  1. 在rac1 上,以root 用户身份执行
  # shutdown –h now
  2. 在主机系统上,将rac1 文件夹中的所有文件复制到rac2。
  D:\>copy d:\vm\rac\rac1 d:\vm\rac\rac2
  3. 在VMware Server 控制台上,按CTRL-O 打开第二个虚拟机d:\rac\rac2\Red Hat Enterprise Linux 4.vmx。
  4. VMware Server 控制台:
  将虚拟机名称从rac1 重命名为rac2。右键单击您刚才打开的新 rac1 选项卡,然后选择 Settings。
  ■选择Options 选项卡。
  1. 虚拟机名称:输入“rac2”。
  单击Start this virtual machine 启动rac2,保留rac1 为电源关闭状态。

  rac2 —虚拟机:选择 Create a new>  5. 以root 用户身份登录并执行system-config-network,以修改网络配置。IP 地址:双击每个以太网设备,并使用下面的表进行必要的更改。设备 IP 地址子网掩码默认网关地址
  eth0 192.168.2.132 255.255.255.0 192.168.2.1
  eth1 10.10.10.32 255.255.255.0
  MAC 地址:导航到 Hardware Device 选项卡,并探测每个以太网设备的新MAC 地址。
  最后,激活每个以太网设备。
  修改/etc/hosts。将以下项添加到/etc/hosts 中。
  127.0.0.1 localhost
  稍后,在Oracle集群件软件安装期间,VIPCA 将尝试使用回送地址。修改/export/home/oracle/.profile。用devdb2 替换ORACLE_SID 的值。使用SSH 建立用户等效性。在集群就绪服务(CRS) 和RAC 安装过程中,Oracle Universal Installer (OUI) 必须能够以oracle 的身份将软件复制到所有RAC 节点,而不提示输入口令。在Oracle 10g 中,可以使用ssh 代替rsh 完成此操作。要建立用户等效性,请在两个节点上以oracle用户身份生成用户的公钥和私钥。打开rac1 的电源,在这两个节点上执行以下任务。
  在rac1上执行
  rac1-> mkdir ~/.ssh
  rac1-> chmod 700 ~/.ssh
  rac1-> ssh-keygen -t rsa
  rac1-> ssh-keygen -t dsa
  在rac2上执行
  rac2-> mkdir ~/.ssh
  rac2-> chmod 700 ~/.ssh
  rac2-> ssh-keygen -t rsa
  rac2-> ssh-keygen -t dsa
  在rac1上执行
  rac1-> cat ~/.ssh/id_rsa.pub >>~/.ssh/authorized_keys
  rac1-> cat ~/.ssh/id_dsa.pub >>~/.ssh/authorized_keys
  rac1-> ssh rac2 cat ~/.ssh/id_rsa.pub>> ~/.ssh/authorized_keys
  rac1-> ssh rac2 cat ~/.ssh/id_dsa.pub>> ~/.ssh/authorized_keys
  在每个节点上测试连接。验证当您再次运行以下命令时,系统是否不提示您输入口令。
  ssh rac1 date
  ssh rac2 date
  ssh rac1-priv date
  ssh rac2-priv date
  5. 配置Oracle自动存储管理(ASM)
  Oracle ASM 与Oracle 数据库紧密集成在一起,并与Oracle 的数据管理工具套件配合工作。它可以简化数据库存储管理,并提供原始磁盘I/O 的性能。
  配置ASMLib。以root用户身份在两个节点上配置ASMLib。
  # /etc/init.d/oracleasm configure
  Default user to own the driver interface []:oracle
  Default group to own the driver interface []:dba
  Start Oracle ASM library driver on boot (y/n)[n]: y
  Fix permissions of Oracle ASM disks on boot(y/n) [y]: y
  创建ASM 磁盘。以root用户身份在任何一个节点上创建ASM 磁盘。
  # /etc/init.d/oracleasm createdisk VOL1/dev/sdc1
  # /etc/init.d/oracleasm createdisk VOL2 /dev/sdd1
  # /etc/init.d/oracleasm createdisk VOL3/dev/sde1
  # /etc/init.d/oracleasm scandisks
  # /etc/init.d/oracleasm listdisks
  VOL1 VOL2 VOL3 VOL4
  6. 配置Oracle集群文件系统(OCFS2)
  OCFS2 是Oracle 开发的一个通用集群文件系统,与Enterprise Linux 内核集成在一起。它允许所有节点在集群文件系统上同时共享文件,因而消除了管理原始设备的需求。这里,您将在OCFS2 文件系统中寄宿OCR 和表决磁盘。您可以从OCFS2 用户指南获取有关OCFS2 的其他信息。
  在EnterpriseLinux 安装期间,您应该已经安装了OCFS2 RPM。验证RPM 是否已经安装在两个节点上。
  rac1-> rpm -qa | grep ocfs
  ocfs2-tools-1.2.2-2
  ocfs2console-1.2.2-2
  ocfs2-2.6.9-42.0.0.0.1.ELsmp-1.2.3-2
  创建OCFS2配置文件。在rac1上,以root用户身份执行
  # ocfs2console
  1. OCFS2 控制台:选择 Cluster,然后选择 Configure Nodes。
  2. “集群堆栈已经启动”:单击 Close。
  3. 节点配置:单击 Add。
  4. 新增节点:添加以下节点,然后单击 Apply。
  名称:rac1
  IP 地址:192.168.2.131
  IP 端口:7777
  名称:rac2
  IP 地址:192.168.2.132
  IP 端口:7777
  5. 验证生成的配置文件。
  # more /etc/ocfs2/cluster.conf
  node:
  ip_port = 7777
  ip_address = 192.168.2.131
  number = 0
  name = rac1
  cluster = ocfs2
  node:
  ip_port = 7777
  ip_address = 192.168.2.132
  number = 1
  name = rac2
  cluster = ocfs2
  cluster:
  node_count = 2
  name = ocfs2
  6. 将配置文件传播到rac2。您可以在rac2 上重新运行上述步骤以生成配置文件,或者在rac1 的OCFS2控制台上选择 Cluster 和Propagate Configuration 以将配置文件传播到rac2。配置O2CB 驱动程序。O2CB 是一组集群服务,负责管理节点与集群文件系统之间的通信。
  在我们的环境中,120 秒的隔离时间很合适。两个节点上的心跳死亡阈值应该完全相同。
  以root用户身份执行
  # /etc/init.d/o2cb unload
  # /etc/init.d/o2cb configure
  Load O2CB driver on boot (y/n) [y]: y
  Cluster to start on boot (Enter "none"to clear) [ocfs2]:
  Specify heartbeat dead threshold (>=7) [7]:61
  格式化文件系统。在格式化和挂载文件系统之前,应验证O2CB 在两个节点上均联机;O2CB 心跳当前没有活动,因为文件系统未挂载。
  # /etc/init.d/o2cb status
  您只需在一个节点上格式化文件系统。在rac1 上,以root用户身份执行
  # ocfs2console
  1. OCFS2 控制台:选择 Tasks、Format。
  3. OCFS2 控制台:按CTRL-Q 退出。
  挂载文件系统。要挂载文件系统,在两个节点上执行以下命令。
  # mount -t ocfs2 -o datavolume,nointr /dev/sdb1/ocfs
  要在引导时挂载文件系统,在两个节点的/etc/fstab 中添加以下行。/etc/fstab
  /dev/sdb1 /ocfs ocfs2 _netdev,datavolume,nointr0 0
  创建Oracle集群件目录。在OCR 和表决磁盘将驻留的OCFS2 文件系统中创建目录。
  在rac1上执行
  # mkdir /ocfs/clusterware
  # chown -R oracle:dba /ocfs
  现在,您已经完成了OCFS2 的设置。验证您可以在两个节点的共享集群文件系统上读写文件。
  7. 安装Oracle集群件
  下载后,在rac1 上以oracle用户身份执行
  rac1-> /u01/staging/clusterware/runInstaller
  输入inventory目录的完整路径:/u01/app/oracle/oraInventory。
  指定操作系统组名:oinstall。
  3. 指定Home 详细内容:名称:OraCrs10g_home /u01/app/oracle/product/10.2.0/crs_1
  4. 特定于产品的必要条件检查:忽略有关物理内存要求的警告。
  5. 指定集群配置:单击 Add。
  公共节点名称:rac2.mycorpdomain.com
  专用节点名称:rac2-priv.mycorpdomain.com
  虚拟主机名称:rac2-vip.mycorpdomain.com
  6. 指定网络接口用法:接口名称:eth0 子网:192.168.2.0 接口类型:Public
  接口名称:eth1 子网:10.10.10.0 接口类型:Private
  7. 指定Oracle 集群注册表(OCR) 位置:选择 External Redundancy。
  为了简单起见,这里将不镜像OCR。在生产环境中,您可能会考虑复用OCR 以实现更高的冗余。
  指定OCR 位置:/ocfs/clusterware/ocr
  8. 指定表决磁盘位置:选择 External Redundancy。同样,为了简单起见,我们选择不镜像表决磁盘。表决磁盘位置:/ocfs/clusterware/votingdisk
  9. 摘要:单击 Install。
  10. 执行配置脚本:以root 用户身份按顺序执行以下脚本(一次执行一个)。在当前脚本完成后,再继续执行下一个脚本。
  在rac1上执行/u01/app/oracle/oraInventory/orainstRoot.sh。
  在rac2上执行/u01/app/oracle/oraInventory/orainstRoot.sh。
  在rac1上执行/u01/app/oracle/product/10.2.0/crs_1/root.sh。
  在rac2上执行/u01/app/oracle/product/10.2.0/crs_1/root.sh。
  rac2 上的root.sh 脚本会自动调用VIPCA,但会因为“The given interface(s), "eth0" is not public.Public interfacesshould be used to configure virtualIPs.”错误而失败。如果您的公共接口使用不可路由的IP 地址(192.168.x.x),则Oracle集群验证实用程序(CVU) 将无法找到合适的公共接口。一种解决方法是手动运行VIPCA。
  11. 以root 用户身份在第二个节点上手动调用VIPCA。
  # /u01/app/oracle/product/10.2.0/crs_1/bin/vipca
  12. 欢迎页面:单击 Next。
  13. 网络接口:选择 eth0。
  14. 集群节点的虚拟IP:
  节点名称:rac1
  IP 别名:rac1-vip
  IP 地址:192.168.2.31
  子网掩码:255.255.255.0
  节点名称:rac2
  IP 别名:rac2-vip
  IP 地址:192.168.2.32
  子网掩码:255.255.255.0
  15. 摘要:单击 Finish。
  16. 配置助手进度对话框:配置完成后,单击 OK。
  17. 配置结果:单击 Exit。
  18. 返回到rac1 的执行配置脚本屏幕,然后单击 OK。
  19. 配置助手:验证所有检查均成功。OUI 在最后会执行集群件安装后检查。如果CVU 失败,请更正问题,并以oracle 用户身份重新运行以下命令:
  rac1->/u01/app/oracle/product/10.2.0/crs_1/bin/cluvfy stage -post crsinst -n rac1,rac2
  20. 安装结束:单击 Exit。
  8. 安装Oracle数据库10g 2
  下载后,在rac1 上以oracle用户身份执行
  rac1-> /u01/staging/database/runInstaller
  2. 选择安装类型:选择Enterprise Edition。
  3. 指定Home 详细内容:名称:OraDb10g_home1 路径:/u01/app/oracle/product/10.2.0/db_1
  4. 指定硬件集群安装模式:选择Cluster Installation。单击Select All。
  5. 特定于产品的必要条件检查:忽略有关物理内存要求的警告。
  6. 选择配置选项:创建数据库。
  7. 选择数据库配置:选择Advanced。
  8. 摘要:单击 Install。
  9. 数据库模板:选择General Purpose。
  10. 数据库标识:全局数据库名称:devdb SID 前缀:devdb
  11. 管理选项:选择Configure the Database with Enterprise Manager。
  12. 数据库证书:针对所有帐户使用相同的口令。
  13. 存储选项:选择Automatic Storage Management (ASM)。
  14. 创建ASM 实例:SYS 口令:。
  选择Create initialization parameter file (IFILE)。
  15. ASM 磁盘组:单击Create New。
  16. 创建磁盘组:创建两个磁盘组— DG1 和RECOVERYDEST。磁盘组名称:DG1
  选择Normal 冗余。
  选择磁盘路径ORCL:VOL1 和ORCL:VOL2。如果您已经使用标准Linux I/O 配置了ASM 磁盘,则请选择
  /u01/oradata/devdb/asmdisk1 和/u01/oradata/devdb/asmdisk2。
  磁盘组名称:RECOVERYDEST。
  选择External 冗余。选择磁盘路径ORCL:VOL3。如果您已经使用标准Linux I/O 配置了ASM 磁盘,则请选择/u01/oradata/devdb/asmdisk3。单击 OK。
  17. ASM 磁盘组:单击 Next。
  18. 数据库文件位置:选择 UseOracle-Managed Files。
  ■数据库区域:+DG1
  19. 恢复配置:
  选择Specify Flash Recovery Area。
  ■闪回恢复区:+RECOVERYDEST
  ■闪回恢复区大小:1500M
  选择Enable Archiving。
  20. 数据库内容:选择或取消选择示例模式。
  21. 数据库服务:单击Next。稍后,您可以使用DBCA 或srvctl创建或修改其他服务。
  22. 初始化参数:选择Custom。
  ■共享内存管理:Automatic
  ■ SGA 大小:200MB
  ■ PGA 大小:25MB
  b. 根据需要修改其余参数。
  23. 数据库存储:单击 Next。
  24. 创建选项:选择Create Database。单击Finish。
  25. 摘要:单击 OK。
  26. 数据库配置助手:单击 Exit。
  27. 执行配置脚本:以root 用户身份执行下面的脚本。
  在rac1上执行/u01/app/oracle/product/10.2.0/db_1/root.sh。
  在rac2上执行/u01/app/oracle/product/10.2.0/db_1/root.sh。
  28. 返回到rac1 的执行配置脚本屏幕,然后单击 OK。
  29. 安装结束:单击 Exit。
  恭喜,您已经在Enterprise Linux 上成功安装了Oracle RAC 数据库10g!
  9. 探索RAC 数据库环境
  现在,您已经成功安装了虚拟双节点RAC 数据库,下面我们来探究一下您刚刚配置的环境。
  检查应用程序资源的状态。
  rac1-> crs_stat -t
  rac1-> srvctl status nodeapps -n rac2
  rac1-> srvctl status asm -n rac1
  rac1-> srvctl status asm -n rac2
  rac1-> srvctl status database -d devdb
  rac1-> srvctl status service -d devdb
  rac1->
  检查Oracle集群件的状态。
  rac1-> crsctl check crs
  rac2-> crsctl check crs
  在命令行执行 crsctl 以查看所有可用选项。
  列出RAC 实例。
  SQL> select,nstance_name,host_name,archiver,thread#,statusfrom gv$instance;
  检查连接。验证您能够连接到每个节点上的实例和服务。
  sqlplussystem@devdb1 sqlplussystem@devdb2 sqlplussystem@devdb
  检查数据库配置。
  rac1-> export ORACLE_SID=devdb1
  rac1-> sqlplus / as sysdba
  SQL> show sga
  SQL> select file_name,bytes/1024/1024 fromdba_data_files;
  SQL> select group#,type,member,is_recovery_dest_filefromv$logfileorder by group#;
  rac1-> export ORACLE_SID=+ASM1
  rac1-> sqlplus / as sysdba
  SQL> show sga
  SQL> show parameter asm_disk
  SQL> selectname,path,header_status,total_mb,free_mb,trunc(bytes_read/1024/1024)read_mb,trunc(bytes_written/1024/1024) write_mb
  from v$asm_disk;
  创建表空间。
  SQL> connectsystem/oracle@devdb
  SQL> create tablespace test_d datafile '+DG1'size 10M;
  SQL> selectfile_name,tablespace_name,bytes from dba_data_files
  where tablespace_name='TEST_D';
  创建在线重做日志文件组。
  SQL> connectsystem/oracle@devdb

  SQL>>
  SQL>>  SQL> selectgroup#,thread#,bytes,members,statusfromv$log;
  SQL> selectgroup#,type,member,is_recovery_dest_filefrom v$logfile
  检查闪回恢复区空间使用率。
  SQL> select * from v$recovery_file_dest;
  SQL> select * fromv$flash_recovery_area_usage;
  启动和停止应用程序资源。遵循以下步骤启动和停止单独的应用程序资源。
  srvctl start nodeapps -n
  srvctl start nodeapps -n
  srvctl start asm -n
  srvctl start asm -n
  srvctl start database -d
  srvctl start service -d  -s
  crs_stat -t
  srvctl stop service -d  -s
  srvctl stop database -d
  srvctl stop asm -n
  srvctl stop asm -n
  srvctl stop nodeapps -n
  srvctl stop nodeapps -n
  crs_stat -t
  10. 测试透明故障切换(TAF)
  Oracle TAF 中的故障切换机制使任何失败的数据库连接能够重新连接到集群中的其他节点。故障切换对用户是透明的。Oracle 在故障切换实例上重新执行查询并继续向用户显示余下的结果。创建一个新的数据库服务。首先,创建一个名为CRM 的新服务。可以使用DBCA 或srvctl实用程序来创建数据库服务。这里,您将使用DBCA 在devdb1上创建CRM 服务。服务名数据库名首选实例可用实例 TAF策略
  CRM devdb devdb1 devdb2 BASIC
  在rac1上,以oracle用户身份执行
  rac1-> dbca
  1. 欢迎页面:选择 Oracle Real ApplicationClusters database。
  2. 操作:选择 Services Management。
  3. 集群数据库列表:单击 Next。
  4. 数据库服务:单击 Add。
  添加服务:输入“CRM”。
  ■选择devdb1作为首选实例。
  ■选择devdb2作为可用实例。
  ■ TAF 策略:选择 Basic。
  单击Finish。
  5. 数据库配置助手:单击 No 退出。
  数据库配置助手将在tnsnames.ora 中创建以下CRM 服务名项:
  CRM =
  (DESCRIPTION =
  (ADDRESS = (PROTOCOL = TCP)(HOST =rac1-vip)(PORT = 1521))
  (ADDRESS = (PROTOCOL = TCP)(HOST =rac2-vip)(PORT = 1521))
  (LOAD_BALANCE = yes)
  (CONNECT_DATA =
  (SERVER = DEDICATED)
  (SERVICE_NAME = CRM)
  (FAILOVER_MODE =
  (TYPE = SELECT)
  (METHOD = BASIC)
  (RETRIES = 180)
  (DELAY = 5)
  )
  )
  )
  SQL> connectsystem/oracle@devdb1
  SQL> show parameter service
  SQL> connectsystem/oracle@devdb2
  SQL> show parameter service
  使用CRM 服务连接第一个会话。如果failover_type 和failover_mode 返回的输出为“NONE”,则验证是否在tnsnames.ora中正确配置了CRM 服务。
  SQL> connectsystem/oracle@crm
  SQL> selectinstance_number instance#,instance_name,host_name,status from v$instance;
  SQL> selectfailover_type,failover_method,failed_over from v$session
  where username='SYSTEM';
  从其他会话中关闭该实例。在CRM 实例上以sys 用户身份连接,并关闭该实例。
  rac1-> export ORACLE_SID=devdb1
  rac1-> sqlplus / as sysdba
  SQL> selectinstance_number instance#,instance_name,host_name,status from v$instance;
  SQL> shutdown abort;
  验证会话已经完成故障切换。从您先前打开的同一CRM 会话执行以下查询,以验证该会话已经故障切换到其他实例。
  SQL> selectinstance_number instance#,instance_name,host_name,status from v$instance;
  SQL> selectfailover_type,failover_method,failed_overfrom v$session
  where username='SYSTEM';
  将CRM 服务重新定位到首选实例。恢复devdb1 之后,CRM 服务不会自动重新定位到首选实例。您必须手动将服务重新定位到devdb1。
  rac1-> export ORACLE_SID=devdb1
  rac1-> sqlplus / as sysdba
  SQL> startup
  SQL> show parameter service
  rac2-> export ORACLE_SID=devdb2
  rac2-> sqlplus / as sysdba
  SQL> show parameter service

  rac1-> srvctl>  SQL> connectsystem/oracle@devdb1
  SQL> show parameter service
  SQL> connectsystem/oracle@devdb2
  SQL> show parameter service
  11. 数据库备份与恢复
  使用Oracle恢复管理器(RMAN) 备份和恢复Oracle RAC 数据库的过程与单实例数据库的备份和恢复过程相同。
  在本部分中,您将看到一个非常简单的备份和恢复案例:
  1. 执行完整的数据库备份。
  2. 在test_d 表空间中创建mytable 表。
  3. 在t1 时间,向mytable 中插入第一个记录。
  4 在t2 时间,向mytable 中插入第二个记录。
  5. 在t3 时间,删除mytable 表。
  6. 将test_d 表空间恢复到某个时间点。
  7. 验证恢复结果。
  执行完整的数据库备份。
  rac1-> rman nocatalog target /
  RMAN> configure controlfile autobackup on;
  RMAN> backup database plus archivelog deleteinput;
  在test_d表空间中创建mytable 表。
  19:01:56 SQL> connectsystem/oracle@devdb2
  19:02:01 SQL> create table mytable (col1number) tablespace test_d;
  在t1 时间,向mytable中插入第一个记录。
  19:02:50 SQL> insert into mytable values (1);
  19:02:59 SQL> commit;
  在t2 时间,向mytable中插入第二个记录。
  19:04:41 SQL> insert into mytable values (2);
  19:04:46 SQL> commit;
  在t3 时间,删除mytable 表。
  19:05:09 SQL> drop table mytable;
  将test_d表空间恢复到某个时间点。
  为辅助数据库创建辅助目录。
  rac1-> mkdir /u01/app/oracle/aux
  RMAN> recover tablespace test_d
  2> until time "to_date('13-NOV-200619:03:10','DD-MON-YYYY HH24:MI:SS')"
  3> auxiliary destination'/u01/app/oracle/aux';
  RMAN> backup tablespace test_d;
  RMAN> sql 'alter tablespace test_d online';
  19:15:09 SQL> connectsystem/oracle@devdb2
  19:15:16 SQL> select * from mytable;


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-581511-1-1.html 上篇帖子: oracle 9i下载地址 下篇帖子: Oracle EBS日志 log
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表