同一台服务器上搭建HDR实例[转]

同一台服务器上搭建HDR实例  作者: liaosnet
(Linux AS 3 + IDS V9.4)

什么是HDR(High-Availability Data Replication)
复制数据的一个方法就是将数据库复制到安装在不同计算机上的数据库服务器。该复制允许报告不打断使用原数据库的客户机应用程序而访问数据。


数据库服务器实现整个数据库服务器的接近透明的数据复制。将一个数据库服务器管理的所有数据复制并动态更新到另一数据库服务器(通常位于不同的地理位置)。HDR提供维护整个数据库服务器的备份副本的方法,应用程序可以在灾难性故障的情况下快速访问该副本。

满足硬件和操作系统要求
HDR数据库服务器对要起作用,必须满足以下硬件要求:

1)运行主数据库服务器和辅助数据库服务器的计算机必须相同(相同的供应商和体系结构)。

2)运行主数据库服务器和辅助数据库服务器的计算机上的操作系统必须相同。

3)运行主数据库服务器和辅助数据库服务器的硬件必须支持网络能力。

4)分配给主数据库服务器和辅助数据库服务器的数据库空间的磁盘空间量必须相等。磁盘空间类型是不相关的。

满足数据库和数据要求
要使用HDR数据库服务器对起作用,必须满足以下数据库和数据要求:

1)必须记录所有数据:所有希望复制的数据库必须将事务日志记录打开。

2)数据必须驻留在数据库空间或SB空间中。



规划系统配置
1)硬件、操作系统和数据库

操作系统:Linux AS 3

数据库:IDS 9.40.UC4W4

硬件环境:VMWare 5.5.1


服务器A
服务器B

用户
Info1
Info2

所在HOME目录
/opt/info1
/opt/info2

数据库服务名(DBSERVERNAME)
Info1_online
Info2_online

数据库服务别名(DBSERVERALIASES)
Info1_online_net
Info2_online_net

数据库唯一识别号(SERVERNUM)
1
2

配置文件名
Onconfig.info1
Onconfig.info2




2)参数配置要求

配置文件onconfig参数设置注意项:以下参数两台服务器应该配置一致

存储空间和块的配置

ROOTNAME
rootdbs

ROOTOFFSET
0

ROOTPATH
./dbs/rootdbs(注意:这里使用的是相对路径,这里是同一台服务器搭建HDR的关键)

ROOTSIZE
30000

镜像(有镜像时)

MIRROROFFSET
<默认值>

MIRRORPATH
<默认值>

物理日志

PHYSDBS
<默认值>

PHYSFILE
<默认值>

数据库空间和逻辑日志磁带备份设备

LTAPEBLK
<默认值>

LTAPESIZE
<默认值>

TAPEBLK
<默认值>

TAPESIZE
<默认值>

逻辑日志配置

LOGFILES
<默认值>

LOGSIZE
<默认值>

DYNAMIC_LOGS
<默认值>

共享内存配置 

SHMADD
<默认值>

SHMTOTAL
<默认值>

SHMVIRTSIZE
<默认值>

HDR参数 

DRINTERVAL
<默认值>

DRLOSTFOUND
<默认值>

DRTIMEOUT
<默认值>








安装配置HDR步骤
       先建立相关用户和目录,包括infromix/info1/info2用户并设置好相应的权限。

       # groupadd –g 200 informix

       # useradd –g 200 –u 200 –s /bin/csh –d /opt/informix –m informix

       # useradd –g 200 –u 201 –s /bin/csh –d /opt/info1 –m info1

       # useradd –g 200 –u 202 –s /bin/csh –d /opt/info2 –m info2

      

       修改/etc/hosts,/etc/services文件增加以下内容

       /etc/hosts文件

       192.168.80.31   netsky  netsky.localdomain       netsky           



       /etc/services文件

       sqlexec1        9011/tcp

sqlexec1_net    9012/tcp

sqlexec2        9014/tcp

sqlexec2_net    9015/tcp

      

一、             安装一个用户的数据库(info1)

不同版本/不同操作的数据库安装略有不同。

1)  以info1登陆系统,修改用户环境变量.cshrc增加以下内容

setenv INFORMIXDIR /opt/info1

setenv INFORMIXSERVER info1_online_net

setenv ONCONFIG onconfig.info1

setenv PATH ${INFORMIXDIR}/bin:${PATH}



# 以下内容非必须,目的是在用户环境时显示当前用户和目录

set prompt=""

alias cd 'cd !*; set prompt=""'

2)  安装informix数据库

1.    以info1用户解压缩informix安装包(informix.cpio)

% cpio –icvdum < informix.cpio

2.     相关文件的建立和目录权限更改

# cd /opt

# chown informix info1;chmod 755 info1

# cd /opt/info1;mkdir dbs;cd dbs;touch rootdbs fullbak;chown informix:informix rootdbs fullbak;chmod 660 rootdbs fullbak

# cd /opt/info1;source .cshrc

3.      检查当前环境安装informix

# env                            --检查是否.cshrc里的变量已经生效

# ./installserver        --一路回车即可,运行完成后会提示做下一步。

# ./RUN_AS_ROOT.server

3)  复制~/etc/sqlhosts.std文件为~/etc/sqlhosts并修改增加以下内容

info1_online            onipcshm              netsky     sqlexec1

info1_online_net      onsoctcp        netsky     sqlexec1_net



info2_online            onipcshm              netsky     sqlexec2

info2_online_net      onsoctcp        netsky     sqlexec2_net



4)  复制~/etc/onconfig.std文件为~/etc/onconfig.info1并修改配置。

参照 规划 里的参数配置进行配置

TAPEDEV              ./dbs/fullbak

SHMBASE       0x44000000                   # info1保持默认,info2要注意改成其它值



Vi更改config.info1文件中的所有/usr/informix为/opt/info1

:1,$s#/usr/informix#/opt/info1#g



5) 初始化数据库

Info1% oninit –ivy

初始化完成后,用onstat –m查看online.log内容,若出现

09:49:55  'sysmaster' database built successfully.

09:49:56  'sysutils' database built successfully.

09:49:56  'sysuser' database built successfully.

刚表示数据库初始化成功

二、             安装另一个数据库(info2)

1)  以root用户登陆到/opt/info1,执行tar包任务,将tar包复制到/opt/info2/下解压缩

# cd /opt/info1;tar –cvf info.tar *

# cd /opt/info2;cp /opt/info1/info.tar ./;tar –xvf info.tar

更改/opt/info2的目录属主为informx,权限为755.

2)  修改相关配置文件,复制/opt/info1/.cshrc到/opt/info2/.cshrc下并修改属主为info2:informix,权限为644;复制~/etc/onconfig.std为~/etc/onconfig.info2并按照info1数据库安装步骤的方法修改之



三、             配置HDR(以info1为主机,info2为备机)

在info1上执行0级备份

Info1 % ontape –s –L 0

将info1设置为主机,主机状态变为 On-Line(Prim)

Info1 % onmode –d primary info2_online_net      --info2_online_net为HDR对的另一台



将fullbak文件拷贝到/opt/info2/dbs/下(注意权限为660),在info2上执行恢复

Info2 % ontape –p          --第一个Yes/No为y,以后均为n

将info2设置为备机,最后状态变为Read-Only(Sec)

Info2 % onmode –d secondary info1_online_net   --info1_online_net为HDR对的另一台

用onstat –Dr 3可监控复制过程直到Read-Only(Sec)状态



四、             HDR切换

IDS 9.4版本的DRAUTO固定设为0,即只能手动/程序更改数据库的双机状态,IDS自带有位于~/bin目录下的hdrmkpri.sh,hdrmksec.sh两个脚本来更改HDR的状态。在HDR断开连接时可用这两个脚本进行HDR状态转换。下面是一个手动更改HDR状态的实例:

关闭info1数据库   (注:hdrmkpri.sh,hdrmksec.sh需用informix进行操作)

Informix % cd /opt/info1;source .cshrc

Informix % onmode –ky

将info2数据库更改为主用数据库,执行完成后数据库将会DOWN下来

Informix % cd /opt/info2;source .cshrc

Informix % hdrmkpri.sh info1_online_net

将info1数据库更改变备用数据库

Informix % cd /opt/info1;source .cshrc

Informix % hdrmksec.sh info2_online_net

重新启动info2数据库后将变为主用数据库

Informix % cd /opt/info2;source .cshrc

Informix% oninit –vy



Steps to switch server types in an HDR pair:



  Instance A (currently Primary)          Instance B (currently Secondary)

  ------------------------------          --------------------------------

  1] onmode -ky                              (server should be up)

                                       2] hdrmkpri.sh

  3] hdrmksec.sh

     (now a Secondary server)             4] oninit (now a Primary server)

  

更多参考:Informix管理员参考指南 V9.4
参与16

16同行回答

king_ken1king_ken1系统管理员天税科技
有类似的功:(显示全部
有类似的功:(收起
政府机关 · 2013-03-06
浏览921
else_xieelse_xie系统运维工程师NZX
虚拟机的资源分成两台就好了,那样不是更可以模拟真实的情况么显示全部
虚拟机的资源分成两台就好了,那样不是更可以模拟真实的情况么收起
保险 · 2013-01-17
浏览903
bond2200bond2200系统工程师PICC
还是搞不明白,只写了rootdbs的限制,那现在还有其他DBS的link,这个如何处理?显示全部
还是搞不明白,只写了rootdbs的限制,那现在还有其他DBS的link,这个如何处理?收起
政府机关 · 2013-01-17
浏览931
wangfengcoolwangfengcool软件开发工程师中科软科技股份有限公司
灰常感谢 多谢了显示全部
灰常感谢 多谢了收起
互联网服务 · 2012-11-09
浏览877
alexycomalexycom项目经理IBM
这个文档需要规范起来显示全部
这个文档需要规范起来收起
政府机关 · 2012-06-11
浏览864
zymh_zyzymh_zyIT顾问国内某公司
我看得不太懂...是在一台linux as3安装两套informix9.4.然后配成HDR吗?还是用vmware5.5 安装两套linux as3,再安装两套informix,再配成HDR吗??想了解在一台linux as3主机系统下,能否安装两套informix9.4,然后将这两套informi9.4配成HDR??...显示全部
我看得不太懂...是在一台linux as3安装两套informix9.4.然后配成HDR吗?还是用vmware5.5 安装两套linux as3,再安装两套informix,再配成HDR吗??

想了解在一台linux as3主机系统下,能否安装两套informix9.4,然后将这两套informi9.4配成HDR??收起
IT咨询服务 · 2012-06-11
浏览926
wangfengcoolwangfengcool软件开发工程师中科软科技股份有限公司
:hug:神器显示全部
:hug:神器收起
互联网服务 · 2012-04-11
浏览1044
lxy535lxy535系统工程师HAFA information
感谢兄弟了!!!!!!!!!!!!!!:P显示全部
感谢兄弟了!!!!!!!!!!!!!!:P收起
政府机关 · 2011-09-23
浏览1032
lianyonglianyong技术经理徽商银行
11.5可有类似的功能?显示全部
11.5可有类似的功能?收起
银行 · 2011-06-14
浏览1042
LIULEILIULEI系统工程师通建
hao dongxi a显示全部
hao dongxi a收起
电信设备制造商 · 2011-06-14
浏览1081

提问者

huiha
技术经理ww

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2010-04-06
  • 关注会员:0 人
  • 问题浏览:11477
  • 最近回答:2013-03-06
  • X社区推广