【SequoiaDB】5 巨杉數據庫SequoiaDB基本操作

Sequoia DB巨杉數據庫作爲分佈式數據庫,由數據庫存儲引擎與數據庫實例兩大模塊組成。前面介紹了Sequoia DB巨杉數據庫集羣的部署以及MySQL實例的安裝,下面將繼續就以下主題進行介紹。

1 安裝目錄詳解

1.1 SequoiaDB安裝目錄

SequoiaDB巨杉數據庫的默認安裝目錄爲/opt/sequoiadb/,安裝完成後可以看到目錄如下:

[sdbadmin@sdbserver1 ~]$ ll -tr /opt/sequoiadb/

total 5768

-rw-r--r-- 1 sdbadmin sdbadmin_group 583 Nov 15 00:02 version.conf

-rw-r--r-- 1 sdbadmin sdbadmin_group 7528 Nov 15 00:02 sequoiadb

-rwxr-xr-x 1 sdbadmin sdbadmin_group 255 Nov 15 00:02 preUninstall.sh

-rw-r--r-- 1 sdbadmin sdbadmin_group 549 Nov 15 00:02 om_ver.conf

-rwxr-xr-x 1 sdbadmin sdbadmin_group 5156 Nov 15 00:02 install_om.sh

-rwxr-xr-x 1 sdbadmin sdbadmin_group 7078 Nov 15 00:02 compatible.sh

drwxr-xr-x 10 sdbadmin sdbadmin_group 4096 Mar 28 10:06 samples

drwxr-xr-x 2 sdbadmin sdbadmin_group 4096 Mar 28 10:06 license

drwxr-xr-x 11 sdbadmin sdbadmin_group 4096 Mar 28 10:06 www

drwxr-xr-x 2 sdbadmin sdbadmin_group 4096 Mar 28 10:06 hadoop

drwxr-xr-x 7 sdbadmin sdbadmin_group 4096 Mar 28 10:06 web

drwxr-xr-x 8 sdbadmin sdbadmin_group 4096 Mar 28 10:06 tools

drwxr-xr-x 3 sdbadmin sdbadmin_group 4096 Mar 28 10:06 java

drwxr-xr-x 3 sdbadmin sdbadmin_group 4096 Mar 28 10:06 doc

drwxr-xr-x 2 sdbadmin sdbadmin_group 4096 Mar 28 10:06 spark

drwxr-xr-x 2 sdbadmin sdbadmin_group 4096 Mar 28 10:06 postgresql

drwxr-xr-x 2 sdbadmin sdbadmin_group 4096 Mar 28 10:06 python

drwxr-xr-x 2 sdbadmin sdbadmin_group 4096 Mar 28 10:06 CSharp

drwxr-xr-x 3 sdbadmin sdbadmin_group 4096 Mar 28 10:06 bin

drwxr-xr-x 3 sdbadmin sdbadmin_group 4096 Mar 28 10:06 include

drwxr-xr-x 3 sdbadmin sdbadmin_group 4096 Mar 28 10:06 lib

drwxr-xr-x 6 sdbadmin sdbadmin_group 4096 Mar 28 10:07 conf

drwxr-xr-x 3 sdbadmin sdbadmin_group 4096 Mar 28 10:07 plugins

-rw-r--r-- 1 root root 59923 Mar 28 10:07 uninstall.dat

-rwx------ 1 sdbadmin sdbadmin_group 5725350 Mar 28 10:07 uninstall

drwxr-xr-x 2 sdbadmin sdbadmin_group 4096 Mar 28 10:07 rollback

drwxr-xr-x 2 sdbadmin sdbadmin_group 4096 Mar 28 10:07 packet

drwxr-xr-x 6 sdbadmin sdbadmin_group 4096 Mar 28 10:24 database

說明:

  • uninstall:集羣卸載可執行文件;
  • bin:主要防止系統的必備可執行文件;
  • conf:配置文件目錄,主要包含數據庫節點的配置目錄、集羣管理服務進程sdbcm的配置文件和日誌目錄;
  • hadoop:與hadoop、hive對接的驅動連接器;
  • spark:與spark對接的驅動連接器;
  • java、CSharp、python:各自語言的驅動包;
  • samples:示例;
  • tools:存放各種工具;

1.2 SequoiaDB數據目錄

SequoiaDB巨杉數據庫的數據目錄時在部署節點時指定的,下面以數據節點目錄進行說明。

1)查找本機已部署數據節點;

[sdbadmin@sdbserver1 ~]$ sdblist -l -r data

Name SvcName Role PID GID NID PRY GroupName StartTime DBPath

sequoiadb 11820 data 2290 1000 1000 Y group1 2020-03-29-21.57.26 /opt/sequoiadb/database/data/11820/

sequoiadb 11830 data 2296 1001 1001 Y group2 2020-03-29-21.57.26 /opt/sequoiadb/database/data/11830/

sequoiadb 11840 data 2302 1002 1002 Y group3 2020-03-29-21.57.26 /opt/sequoiadb/database/data/11840/

Total: 3

2)進入其中一個數據節點並查看內容;

[sdbadmin@sdbserver1 ~]$ ll -tr /opt/sequoiadb/database/data/11820/

total 598292

drwxr-xr-x 2 sdbadmin sdbadmin_group 4096 Mar 28 10:24 tmp

drwxr-xr-x 2 sdbadmin sdbadmin_group 4096 Mar 28 10:24 diaglog

drwxr-xr-x 2 sdbadmin sdbadmin_group 4096 Mar 28 10:24 bakfile

drwxr-xr-x 2 sdbadmin sdbadmin_group 4096 Mar 28 10:24 archivelog

drwxr-xr-x 2 sdbadmin sdbadmin_group 4096 Mar 28 10:24 replicalog

-rw-r----- 1 sdbadmin sdbadmin_group 151060480 Mar 29 04:15 SYSSTAT.1.idx

-rw-r----- 1 sdbadmin sdbadmin_group 155254784 Mar 29 04:15 SYSSTAT.1.data

-rw-r----- 1 sdbadmin sdbadmin_group 151060480 Mar 29 04:15 company.1.idx

-rw-r----- 1 sdbadmin sdbadmin_group 155254784 Mar 29 04:15 company.1.data

說明:

  • replicalog:存放同步日誌;
  • diaglog:節點日誌記錄;
  • bakfile:默認的備份文件存放路徑;
  • archivelog:歸檔日誌目錄;

1.3 MySQL示例安裝目錄

SequoiaSQL-MySQL示例默認安裝目錄爲/opt/sequoiasql/mysql/,目錄內容爲:

[sdbadmin@sdbserver1 ~]$ ll /opt/sequoiasql/mysql/

total 5568

drwxr-xr-x 2 sdbadmin sdbadmin_group 4096 Mar 28 10:12 bin

-rw-r--r-- 1 sdbadmin sdbadmin_group 32 Mar 28 10:12 checksum.md5

-rwxr-xr-x 1 sdbadmin sdbadmin_group 3234 Nov 14 23:21 compatible.sh

drwxr-xr-x 6 sdbadmin sdbadmin_group 4096 Mar 28 10:24 conf

-rw-r--r-- 1 sdbadmin sdbadmin_group 17987 Dec 21 2018 COPYING

drwxr-xr-x 3 sdbadmin sdbadmin_group 4096 Mar 28 10:24 database

drwxr-xr-x 2 sdbadmin sdbadmin_group 4096 Mar 28 10:12 docs

drwxr-xr-x 3 sdbadmin sdbadmin_group 4096 Mar 28 10:12 include

drwxr-xr-x 4 sdbadmin sdbadmin_group 4096 Mar 28 10:12 lib

drwxr-xr-x 2 sdbadmin sdbadmin_group 4096 Mar 28 10:12 license

drwxr-xr-x 4 sdbadmin sdbadmin_group 4096 Mar 28 10:12 man

-rw-r--r-- 1 sdbadmin sdbadmin_group 22096 Mar 29 21:57 myinst.log

-rwxr-xr-x 1 sdbadmin sdbadmin_group 255 Nov 14 23:21 preUninstall.sh

-rw-r--r-- 1 sdbadmin sdbadmin_group 2478 Dec 21 2018 README

drwxr-xr-x 28 sdbadmin sdbadmin_group 4096 Mar 28 10:12 share

drwxr-xr-x 2 sdbadmin sdbadmin_group 4096 Mar 28 10:12 support-files

drwxr-xr-x 4 sdbadmin sdbadmin_group 4096 Mar 28 10:12 tools

-rwx------ 1 sdbadmin sdbadmin_group 5574262 Mar 28 10:12 uninstall

-rw-r--r-- 1 root root 14630 Mar 28 10:12 uninstall.dat

-rw-r--r-- 1 sdbadmin sdbadmin_group 3 Mar 28 10:12 version.info

2 命令行管理控制檯

2.1 查看巨杉數據庫版本

[sdbadmin@sdbserver1 ~]$ sequoiadb --version

SequoiaDB version: 3.4

Release: 32435

Git version: 485380326b0177244669df7906454a753a7fb900

2019-11-14-23.37.58

2.2 查看節點啓動列表

[sdbadmin@sdbserver1 ~]$ sdblist

sequoiadb(11800) (2287) C

sequoiadb(11820) (2290) D

sequoiadb(11810) (2293) S

sequoiadb(11830) (2296) D

sequoiadb(11840) (2302) D

Total: 5

C、S、D指節點的角色,分佈代表編目節點、協調節點和數據節點;

[sdbadmin@sdbserver1 ~]$ sdblist -l -m local

Name SvcName Role PID GID NID PRY GroupName StartTime DBPath

sequoiadb 11810 coord 5509 2 2 Y SYSCoord 2020-03-29-22.42.25 /opt/sequoiadb/database/coord/11810/

sequoiadb 11830 data 5513 1001 1001 Y group2 2020-03-29-22.42.25 /opt/sequoiadb/database/data/11830/

sequoiadb 11820 data 8275 1000 1000 Y group1 2020-03-29-22.44.11 /opt/sequoiadb/database/data/11820/

sequoiadb 11800 catalog 5519 1 1 Y SYSCatalogGroup 2020-03-29-22.42.25 /opt/sequoiadb/database/catalog/11800/

sequoiadb 11840 data 5523 1002 1002 Y group3 2020-03-29-22.42.25 /opt/sequoiadb/database/data/11840/

Total: 5

2.3 啓停資源管理節點

資源管理節點sdbcm(SequoiaDB Cluster Manager)是一個守護進程,它以服務的方式常駐系統後臺。SequoiaDB的所有集羣管理操作都必須有sdbcm的參與,目前每一臺物理機器上只能啓動一個sdbcm進程,負責執行遠程的集羣管理命令和監控本地的SequoiaDB數據庫。sdbcm主要有兩大功能:

  • 遠程啓動、關閉、創建和修改節點:通過SequoiaDB客戶端或驅動連接器連接數據庫時,可以執行啓動、關閉、創建和修改節點的操作,該操作向指定節點物理機器上的sdbcm發送遠程命令,並得到sdbcm的執行結果;
  • 本地監控:對於通過sdbcm啓動的節點,都會維護一張節點列表,其中保存了所有本地節點的服務名和啓動信息,如啓動時間、運行狀態等。如果某個節點是非正常終止的,如進程被強制終止,引擎易場推出等,sdbcm會嘗試重啓該節點。

1)停止sdbcm;

[sdbadmin@sdbserver1 ~]$ sdbcmtop

Terminating process 29893: sdbcm(11790)

DONE

Successful to stop sdbcm

2)啓動sdbcm;

[sdbadmin@sdbserver1 ~]$ sdbcmart

Success: sdbcmd is successfully started (30778)

Success: sdbcm(11790) is successfully started (30780)

3 啓停集羣和節點

sdbcm服務啓動後會自動啓動該物理機中所有註冊在 /opt/sequoiadb/conf/local/目錄下的節點,使用命令ps -elf|grep sequoiadb或sdblist -t all能看到當前正在啓動的節點與啓動完畢的節點。

3.1 停止集羣

[sdbadmin@sdbserver1 ~]$ sdbstop --all

Terminating process 26986: sdbom(11780)

DONE

Terminating process 26989: sequoiadb(11800)

DONE

Terminating process 26992: sequoiadb(11810)

DONE

Terminating process 26995: sequoiadb(11820)

DONE

Terminating process 26998: sequoiadb(11830)

DONE

Terminating process 27001: sequoiadb(11840)

DONE

Total: 6; Success: 6; Failed: 0

3.2 啓動集羣

[sdbadmin@sdbserver1 ~]$ sdbstart -t all

Success: sequoiadb(11810) is successfully started (5509)

Success: sequoiadb(11830) is successfully started (5513)

Success: sequoiadb(11820) is successfully started (5516)

Success: sequoiadb(11800) is successfully started (5519)

Success: sequoiadb(11840) is successfully started (5523)

Success: sdbom(11780) is successfully started (5527)

Total: 6; Succeed: 6; Failed: 0

3.3 停止節點

[sdbadmin@sdbserver1 ~]$ sdbstop -p 11820

Terminating process 5516: sequoiadb(11820)

DONE

Total: 1; Success: 1; Failed: 0

3.4 啓動節點

[sdbadmin@sdbserver1 ~]$ sdbstart -p 11820

Success: sequoiadb(11820) is successfully started (8275)

Total: 1; Succeed: 1; Failed: 0

4 SequoiaDB Shell啓停數據組

除了在Linux命令行中進行節點管理,SequoiaDB Shell交互界面同樣支持管理節點。

1)進入SequoiaDB Shell交互界面;

[sdbadmin@sdbserver1 ~]$ sdb

Welcome to SequoiaDB shell!

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

>

2)使用JavaScript連接協調節點,並獲取數據庫連接;

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

Takes 0.006333s.

3)停止數據組;

> db.stopRG('group1','group2')

Takes 11.051532s.

4)啓動數據組;

> db.startRG('group1','group2')

Takes 4.051254s.

 

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