【SequoiaDB】3 巨杉数据库SequoiaDB命令行安装及部署

巨杉数据库SequoiaDB是一款金融级分布数关系型数据库,主要面对高并发OLTP场景提供高性能、可靠性稳定以及无限水平扩展的数据库服务。用户可在SequoiaDB巨杉数据库中创建多种类型的数据库实例(支持MYSQL、PostgreSQL、SparkSQL三种关系型数据库实例,类MongoDB的Json文档型数据库实例、以及S#对象存储与Posix文件系统的非结构化数据库实例),以满足上层不同应用程序各自的需求。本篇主要对巨杉数据库的命令行安装与部署进行分享。

1 软件环境

  • Oracle Linux 6.9
  • Sequoia DB 3.4

2 系统配置

2.1 硬件要求

需求项

要求

建议

CPU

- x86(Intel Pentium、Intel Xeon和AMD)32位Intel和AMD处理器

- 64(64位AMD64和Intel EMT处理器)

- PowerPC 7或者PowerPC 7+处理器

建议采用X64(64位AMD64和Intel EM64T处理器)或PowerPC处理器

磁盘

至少20GB空间

建议大于100GB磁盘空间

内存

至少1GB

大于2GB物理内存

网卡

配备至少1张网卡

建议至少配置1Gb网卡

2.2 受支持的操作系统

系统类型

系统列表

Linux

 

- Red Hat Enterprise Linux (RHEL) 6

- Red Hat Enterprise Linux (RHEL) 7

- SUSE Linux Enterprise Server (SLES) 11 Service Pack 1 

- SUSE Linux Enterprise Server (SLES) 11 Service Pack 2 

- SUSE Linux Enterprise Server (SLES) 12 Service Pack 1 

- Ubuntu 12.x 

- Ubuntu 14.x 

- Ubuntu 16.x 

- CentOS 6.x 

- CentOS 7.x 

未在上述列表中列举的Linux操作系统不代表不能用于安装Sequoia DB。

2.3 软件要求

在安装Sequoia之前,应先对Linux系统相关的配置进行检查和设置,包括:

  • 配置主机名
  • 配置主机名/IP地址映射
  • 配置防火墙

2.3.1 配置主机名

[root@strong ~]# cat /etc/sysconfig/network

NETWORKING=yes

HOSTNAME=sdbserver1

[root@strong ~]# cat /etc/hosts

127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4

::1 localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.56.101 sdbserver1

2.3.2 配置防火墙

[root@strong ~]# service iptables stop

iptables: Setting chains to policy ACCEPT: filter [ OK ]

iptables: Flushing firewall rules: [ OK ]

iptables: Unloading modules: [ OK ]

[root@strong ~]# chkconfig iptables off

[root@strong ~]# vim /etc/selinux/config

SELINUX=disabled

2.3.3 调整ulimit参数

[root@strong ~]# vim /etc/security/limits.conf

* soft core 0

* soft data unlimited

* soft fsize unlimited

* soft rss unlimited

* soft as unlimited

参数说明:

  • core:数据库出现故障时产生core文件用于故障诊断,生产建议关闭;
  • data:数据库进程所允许分配的数据内存大小;
  • fsize:数据库进程所允许寻址的文件大小;
  • rss:数据库进程所允许的最大resident set大小;
  • as:数据库进程所允许最大虚拟内存寻址空间限制;

[root@strong ~]# vim /etc/security/limits.d/90-nproc.conf

* soft nproc unlimited

参数说明:

  • 数据库所允许的最大线程数限制;

2.3.4 调整内核参数

[root@strong ~]# vim /etc/sysctl.conf

vm.swappiness = 0

vm.dirty_ratio = 100

vm.dirty_background_ratio = 40

vm.dirty_expire_centisecs = 3000

vm.vfs_cache_pressure = 200

vm.min_free_kbytes = 600000(物理内存的8%,单位为K,最大不超1GB)

vm.overcommit_memory = 2

vm.overcommit_ratio = 85

[root@strong ~]# sysctl -p

3 部署架构

部署完成后Sequoia DB巨杉数据库的集群拓扑结构为三分区单副本,其中包括:1个SequoiaSQL-MySQL数据库实例节点、1个引擎协调节点、1个编目节点和3个数据节点。

【SequoiaDB】3 巨杉数据库SequoiaDB命令行安装及部署_第1张图片

4 软件安装

4.1 准备安装软件

1)下载Sequoia DB安装软件

下载地址:SequoiaDB巨杉数据库

2)上传并解压缩安装软件

[root@sdbserver1 ~]# tar zxvf sequoiadb-3.4-linux_x86_64.tar.gz

sequoiadb-3.4/

sequoiadb-3.4/setup.sh

sequoiadb-3.4/unset.sh

sequoiadb-3.4/sequoiasql-mysql-3.4-linux_x86_64-installer.run

sequoiadb-3.4/readme.txt

sequoiadb-3.4/sequoiasql-postgresql-3.4-x86_64-installer.run

sequoiadb-3.4/sequoiadb-3.4-linux_x86_64-installer.run

[root@sdbserver1 ~]# cd sequoiadb-3.4

[root@sdbserver1 sequoiadb-3.4]# chmod u+x sequoia*

[root@sdbserver1 sequoiadb-3.4]# ll

total 853572

-rwxrwxrwx. 1 nobody nfsnobody 1104 Jul 27 2019 readme.txt

-rwxr--r--. 1 root root 756098844 Nov 15 00:19 sequoiadb-3.4-linux_x86_64-installer.run

-rwxr--r--. 1 root root 104758705 Nov 15 00:19 sequoiasql-mysql-3.4-linux_x86_64-installer.run

-rwxr--r--. 1 root root 13176565 Nov 15 00:20 sequoiasql-postgresql-3.4-x86_64-installer.run

-rwxrwxrwx. 1 nobody nfsnobody 3861 Jul 2 2019 setup.sh

-rwxrwxrwx. 1 nobody nfsnobody 5828 Jul 2 2019 unset.sh

4.2 安装Sequoia DB数据库

1)运行安装程序,选择语言为中文

[root@sdbserver1 sequoiadb-3.4]# ./setup.sh

Install sequoiadb Y/n: Y

--------------------------begin to install sequoiadb-------------------------

./sequoiadb-3.4-linux_x86_64-installer.run --mode text

Language Selection



Please select the installation language

[1] English - English

[2] Simplified Chinese - 简体中文

Please choose an option [1] : 2

2)许可协议,默认

Please choose an option [1] : 2

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

由BitRock InstallBuilder评估本所建立



欢迎来到 SequoiaDB Server 安装程序



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

重要信息:请仔细阅读



下面提供了两个许可协议。



1. SequoiaDB 评估程序的最终用户许可协议

2. SequoiaDB 最终用户许可协议



如果被许可方为了生产性使用目的(而不是为了评估、测试、试用“先试后买”或演示)获得本程序,单击下面的“接受”按钮即表示被许可方接受 SequoiaDB 最终用户许可协议,且不作任何修改。



如果被许可方为了评估、测试、试用“先试后买”或演示(统称为“评估”)目的获得本程序:单击下面的“接受”按钮即表示被许可方同时接受(i)SequoiaDB 评估程序的最终用户许可协议(“评估许可”),且不作任何修改;和(ii)SequoiaDB 最终用户程序许可协议(SELA),且不作任何修改。



在被许可方的评估期间将适用“评估许可”。



如果被许可方通过签署采购协议在评估之后选择保留本程序(或者获得附加的本程序副本供评估之后使用),SequoiaDB 评估程序的最终用户许可协议将自动适用。



“评估许可”和 SequoiaDB 最终用户许可协议不能同时有效;两者之间不能互相修改,并且彼此独立。



这两个许可协议中每个协议的完整文本如下。



评估程序的最终用户许可协议







[1] 同意以上协议: 了解更多的协议内容,可以在安装后查看协议文件

[2] 查看详细的协议内容

请选择一个选项 [1] :

3)输入安装路径后回车,后面的步骤选择默认选项

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

请指定 SequoiaDB Server 将会被安装到的目录



安装目录 [/opt/sequoiadb]:



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

是否强制安装?强制安装时可能会强杀残留进程



是否强制安装 [y/N]:





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

数据库管理用户配置



配置用于启动SequoiaDB的用户名、用户组和密码



用户名 [sdbadmin]:



用户组 [sdbadmin_group]:



密码 [********] :

确认密码 [********] :

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

集群管理服务端口配置



配置SequoiaDB集群管理服务端口,集群管理用于远程启动添加和启停数据库节点



集群管理服务端口 [11790]:



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

是否允许Sequoiadb相关进程开机自启动?



Sequoiadb相关进程开机自启动 [Y/n]:





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

是否安装OM服务



[1] true

[2] false

[3] only

请选择一个选项 [2] : 1



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

设定现在已经准备将 SequoiaDB Server 安装到您的电脑.



您确定要继续? [Y/n]:



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

正在安装 SequoiaDB Server 于您的电脑中,请稍候.



安装中

0% ______________ 50% ______________ 100%

########################################

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

安装程序已经完成安装 SequoiaDB Server 于你的电脑中.



----------------------------end install sequoiadb----------------------------

4)提示是否安装MySQL或PostgreSQL实例,默认安装MYSQL实例,选择中文

Install 1:sequoiasql-mysql or 2:sequoiasql-postgresql, [1]: --------------------------begin to install sequoiasql-mysql-------------------------

./sequoiasql-mysql-3.4-linux_x86_64-installer.run --mode text

Language Selection



Please select the installation language

[1] English - English

[2] Simplified Chinese - 简体中文

Please choose an option [1] : 2

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

由BitRock InstallBuilder评估本所建立



欢迎来到 SequoiaSQL MySQL Server 安装程序



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

GNU 通用公共授权

第二版, 1991年6月

著作权所有 (C) 1989,1991 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.

允许每个人复制和发布本授权文件的完整副本,但不允许对它进行任何修改。



[1] 同意以上协议: 了解更多的协议内容,可以在安装后查看协议文件

[2] 查看详细的协议内容

请选择一个选项 [1] :



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

请指定 SequoiaSQL MySQL Server 将会被安装到的目录



安装目录 [/opt/sequoiasql/mysql]:



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

数据库管理用户配置



配置用于启动SequoiaSQL-MySql的用户名、用户组和密码



用户名 [sdbadmin]:



用户组 [sdbadmin_group]:



密码 [********] :

确认密码 [********] :

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

设定现在已经准备将 SequoiaSQL MySQL Server 安装到您的电脑.



您确定要继续? [Y/n]:



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

正在安装 SequoiaSQL MySQL Server 于您的电脑中,请稍候.



安装中

0% ______________ 50% ______________ 100%

#########################################



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

安装程序已经完成安装 SequoiaSQL MySQL Server 于你的电脑中.



----------------------------end install sequoiasql-mysql----------------------------

4.3 安装后检查

[root@sdbserver1 sequoiadb-3.4]# service sequoiasql-mysql status

Status of service sequoiasql-mysql:

running. (PID: 3522)

[root@sdbserver1 sequoiadb-3.4]# su - sdbadmin

[sdbadmin@sdbserver1 ~]$ sequoiadb --version

SequoiaDB version: 3.4

Release: 32435

Git version: 485380326b0177244669df7906454a753a7fb900

2019-11-14-23.37.58

4.4 部署Sequoia DB及MySQL实例

部署SequoiaDB数据库到本机上,包含1个Sequoia SQL-MySQL数据库实例节点,1个协调节点、1个编目节点和3个数据节点。

4.4.1 集群部署

1)切换到Sequoia DB快速部署脚本所在目录

[sdbadmin@sdbserver1 ~]$ cd /opt/sequoiadb/tools/deploy/

[sdbadmin@sdbserver1 deploy]$ ll

total 60

-rw-rw-rw- 1 sdbadmin sdbadmin_group 248 Nov 15 00:02 mysql.conf

-rw-rw-rw- 1 sdbadmin sdbadmin_group 248 Nov 15 00:02 postgresql.conf

-rw-r--r-- 1 sdbadmin sdbadmin_group 41493 Nov 15 00:02 quickDeploy.js

-rwxr-xr-x 1 sdbadmin sdbadmin_group 3146 Nov 15 00:02 quickDeploy.sh

-rw-r--r-- 1 sdbadmin sdbadmin_group 478 Nov 15 00:02 sequoiadb.conf

2)查看快速部署脚本的Sequoia DB集群的配置信息

[sdbadmin@sdbserver1 deploy]$ cat sequoiadb.conf

role,groupName,hostName,serviceName,dbPath



catalog,SYSCatalogGroup,localhost,11800,[installPath]/database/catalog/11800



coord,SYSCoord,localhost,11810,[installPath]/database/coord/11810



data,group1,localhost,11820,[installPath]/database/data/11820

data,group2,localhost,11830,[installPath]/database/data/11830

data,group3,localhost,11840,[installPath]/database/data/11840



# Note: This configuration file only supports cluster mode, doesn't support standalone mode.

3)查看快速部署脚本的Sequoia SQL-MySQL配置信息

[sdbadmin@sdbserver1 deploy]$ cat mysql.conf

instanceName,port,databaseDir,coordAddr

myinst,3306,[installPath]/database/3306,-



# Note: coordAddr, '-' means the first coord in sdb.conf. You can configure it by format hostName1:serviceName1 or [hostname1:serviceName1,hostname2:serviceName2]

4)运行快速部署脚本,显示以下信息,Sequoia DB集群和SequoiaSQL-MySQL实例部署完成

[sdbadmin@sdbserver1 deploy]$ ./quickDeploy.sh --sdb --mysql

Execute command: /opt/sequoiadb/tools/deploy/./../../bin/sdb -f /opt/sequoiadb/tools/deploy/./quickDeploy.js -e 'var sdb=true;var mysql=true;'



************ Deploy SequoiaDB ************************

Create catalog: sdbserver1:11800

Create coord: sdbserver1:11810

Create data: sdbserver1:11820

Create data: sdbserver1:11830

Create data: sdbserver1:11840



************ Deploy SequoiaSQL-MySQL *****************

Create instance: [name: myinst, port: 3306]

4.4.2 验证部署

1)在MySQL实例中创建数据库和表,进行数据操作

[sdbadmin@sdbserver1 deploy]$ mysql -h127.0.0.1 -uroot

Welcome to the MySQL monitor. Commands end with ; or \g.

Your MySQL connection id is 2

Server version: 5.7.25 Source distribution



Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.



Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.



Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.



mysql> create database company;

Query OK, 1 row affected (0.00 sec)



mysql> use company;

Database changed

mysql> insert into employee (ename,age) values('Alen',28);

Query OK, 1 row affected (0.02 sec)



mysql> select * from employee;

+-------+-------+------+

| empno | ename | age |

+-------+-------+------+

| 1 | Alen | 28 |

+-------+-------+------+

1 row in set (0.00 sec)

2)在数据引擎层查询数据

[sdbadmin@sdbserver1 deploy]$ sdb

Welcome to SequoiaDB shell!

help() for help, Ctrl+c or quit to exit

> var db=new Sdb('localhost',11810)

Takes 0.005539s.

> db.company.employee.find()

{

"_id": {

"$oid": "5e7eb693f598f3daa0f79149"

},

"ename": "Alen",

"age": 28,

"empno": 1

}

Return 1 row(s).

Takes 0.012581s.

至此,Sequoia DB与Mysql实例安装、部署完毕;

 

你可能感兴趣的:(巨杉数据库)