/*
以下是初始化数据
curl -XPUT 127.0.0.1:9200/library
curl -XPUT 127.0.0.1:9200/library -d '{"settings":{"number_of_shards":5,"number_of_replicas":1},"mappings":{"books":{"dynamic":false,"properties":{"title":{"type":"keyword"},"name":{"type":"keyword"},"publish_date":{"type":"date","format":"dateOptionalTime||epoch_millis"},"price":{"type":"double"}}}}}'
插入数据(指定_id)
curl -XPUT 127.0.0.1:9200/library/books/1 -d '{"title": "计算机", "name":"计算机基础", "publish_date":1592463877763, "price": 32.5}'
插入数据(不指定_id)
curl -XPOST 127.0.0.1:9200/library/books -d '{"title": "计算机", "name":"深入理解计算机系统", "publish_date":1592463877900, "price": 64}'
数据检索
curl 127.0.0.1:9200/library/_search?pretty -d '{"query":{"term":{"name":"计算机基础"}}}'
curl 127.0.0.1:9200/library/_search?pretty -d '{"query":{"term":{"publisher":"机械工程出版社"}}}'
curl -H "C1ontent-Type: application/json" 127.0.0.1:9200/library/_search?pretty -d '{"query":{"term":{"name":"计算机基础"}}}'
索引新增字段
curl -XPUT 127.0.0.1:9200/library/books/_mapping -d '{"properties": {"publisher": {"type": "keyword"}}}'
索引开启与关闭
curl -XPOST 127.0.0.1:9200/library/_close
curl -XPOST 127.0.0.1:9200/library/_open
删除数据
curl -XPOST 127.0.0.1:9200/library/_delete_by_query -d '{"query":{"term":{"name":"计算机基础"}}}'
curl -XDELETE 127.0.0.1:9200/library
以上是初始化数据
*/
数据导入导出案例
1、服务器A上查看都有哪些索引
curl -X GET http://localhost:9200/_cat/indices ,例如
green open .kibana_1 RARauX_bQEmT6x1Unbmp1A 1 0 4 0 14.4kb 14.4kb
yellow open user EJz5yE0ZTJiTPzyJhD8uwQ 5 1 0 0 1.2kb 1.2kb
yellow open library 2aD5HPxJTa6jcVizk5Atiw 5 1 2 0 8.7kb 8.7kb
green open .kibana_task_manager 9TpBvTupQKSaTjrX9TN6nA 1 0 2 0 12.5kb 12.5kb
说明有ES库中有4个索引对象
安装elasticdump环境
//*****
离线安装elasticdump
第一步下载node安装包
wget https://nodejs.org/dist/v16.14.0/node-v16.14.0-linux-x64.tar.xz
第二步 在一台外网服务器安装node
解压:tar xvf node-v16.14.0-linux-x64.tar.xz
建立软链接
ln -s ~/node-v16.14.0-linux-x64/bin/node /usr/bin/node
ln -s ~/node-v16.14.0-linux-x64/bin/npm /usr/bin/npm
确认安装成功
node -v
npm -v
第三步安装npm-pack-all
npm install -g npm-pack-all
第四步安装elasticdump
npm install elasticdump -g
第五步 打包elasticdump
进入到elasticdump安装目录 cd node-v16.3.0-linux-x64/lib/node_modules/elasticdump/
执行 npm-pack-all
当前目录生成 elasticdump-6.82.0.tgz
第六步 将node安装包和 elasticdump安装报复制到离线安装的服务器
node-v16.14.0-linux-x64.tar.xz
elasticdump-6.82.0.tgz
第七步 按照第二步安装node 和npm
第八步 安装elasticdump
npm install elasticdump-6.82.0.tgz
第九步建立软连接
ls ~/node_modules/elasticdump/bin/elasticdump /usr/bin/elasticdump
第十步确认安装成功
elasticdump --help
*****//
2、服务器A上依次导出3个索引对象(mapping和data)
#导出1个索引
elasticdump --input=http://localhost:9200/library --output=/root/librarym.json --type=mapping
elasticdump --input=http://localhost:9200/library --output=/root/libraryd.json --type=data
3、将服务器A的导出文件(json) 传到服务器B上
scp librarydm.json serverB:/root/
scp libraryd.json serverB:/root/
删除服务器B上的索引
curl -X DELETE http://localhost:9200/libraryd
#导入索引
elasticdump --input=/root/dataes/librarym.json --output http://127.0.0.1:9200/library --type=mapping文章来源:https://www.toymoban.com/news/detail-476126.html
elasticdump --input=/root/dataes/libraryd.json --output=http://127.0.0.1:9200/library --type=data文章来源地址https://www.toymoban.com/news/detail-476126.html
到了这里,关于es 索引导出导入的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!