• 【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个数据节点。

    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实例安装、部署完毕;

  • 相关阅读:
    Anaconda+Vscode+opencv3环境打造
    关于AXI4-Stream Infrastucture IP的学习
    Xilinx的License问题
    IOBUF的使用
    Vscode的学习
    关于ZYNQ 7 processing system IP的设置导出与导入
    使用zynq verification IP进行系统验证
    使用AXI Verifcation IP进行系统验证
    MIG IP学习笔记
    Git的GUI工具sourcetree的使用
  • 原文地址:https://www.cnblogs.com/alen-liu-sz/p/12975568.html
Copyright © 2020-2023  润新知