【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實例安裝、部署完畢;

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章