Oracle Data Guard实施方案
3. Dataguard 实施前提条件和注意事项:
? 灾备环境中的所有节点必须安装相同的操作系统,尽可能令详细补丁也保持相
同。
? 灾备环境中的所有节点必须安装完全相同版本的Oracle数据库软件,包括版本
号和发布号,比如必须都是Oracle 11.2.0.1 ? 主库必须处于归档(ARCHIVELOG)模式。 ? 灾备环境中所有节点的硬件和操作系统架构必须相同 ? 主库可以是单实例,也可以是RAC。
? 主节点和备用节点之间的硬件配置可以不同,比如CPU数量,内存数量,存
储的配置等等。
? 配置灾备环境的数据库用户必须具有SYSDBA权限。
Oracle Data Guard实施方案
4. Oracle软件安装
1. 要实施DataGurad的前,需要在主机RedHat-Primary和备机RedHat-Standby上进行
ORACLE软件的基础安装。
2. 备机基础软件的安装有两种方式供选择:
1) 源始安装介质安装
采用ORACLE数据库安装介质进行软件安装。 2) “克隆”主站源数据库
分别对主站源数据库进行tar压缩并FTP/rcp至备机上,然后展开压缩文件。
? 通常出于便捷的原因,备机的Oracle初始建立可采用上述的第二种方式。测试环境中直接对虚拟机进行了拷贝,因此相当于采用了第二种方式。现场环境下,如果主节点不是RAC环境,也可以采用第二种方式。
4.1 环境配置
RedHat5-Primary (primary , IP 192.168.204.131)以下简称主库
Single Instance Primary IP Oracle Instance Data,Control File,Redo File
说明 192.168.204.131 单实例 ORCL $ORACLE_BASE/oradata RedHat5-Standby (standby, IP 192.168.204.132) ,以下简称从库。 Single Instance Standby IP Oracle Instance Data,Control File,Redo File
说明 192.168.204.132 单实例 ORCL $ORACLE_BASE/oradata Oracle Data Guard实施方案
4.2 系统硬件环境检查
4.2.1 检查内存相关项
检查服务器的内存,可以通过下列命令:
[root@localhost ~]# grep MemTotal /proc/meminfo
另外与内存相关的swap 交换分区的设置也很重要,通常有下列的规则:
实际内存 建议swap 交换空间大小
-------------- -----------------------------
1G-2G 1.5 倍于内存 2G-16G 与内存相同
超过16G 设置为16G 即可
查看当前服务器swap 交换分区大小,可以通过下列命令: [root@localhost ~]# grep SwapTotal /proc/meminfo
查看系统当前共享内存,可以通过df 命令,例如: [root@localhost ~]# df -h /dev/shm
4.2.2 查看系统架构
本步用来查看处理器的架构类型,需要确认ORACLE 安装包与处理器架构相符,不然安装时必然报错。查看当前系统的处理器架构可以通过下列命令: [root@localhost ~]# uname –m i686
4.2.3 检查磁盘空闲空间
首先/tmp 至少要有1g 的空闲空间,查看/tmp 的磁盘空间,也可以通过df 命令查看,例如:
[root@localhost ~]# df -h /tmp
在执行安装之前,建议执行df -h 命令,查看当前是否有充裕的空闲空间来安装和创建数据库。
[root@jssnode1 ~]# df –h
Oracle Data Guard实施方案
4.3 安装操作系统软件包
? (32位 RedHat5.4)
binutils-2.17.50.0.6
compat-libstdc++-33-3.2.3 elfutils-libelf-0.125
elfutils-libelf-devel-0.125
elfutils-libelf-devel-static-0.125 gcc-4.1.2 gcc-c++-4.1.2 glibc-2.5-24
glibc-common-2.5 glibc-devel-2.5 ksh-20060214 libaio-0.3.106
libaio-devel-0.3.106 libgcc-4.1.2 libgomp-4.1.2 libstdc++-4.1.2
libstdc++-devel-4.1.2 make-3.81 sysstat-7.0.2
查看软件包是否已经安装:
[root@localhost ~]# rpm -aq binutils compat-libstdc++-33 [root@localhost ~]# rpm -aq | grep elfutils-libelf [root@localhost ~]# rpm -aq | grep gcc [root@localhost ~]# rpm -aq | grep glibc [root@localhost ~]# rpm -aq | grep ksh [root@localhost ~]# rpm -aq | grep libaio [root@localhost ~]# rpm -aq | grep libgcc [root@localhost ~]# rpm -aq | grep libgomp [root@localhost ~]# rpm -aq | grep libstdc++ [root@localhost ~]# rpm -aq | grep make-3 [root@localhost ~]# rpm -aq | grep sysstat [root@localhost ~]# rpm -aq | grep unixODBC
通过以上命令来查看是否有未安装的软件包,可将未安装的软件包放到~/rpm下,因有些包会相互依赖,最简单的方式是将rpm包下的软件包一起安装: [root@localhost ~]#cd rpm [root@localhost rpm]#pwd /root/rpm
[root@localhost rpm]#ls
compat-libstdc++-33-3.2.3-61.i386.rpm elfutils-libelf-devel-0.137-3.el5.i386.rpm
elfutils-libelf-devel-static-0.137-3.el5.i386.rpm gcc-4.1.2-46.el5.i386.rpm gcc-c++-4.1.2-46.el5.i386.rpm glibc-devel-2.5-42.i386.rpm glibc-headers-2.5-42.i386.rpm
kernel-headers-2.6.18-164.el5.i386.rpm libaio-devel-0.3.106-3.2.i386.rpm libgomp-4.4.0-6.el5.i386.rpm
libstdc++-devel-4.1.2-46.el5.i386.rpm sysstat-7.0.2-3.el5.i386.rpm unixODBC-2.2.11-7.1.i386.rpm
unixODBC-devel-2.2.11-7.1.i386.rpm