SequoiaDB替换MongoDB文档
一、环境检查
最小安装需求
| 验证项目 | CPU | 内存 | 磁盘 | 备注 |
|---|---|---|---|---|
| 功能兼容性验证 | 4C | 8G | - | |
| 性能验证 | 8C | 16G | SSD | 内存磁盘比不超过 1:6 |
CPU 指令集要求
在 x86 架构 CPU 中,需要支持 avx2 指令集,可以通过命令检测:
cat /proc/cpuinfo | grep -i avx2
国产 CPU 支持
- 鲲鹏 920
- 海光 7285
注意: 飞腾系列芯片中,不支持 FT-2000 及早期型号。其它飞腾型号目前未经验证。
操作系统
- 麒麟 V10
- UOS 20
- openEuler 22.03 LTS SP3
- RHEL / CentOS 8, and 9 (7 需要手工升级 openssl 到 1.1.1f 及以上版本) • SLES 12 and 15
- Ubuntu LTS 18.04, 20.04, and 22.04(支持wsl2)
二、下载数据库
打开巨杉数据库的官网(https://download.sequoiadb.com/cn/)进行下载。
注:下载需要填写你的公司资料来申请授权

三、安装数据库
软件包安装
以下使用 sequoiadb-dds-3.4.14-linux_x86_64-poc-installer.run 作为安装包名示例 安装用户必须为 root
- 授予安装包权限
chmod u+x sequoiadb-dds-3.4.14-linux_x86_64-poc-installer.run
- 进行安装
按照提示执行对应操作,所有配置项使用默认值
./sequoiadb-dds-3.4.14-linux_x86_64-poc-installer.run
- 在"产品激活"中,输入事先申请的密钥

- 创建数据目录及赋给 sdbadmin:sdbadmin_group 用户
数据目录以"/data/db"为例,用户可以根据实际情况进行修改。若使用其它路径,注意启动节点时需要修改 dbpath 参数
mkdir /data/db
chown sdbadmin:sdbadmin_group /data/db
- 切换到 sequoiadb-dds 安装用户
su - sdbadmi
- 部署节点
该模式启动节点,默认不开启鉴权功能
a. 以独立模式启动节点
sdb_dds_ctl initdb --dbpath /data/db --port 27017 --bindip=0.0.0.0
sdb_dds_ctl start --port 27017
b. 以副本集模式启动节点(示例中假设节点部署服务器 IP 为 192.168.18.34)
#创建节点
sdb_dds_ctl initdb --replname=rs0 --port=17000 --dbpath=/data/17000
sdb_dds_ctl initdb --replname=rs0 --port=18000 --dbpath=/data/18000
sdb_dds_ctl initdb --replname=rs0 --port=19000 --dbpath=/data/19000
#启动节点
sdb_dds_ctl start --all
#登陆节点对副本集进行初始化
rs.initiate({_id:"rs0",members:[{_id:0,host:"192.168.18.34:17000"},{_id:1,host:"192.168.18.34:18000"},{_id:2,host:"192.168.18.34:19000"}]})
- 查看数据库状态, status 为 running 则启动正常
sdb_dds_ctl list
更多 sdb_dds_ctl 参数详见--help
- 关闭或更新所在机器的防火墙等安全策略
四、迁移数据
使用 Navicat 迁移
使用 Navicat 可以直接通过 MongoDB 协议连接巨杉数据库,参考如下:

新安装的服务器一般是没有数据库的,可以右键新建一个

然后打开 Navicat 的数据传输功能

选择原来的MongoDB数据库和目标的巨杉数据库

点击下一步后,选择运行期间的全部集合(或自定义)

点击 下一步 后,确认没问题即可点击开始 按钮

一段时间后,即可传输成功

使用 mongodump 迁移
-
使用 mongodump 将数据从原 MongoDB 导出数据
-
切换到 dds 安装用户,默认为 sdbadmin
su - sdbadmin
- 通过 mongorestore 导入数据
更多参数详见 mongorestore --help
mongorestore /data/db-data/output-db-data
五、驱动兼容说明
-
sequoiadb-dds 兼容 MongoDB 6.0 协议。可使用官方驱动直接访问数据库。
-
若驱动版本低于推荐版本,可能导致部分功能不可用。建议以实际的应用测试结果进行评估。目前生产中确实存在驱动版本低于推荐版本的案例。
GO
Go Version: 1.10+
Go Driver Version: 1.10+
Java
Jdk Version: jdk8+
Java Driver Version: 4.7+
C#
.NET Core: 2.0+ / .NET: 4.7+
C# Driver Version: 2.16+
Node.js
Node.js: v1.2+
Node.js Driver