首先,我们需要使用联网的linux服务器;
然后,安装node.js;
#如果无法下载,则手动去网站下载
cd /usr/local
#下载
wget https://nodejs.org/dist/v10.13.0/node-v10.13.0-linux-x64.tar.gz
#解压
tar xf node-v10.13.0-linux-x64.tar.gz
#设置软连接
ln -s /usr/local/node-v10.13.0-linux-x64/bin/npm /usr/bin/npm
ln -s /usr/local/node-v10.13.0-linux-x64/bin/node /usr/bin/node
#查看版本号
node -v
npm -v
安装elasticdump
npm install elasticdump -g
安装结果
npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
npm WARN deprecated querystring@0.2.0: The querystring API is considered Legacy. new code should use the URLSearchParams API instead.
npm WARN deprecated uuid@3.3.2: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.
npm WARN deprecated har-validator@5.1.5: this library is no longer supported
npm WARN deprecated s3signed@0.1.0: This module is no longer maintained. It is provided as is.
/usr/local/node-v10.13.0-linux-x64/bin/elasticdump -> /usr/local/node-v10.13.0-linux-x64/lib/node_modules/elasticdump/bin/elasticdump
/usr/local/node-v10.13.0-linux-x64/bin/multielasticdump -> /usr/local/node-v10.13.0-linux-x64/lib/node_modules/elasticdump/bin/multielasticdump
> aws-sdk@2.920.0 postinstall /usr/local/node-v10.13.0-linux-x64/lib/node_modules/elasticdump/node_modules/aws-sdk
> node scripts/check-node-version.js
+ elasticdump@6.73.0
added 112 packages from 198 contributors in 27.157s
进入目录
cd /usr/local/node-v10.13.0-linux-x64/lib/node_modules/elasticdump/bin
导出数据命令
./elasticdump --limit 10000 --input=http://192.168.1.171:9205/t_ent_tw_setting/t_ent_tw_setting --output=/usr/local/t_ent_tw_setting.json --type=data --size=1000000
导出索引结构命令
./elasticdump --input=http://192.168.1.162:9200/t_fb_setting_20200602/t_fb_setting --output=/usr/local/my_index_mapping.json --type=mapping
导入
#因为导入的是mapping,所以设置type为mapping
$ elasticdump --input ./test_index_mapping.json --output http://192.168.56.105:9200/indexName --type=mapping
#因为导入的是data(真实数据)所以设置type为data
$ elasticdump --input ./test_index.json --output http://192.168.56.105:9200/indexName --type=data