RAC和双机热备安装ArcSDE建议
题记
本文只是给大家介绍一下在Oracle两个特殊配置下的ArcSDE安装需要注意的事项,而不是一步步的安装说明,具体这两种环境的具体差别也不做介绍,感兴趣的用户可以查看Oracle相关帮助文档,可能在某些方面的叙述有所不足,还请大家多多指点。
环境配置
操作系统:Linux、AIX
数据库:Oracle
中间件:ArcSDE
预先说明
在以前我们也介绍了ArcSDE在Linux操作系统的安装,但是Oracle软件并没有做特殊的设置。参考:http://www.gisall.com/html/19/121719-4015.html?uid-121719-action-viewspace-itemid-3218
希望大家先看上面网址提供的信息,理解我们的安装步骤就比较容易了。
双机热备
双机热备特指基于高可用系统中的两台服务器的热备(或高可用),因两机高可用在国内使用较多,故得名双机热备,双机高可用按工作中的切换方式分为:主-备 方式(Active-Standby方式)和双主机方式(Active-Active方式),主-备方式即指的是一台服务器处于某种业务的激活状态(即 Active状态),另一台服务器处于该业务的备用状态(即Standby状态)。而双主机方式即指两种不同业务分别在两台服务器上互为主备状态(即 Active-Standby和Standby-Active状态)。
以上摘自百度百科
双机热备,通俗理解是两台机器当一台宕掉后,另外一台机器会自动的代替宕掉机器继续工作,每台机器对应一个监听,但是他们只在一个实例下工作。怎么个自动,这个不用用户担心,有专门的Cluster软件来自动操作。
在双机热备安装过程中其实和安装在普通的Oracle软件环境下的ArcSDE一样。假如A机为主机,B机为备机,那么安装A机就可以参考一下上面网址的安装方法即可,需要注意的是在创建SDE表空间的位置需要进行相关的修改(安装在共享磁盘上面)。
那么安装B机时就只需要安装软件、配置相关的文件以及授权,因为他们是共享磁盘,SDE Schema已经在A机安装时创建表空间和安装过了,所以B机就不用进行Post的过程(也就是创建表空间,安装SDE Schema)。
RAC
RAC,全称real application clusters,译为“真正应用集群”, 是Oracle新版数据库中采用的一项新技术,是高可用性的一种,也是Oracle数据库支持网格计算环境的核心技术。
Oracle RAC主要支持Oracle9i、10g、11g版本,可以支持24 x 7 有效的数据库应用 系统,在低成本服务器上构建高可用性数据库系统,并且自由部署应用,无需修改代码。
在Oracle RAC环境下,Oracle集成提供了集群软件和存储管理软件,为用户降低了应用成本。当应用规模需要扩充时,用户可以按需扩展系统,以保证系统的性能。
以上摘自百度百科
RAC也就是集群。也就是说对某个实例来说,每台机器对应相应的实例(n)。举个例子,假如说有4台机器组成的集群,实例名为orcl,那么对应每台机器的实例名称分别为orcl1、orcl2、orcl3、orcl4。
RAC在安装过程中需要注意的是,与双机热备不同的是,针对每一台机器对应的实例名不同(SID(n)),那么在安装过程中就需要设置针对自己的实例名来配置环境变量、配置文件了。
举例说明:一个实例orcl,四台机器(A-orcl1、B-orcl2、C-orcl3、D-orcl4)
在安装A机时,需要将orcl1的实例名进行相关的配置(环境变量、配置文件等),安装软件、创建表空间、用户、授权、创建Schema、授权、启动服务。
在安装B机时,需要使用orcl2的实例名进行相关的配置(环境变量、配置文件等),安装软件,因为(创建表空间、用户、授权、创建Schema)已经在共享磁盘上了,那么B机就不需要执行上述步骤,只需要配置一下文件,授权,启动服务即可。
C机和D机是一样道理。
配置文件
1:SDEHOME/etc/dbinit.sde:set LOCAL(或者TWO_TASK) =ORACLE_SID
对RAC来说,不同的机器填写不同的实例名。
对双机热备来说,实例名一样。
2:SDEHOME/etc/services.sde
3:/etc/services
上面两个文件主要是设置ArcSDE实例名和端口。RAC和双机热备都是对应的相同的ArcSDE实例名和端口号。
两者区别
因为我们常常RAC也为两台机器,所有有时候RAC和双机热备容易搞混。
双机热备:利用ArcCatalog只能连接某个虚IP(该IP是有Cluster软件管理,应该是一个映射的原理,也就是说该虚IP指定A机,当A机宕掉后,cluster管理软件自动让这个虚IP指定B机)。A机、B机只能有一个在工作。
RAC:利用ArcCatalog可以连接不同的IP(连接不同的服务器),但是都指定的一个库,如果连接A机导入一个要素类,那么连接B机,该要素类也能看到。所有服务器都可以同时工作。