Oracle 在windows 域中安装会出现启动后无法使用的问题。
说明:假定数据库实例名为oracletest;域为HNSZYY.COM
可以采用两种办法解决:
一. 修改windows 中的参数;(未经正式库测试,仅在测试库上通过)
二. 安装Oracle公司的OFS(Oracle Fail Safe);
下面详细介绍两种办法:
一. 将windows服务中的实例服务(比如OracleServiceoracletest)的登陆方式从“本地系统帐户”改为“此帐户”,并且帐户名改为域用户名格式采用“\”方式,不要采用“@”方式(比如使用HNSZYY\oracletest ,不使用 oracletest@HNSZYY.COM)
二. 安装Oracle公司的OFS
以下为OFS在各机器上的安装顺序及注意事项
1. 结点1 主域服务器
2. 结点2 备份域服务器
3. 在每个上安装操作系统
4. 安装群集
5. 结点切换测试
6. 打开结点1,结点2,结点1拥有磁盘阵列控制权
7. 在结点1上安装oracle程序,重新启动结点1
说明:选择ENTPRIS****,再选择自定义安装,安装路径选择为本地系统盘安装过程中选择不创建数据库,注意一定不要创建数据库,因为Oracle 8.1.6不像Oracle 9创建数据库时会问你是否选择路径,如果选择了创建数据库则创建的数据库会和Oracle 应用服务一样放在了本地系统盘这样在使用FAILSAFE将数据库加入GROUP的过程中会出错的;
8. 在结点2上安装oracle程序,重新启动结点2
9. 在结点1上安装oracle实例,重新启动
说明:在节点一上创建要添加到集群中的数据库,点击Oraclehome81中的database configuration assistant来创建新数据库,安装路径选择为D盘(共享磁盘),先不要配置 Net8,即不要配置 listener.ora 和 tnsnames.ora 文件。注意 Control 文件、redo log files 和 data files 必须创建在磁盘柜的共享分区上;
10. 结点2已拥有磁盘阵列控制权,将共享磁盘格式化,在结点2上安装oracle实例,重新启动
11. 在结点1上安装OFS,安装时当需要输入域特权用户时按照 “域名\用户名”格式输入(不要按 用户名@域名 的格式输入),重启。
12. 在结点2上安装OFS,安装时当需要输入域特权用户时按照 “域名\用户名”格式输入(不要按 用户名@域名 的格式输入),重启
13. 在两台机器上修改文件c:\winnt\system32\drivers\etc\hosts 如下:
192.168.0.3 datamast (节点1 IP,机器名)
192.168.0.4 datamast (节点1 IP,机器名)
192.168.0.5 cluster (MSCS Cluster 的IP ,别名。也就是虚拟 IP的别名)
192.168.0.6 dbserver (Oracle Cluster 的IP ,别名,也就是虚拟 IP的别名)
14. 由于当前oracle实例是结点2安装的(结点1安装的已被结点2格式化了),所以首先在结点2上配置OFS,配置结点2的OFS前关闭结点1。
15. 在结点1上配置OFS,配置结点1的OFS时启动结点2,但结点1拥有磁盘阵列的控制权。
16. 配置结点2时,
17. 配置各结点的OFS时,当verify standalone DataBase时,如果出现类似于“发现两个数据库实例,只能保留一个,请选择要保留的数据库实例,不选择的将被删除”的对话框时,一定要选择Cancle(如果选择OK则两个结点上的Oracle实例服务都将被删除,相当于删除了数据库实例)
18. 在结点2中导入数据库时(即使用Add to Group 将Oracle database添入组时),数据库的ServiceName 一定要是全局域名比如oracletest.hnszyy.com,如果是oracletest 则需要重新导入数据库
在结点1种Verify Cluster后,在结点2中的OFS中配置的信息都会传到结点1中。
切换结点检测是否成功。
OFS安装
开始正题:在进行安装前建议先做一次规化。比如IP地址(需要注意用Failsafe实现双机群集+Windows2000 MSCS的方式您可能要用6个IP地址,主/备机各一个,双机群集的虚拟机一个,以及ORACLE服务(在Failsafe上虚拟出来的)要一个地址)。
主机名 IP地址 域名 备注
Server1 192.168.0.1/24 Server1.xxxx.com DNS+主域控制器(域名为XXXX。COM)
datamast 192.168.0.3/24 Datanast.xxxx.com 主数据服务器
10.1.1.1 双机群集内部通讯
datase 192.168.0.4/24 Datase.xxxx.com 主数据服务器
10.1.1.2 双机群集内部通讯
Cluster 192.168.0.5/24 cluster.xxxx.com 物理双机群集服务器(虚拟)
dbserver 192.168.0.6/24 dbserver.xxxx.com 物理双机群集服务器(虚拟)
注意:在ORACLE的安装与要采用何种方式实现ORACLE的切换有关,在本文中我会介绍两种ORACLE的双机(一种采用MSCS+FAILSAFE,还有一种仅有MSCS)
OFS 步骤:(SuperBird)
1. Install OFS
2. Add MSCS Cluster
3. Verify Cluster
4. Create Group and Specify
5. Add Virtual Address to Group
6. Verify Database
7. Add Database to Group
二、ORACLE群集(采用FAILSAFE)
正确的完成以上步骤时,oracle HA 应用基本上就已经完成了一大半,接下来就可以进行FAILSAFE 的安装了,如果没有正确安装MSCS,是不能进行以下的安装的,因为Oracle Fail Safe 是架构在 Microsoft Cluster Server(MSCS)上的一个 Oracle 产品,必须确保其安装的正确性。 在这里我首先介绍一下采用MSCS+ Oracle Fail Safe 的方式,要注意在Oracle 安装时一定要区分Oracle 应用服务和实例(数据库)的安装(Oracle 应用服务Oracle 81安装在每台服务器的系统盘,而Oracle 的实例(数据库) Oracledata要安装在共享磁盘.
首先介绍一下我服务器磁盘驱动器名:两台数据库服务器一致:
服务器系统有两块硬盘: 磁盘驱动器名为C:和F:
磁盘阵列柜分为: 磁盘驱动器名为D:和E
D盘为ORACLE专用, E为双机群集专用)
安装步骤:
1、 在节点一上安装 Oracle 8.1.6,选择ENTPRIS****,再选择自定义安装,安装路径选择为本地系统盘(我选择在F盘)安装过程中选择不创建数据库,注意一定不要创建数据库,因为Oracle 8.1.6不像Oracle 9创建数据库时会问你是否选择路径,如果选择了创建数据库则创建的数据库会和Oracle 应用服务一样放在了本地系统盘这样在使用FAILSAFE将数据库加入GROUP的过程中会出错的;
2、 重新启动节点一;
3、 在节点二上安装 Oracle 8.1.6,与在节点一的方式一样;
4、 重新启动节点二;
5、 在节点一上创建要添加到集群中的数据库,点击Oraclehome81中的database configuration assistant来创建新数据库,安装路径选择为D盘(共享磁盘),先不要配置 Net8,即不要配置 listener.ora 和 tnsnames.ora 文件。注意 Control 文件、redo log files 和 data files 必须创建在磁盘柜的共享分区上;
6、 在节点一和节点二的注册表中相应位置添加第五步所创建的数据库的 ORACLE_SID,(这种方式说明只在节点一拥有对磁盘阵列柜的控制权时,仅安装数据库(实例)一次,而我采有在节点一上添加完数据库后,把节点一服务器关机,让节点二服务器有对磁盘阵列柜的控制权,再把D盘(共享磁盘)格式化; 点击Oraclehome81中的database configuration assistant来创建新数据库,安装路径选择为D盘(共享磁盘),先不要配置 Net8,即不要配置 listener.ora 和 tnsnames.ora 文件。注意 Control 文件、redo log files 和 data files 必须创建在磁盘柜的共享分区上,注意一定要和节点一的安装完全一致.) ,注:在后来总结经验时我认为不必再在第二个节点上创建数据库了,因为回头FailSafe 会帮助用户自动完成。
7、 在节点一上安装 FailSafe 3.2(注意要安装在本地,我选择在F盘);
8、 重新启动节点一;
9、 在节点二上安装 FailSafe 3.2(注意要安装在本地,我选择在F盘);
10、 重新启动节点二;
11、 在两台机器上修改文件c:\winnt\system32\drivers\etc\hosts 如下:
192.168.0.3 datamast (节点1)
192.168.0.4 datamast (节点1)
192.168.0.5 cluster (MSCS Cluster 的别名,也就是虚拟 IP的别名)
192.168.0.6 dbserver (Oracle Cluster 的别名,也就是虚拟 IP的别名)
注意节点上listener 使用的 IP 地址应该是虚拟 IP(数据库Oracle Cluster 的别名,也就是虚拟 IP的别名,在我的例子中是192.168.0.6 dbserver);
12、 打开 Oracle Fail Safe Manager
Start -> Programs -> OraHome81> -> Oracle Fail Safe Manager
打开后出现 Add Cluster to Tree 对话框,在该对话框里输入 集群 名称(在我的实验中是Cluster),会提示输入在域里有管理权限的用户名和密码(在创建集群时使用过);输入后会出现 Verify Cluster 对话 框,对该集群各项资源进行有效性验证(如果你的两台双机的服务器不是域控制器而是域成员,则在Verify Cluster时会提示服务器名与IP地址不一致,不必担心这只是小问题,你可以在每台服务器本地c:\winnt\system32\drivers\etc\hosts下添加内网IP地址与服务器名,这个服务器名你可以随意,只要不和原来的名字不冲突就可以了.或者根本不必理会);
13、 在每台节点机上检查是否有服务 OracleMSCSServices,并启动该服务;
14、 在每台节点机上启动集群管理器(启动 -> 程序 -> 管理工具 -> 集群管理器),在 Cluster Group 检查是否有 Oracle Services for MSCS 这一项;并检查 Resource Types 中是否有 Oracle Database 和 Oracle TNS Listener。
15、 在 Oracle Fail Safe Manager 中的Groups 菜单里选择 Create;打开 Create Group Wizard 后可以设置 failover 和 failback 策略,并自动打开 Add Resource to Group Wizard 可以向组添加virtual address和名字如192.168.0.6 dbserver(选择Resources,然后Add to Group)。
16、 在 Troubleshooting 菜单上选择 Verify Standalone Database 验证 Oracle数据库以及 Oracle Net 配置,该命令确认 Oracle Fail Safe 可以访问数据库,并且 standalone 数据库位于共享分区上;
17、 在 Resources 菜单上选择 Add to Group,然后选择 Oracle Database打开 Add Resource to Group Wizard,该向导用来将 single-instance Oracle database server 配置为基于 MSCS 的高可用性数据库服务器;
18、完成了以上操作了,你会发现Oracle Fail Safe Manager中的RESOURCE会增加了监听的服务,同时MSCS中的群集资源组中也相应增加了此选项
(19条不要使用)
19、你还必须在Oracle Fail Safe Manager, 在 Resources 菜单上选择 Add to Group选择通用服务,把实例的服务加入到你创建的资源组当中.
到此为至你已经完成了MSCS+Oracle Fail Safe Manager的HA了. J
注意:数据库客户机访问你的虚拟服务器是192.168.0.6 dbserver而不是双机的虚拟服务器192.168.0.5 CLUSTER
以上是在Oracle 816基础上的Oracle Fail Safe Manager