大对象工具

sdblobtool 是 SequoiaDB 巨杉数据库的大对象管理工具,可以导出、导入和迁移大对象数据,应用于大对象在集合之间的迁移,运行日志保存在当前执行路径下的 sdblobtool.log 文件中。

参数说明

参数名缩写描述
—help-h显示帮助信息
—version-v显示版本号
—hostname协调节点地址,默认值为 localhost
—svcname协调节点服务名,默认值为 11810
—operation操作类型必填,取值如下:
export:将集合中的大对象导出至文件
import:将文件中的大对象导入至集合
migration:将集合中的大对象复制到其他集合
—collection集合全名
—file指定大对象文件的全路径,—operation 参数值为 export 或 import 该值有效
—dstcollection目标数据库的集合全名,—operation 参数值为 migration 该值有效
—dsthost目标数据库的协调节点地址,—operation 参数值为 migration 该值有效
—dstpasswd目标数据库的密码,—operation 参数值为 migration 该值有效
—dstservice目标数据库的密码,—operation 参数值为 migration 该值有效
—dstusrname目标数据库的用户名,—operation 参数值为 migration 该值有效
—ignorefe是否导入目标集合中已存在的大对象,—operation 参数值为 import 或 migration 该值有效,默认值为 false,不导入目标集合中已存在的大对象
—prefer优先选择的实例,—operation 参数值为 export 该值有效,默认值为 M;取值 m 或 M 指 master,s 或 S 表示 slave,a 或 A 表示 anyone,1~7 表示 node1~node7
—ssl是否使用 SSL 连接,默认值为 false,不使用 SSL 连接
—token加密口令
—usrname数据库用户名,数据库开启了鉴权,需指定该参数
—passwd数据库密码
—cipher是否使用密码文件的方式输入数据库密码,默认值为 false,不使用密码文件
—cipherfile密码文件,当参数 —cipher 指定为 true 时,如果不指定该参数,则取 ~/sequoiadb/passwd 文件为密码文件

示例

  • 将集合 sample.employee 中的大对象导出至 /opt/mylob 文件中

    1. $ ./sdblobtool --operation export --hostname localhost --svcname 11810 --collection sample.employee --file /opt/mylob
  • /opt/mylob 文件中的大对象导入到 sample.employee 集合中,当遇到集合已存在的大对象时直接跳过

    1. $ ./sdblobtool --operation import --hostname localhost --svcname 11810 --collection sample.employee --file /opt/mylob --ignorefe
  • 将 sdbserver1 的集合 sample.employee 中所储大对象复制到 sdbserver2 的集合 sample.employee 中

    1. $ ./sdblobtool --operation migration --hostname sdbserver1 --svcname 11810 --collection sample.employee --dsthost sdbserver2 --dstservice 11810 --dstcollection sample.employee