elasticdump安装_使用elasticdump做数据迁移

es版本

[[email protected] bin]# ./elasticdump --help

elasticdump: Import and export tools for elasticsearch

version: 4.6.0

1.elasticdump

安装

su - root

cd /opt

yum install epel-release

yum install nodejs

yum install npm

npm install elasticdump

cd node_modules/elasticdump/bin  后便可以执行操作。

#拷贝analyzer如分词

./elasticdump \

--input=http://192.168.1.85:9200/db_customer \

--output=http://192.168.1.118:9200/db_customer \

--type=analyzer

#拷贝映射

./elasticdump \

--input=http://192.168.1.85:9200/db_customer \

--output=http://192.168.1.118:9200/db_customer \

--type=mapping

#拷贝数据

./elasticdump \

--input=http://192.168.1.85:9200/db_customer \

--output=http://192.168.1.118:9200/db_customer \

--type=data

------------------------原封不动的迁移----------------------------------------------

#拷贝分词

./elasticdump --input=http://192.168.1.136:19200/hxl_test --output=http://192.168.1.136:19200/bak01_hxl_test --type=analyzer

#拷贝映射

./elasticdump --input=http://192.168.1.136:19200/hxl_test  --output=http://192.168.1.136:19200/bak01_hxl_test --type=mapping

#拷贝数据

./elasticdump --input=http://192.168.1.136:19200/hxl_test --output=http://192.168.1.136:19200/bak01_hxl_test --type=data

----------------------------提前创建索引后,只迁移数据------------------------

1.提前创建索引,结构可以跟源库的有一定的差异

比如在原来索引的基础上添加了"type": "nested"

2.同步数据

/opt/node_modules/elasticdump/bin/elasticdump --input=http://192.168.1.136:19200/inoculate --output=http://192.168.1.136:19200/inoculate_new --type=data

?

?遇到的错误:

?/opt/node_modules/elasticdump/lib/processor.js:40

async _loop (limit, offset, totalWrites) {

^^^^^

SyntaxError: Unexpected identifier

at createScript (vm.js:56:10)

at Object.runInThisContext (vm.js:97:10)

at Module._compile (module.js:549:28)

at Object.Module._extensions..js (module.js:586:10)

at Module.load (module.js:494:32)

at tryModuleLoad (module.js:453:12)

at Function.Module._load (module.js:445:3)

at Module.require (module.js:504:17)

at require (internal/module.js:20:19)

at Object. (/opt/node_modules/elasticdump/elasticdump.js:3:28)

[[email protected] bin]# npm install -g n

/usr/bin/n -> /usr/lib/node_modules/n/bin/n

/usr/lib

[[email protected] bin]# /opt/node_modules/elasticdump/bin/elasticdump --input=http://172.17.10.20:19200/child_inocexamine_student --output=http://172.17.10.61:29200/child_inocexamine_student --type=analyzer

/opt/node_modules/elasticdump/lib/processor.js:40

async _loop (limit, offset, totalWrites) {

^^^^^

SyntaxError: Unexpected identifier

at createScript (vm.js:56:10)

at Object.runInThisContext (vm.js:97:10)

at Module._compile (module.js:549:28)

at Object.Module._extensions..js (module.js:586:10)

at Module.load (module.js:494:32)

at tryModuleLoad (module.js:453:12)

at Function.Module._load (module.js:445:3)

at Module.require (module.js:504:17)

at require (internal/module.js:20:19)

at Object. (/opt/node_modules/elasticdump/elasticdump.js:3:28)

解决办法:

#升级nodejs

[[email protected] ~]# npm install -g n

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值