Sequoiadb是支持sql的,SequoiaSql是解析sql语言,Sequoiadb来执行SequoiaSql解析出的语言并执行相关命令,SequoiaSql相当于客户端,Sequoiadb相当于后端。用户可以通过JDBC驱动连接SequoiaSql进行应用程序开发。
之前的文章介绍了Sequoiadb对接SequoiaSql应用开发实践,本文将介绍更加简单的一种方式进行对接。以前的对接方式为 http://blog.csdn.net/u014439239/article/details/78403941
前提:
1)本教程已经默认安装Sequoiadb(安装可参考Sequoiadb官网);
2)Sequoiadb安装包和SequoiaSQL安装包可去官网下载 http://download.sequoiadb.com/cn/index-cat_id-2 。
1.安装SequoiaSQL
首先去Sequoiadb官网下载安装包
SequoiaSQL-oltp-2.8.4-x86_64-enterprise-installer.tar.gz
在root用户下解压安装包
[root@sdb01~]# tar -zxvf SequoiaSQL-oltp-2.8.4-x86_64-enterprise-installer.tar.gz
在root用户下执行安装
[root@sdb01~]# ./SequoiaSQL-oltp-2.8.4-x86_64-enterprise-installer.run
Note:
所有安装参数均使用默认值即可。在安装的时候要指定安装路径,使用默认目录: /opt/SequoiaSQLoltp
2.安装SequoiaSQL服务切换到sdbadmin用户下,创建名称为testinst的实例
[sdbadmin@sdb2bin]$/opt/SequoiaSQLoltp/bin/ sdb_sql_ctl addinst testinst -D /opt/sdb_date
Adding instancetestinst ...
Ok
Note:
- D 参数为指定数据目录,这里是opt目录下指定数据文件为sdb_date
启动testinst这实例
[sdbadmin@sdb2bin]$/opt/SequoiaSQLoltp/bin/sdb_sql_ctl start testinst
Starting instancetestinst ...
ok (PID: 24206)
创建一个叫做testdb的数据库
[sdbadmin@sdb2bin]$/opt/SequoiaSQLoltp/bin/sdb_sql_ctl createdb testdb testinst
Creating databasetestinst ...
ok
进入到创建的testdb的库中
[sdbadmin@sdb2opt]$ /opt/SequoiaSQLoltp/bin/psql -p 5432 testdb
创建ForeignData Wrapper
testdb=# create extension sdb_fdw;
创建SequoiaDB服务,这里可指定多个协调节点。其中address为机器IP,11810为协调节点端口号,有设置鉴权需要定制用户名和密码。
testdb=# create server sdb_server foreigndata wrapper sdb_fdw options(address '127.0.0.1', service '11810');
创建SequoiaDB映射表,真实表存在于SequoiaDB之内
testdb=# create foreign table test ( name text, num int ) server sdb_server options( collectionspace 'testcs', collection 'testcl', decimal 'on');
Note:
其中collectionspace指定为SequoiaDB中所对应的集合空间,collection对应为SequoiaDB中所对应的集合,decimal 'on' 表示支持decimal参数。
执行查询语句即可进行查询:
testdb=#select * from test limit 1 ;
Note:
其中记录保存在Sequoiadb中
通过Sequoiadb和SequoiaSql进行对接,能够使得Sequoiadb支持标准SQl语法。JDBC 是 Sun 提供的一套数据库编程接口API 函数,由 Java 语言编写的类、界面组成。用 JDBC 写的程序能够自动地将 SQL 语句传送给相应的数据库管理系统。通过对接SequoiaSql的JDBC接口,能够使开发者尽快上手不必掌握复杂的API,降低了学习成本,是众多开发者的首选。