转 异构数据库中间件sequoia(c-jdbc)初体验(1.安装试运行)

老板要俺找个异构多数据库系统,运行起来。

一个周的时间,成果如下:

1.了解当前多库系统的研究情况

2.安装了当前流行的多库中间件sequoia

[@more@]

老板要俺找个异构多数据库系统,运行起来。

一个周的时间,成果如下:

1.了解当前多库系统的研究情况

2.安装了当前流行的多库中间件sequoia

一.多库系统研究情况

两种体系结构:

1基于数据库引擎的多库系统(各主流数据库都提供了集群版本,主要有ORACLE RAC,Mysql high availability cluster,Microsoft SQL Cluster Server, IBM DB2 UDB High Availability Cluster,PostgreR)

2.基于中间件的多库系统(ICX-UDS middleware,sequoia(c-jdbc)

以上繁多的多库系统中,只有基于中间件的多库系统才支持异构数据库,而开源的只有sequoia。

二.sequoia的基本情况

sequoia是c-jdbc项目的延续(改名是由于跟SUN的JDBC有商标上的冲突),该项目发端于INRIA(法国国家计算机和自动化研究院)的sardes项目。 2003年提出了RAIDb的概念,并开发c-jdbc作为软件实现,RAIDb借鉴了RAID的思想,采用灵活的数据库复制技术和集成中间件,以廉价、异构的数据库构建冗余数据库集群,从而提供高可扩展、灵活的高性能集群。

目前sequoia的最新稳定版本是2.10.8,由continent.org开源组织管理(C-JDBC是由OBJECT WEB管理),邮件列表讨论还是比较热烈。

三.安装

万事开头难,因此选择比较简单的方案,构建由两个mysql数据库组成的RAID1集群。

配置如下: 192.168.0.163-------mysql server node1

192.168.0.164-------mysql server node2

192.168.0.166-------sequoia

192.168.0.166------mysql server (sequoia recovery log)

以上服务器操作系统均为redhat

步骤:

1.在三台服务器上安装mysql 5.1,在控制节点上安装sequoia(都有二进制安装包,傻瓜式安装)

2.下载mysql的JDBC驱动,放到sequoia的driver目录下

3.改写controller和virtual database的xml配置文件

控制器的配置文件:

<?xml version="1.0" encoding="ISO-8859-1" ?>
ttp://sequoia.continuent.org/dtds/sequoia-controller-2.10.8.dtd">http://sequoia.continuent.org/dtds/sequoia-controller-2.10.8.dtd">








虚拟数据库的配置文件---RAID1-mysql.xml:

<?xml version="1.0" encoding="UTF-8"?>
ttp://sequoia.continuent.org/dtds/sequoia-2.10.8.dtd">http://sequoia.continuent.org/dtds/sequoia-2.10.8.dtd">










className="org.continuent.sequoia.controller.backup.backupers.OctopusBackuper"
options="zip=true"/>































logIdColumnType="BIGINT NOT NULL"
vloginColumnType="VARCHAR(20) NOT NULL"
sqlColumnName="sqlsrc"
sqlColumnType="TEXT NOT NULL"
sqlParamColumnType="VARCHAR(20) NOT NULL"
extraStatementDefinition=",PRIMARY KEY (log_id)"/>
checkpointNameColumnType="VARCHAR(127) NOT NULL"/>
databaseNameColumnType="VARCHAR(50) NOT NULL"
backendNameColumnType="VARCHAR(50) NOT NULL"
checkpointNameColumnType="VARCHAR(127) NOT NULL"/>
dumpNameColumnType="TEXT NOT NULL"
dumpDateColumnType="DATETIME"
dumpPathColumnType="TEXT NOT NULL"
dumpFormatColumnType="TEXT NOT NULL"
checkpointNameColumnType="TEXT NOT NULL"
backendNameColumnType="TEXT NOT NULL"
tablesColumnType="TEXT NOT NULL"/>




4按照sequoia安装文档中的步骤,启动控制器,然后启动console执行几条简单的SQL语句,检验一下集群建立成功与否。

四.碰到的问题

一直蛮顺利的,感谢sequoia详尽的文档。碰到的一个主要问题是虚拟数库配置文件需要配置RECOVERY LOG元素,而所给例子中的配置中RECOVERY LOG一个表的列名使用了关键字SQL,字符类型的列也没有指定长度,这在mysql数据库中都是不允许的,后来跑到邮件列表中问,大牛们告诉我可以配置RECOVERY LOG表的列名,改了以后俺的mysql集群就顺顺当当地跑了起来。

最后感谢INIRA和continent给我们提供了这么好用的集群中间件,感谢邮件列表中回答我问题的大牛们,感谢cctv,mtv,感谢我的mother.father,brother,sister..........

现在试验的只是最简单的集群方式,后面还会试验异构的大规模集群,我还会写下来

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/1768615/viewspace-980865/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/1768615/viewspace-980865/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值