ES 常用命令
ES 常用命令
查看版本
curl -XGET 'localhost:9200'
{ "name" : "5koA13t", "cluster_name" : "elasticsearch", "cluster_uuid" : "kQhdXKz4S_6iWNZy7NITuw", "version" : { "number" : "5.4.2", "build_hash" : "929b078", "build_date" : "2017-06-15T02:29:28.122Z", "build_snapshot" : false, "lucene_version" : "6.5.1" }, "tagline" : "You Know, for Search" }
查看索引状态
curl -XGET 'localhost:9200/_cat/indices?v&pretty'
查看mapping
curl -XGET 'localhost:9200/logstash-event-login/_mapping/?pretty'
删除index
curl -XDELETE 'localhost:9200/logstash-event-login?pretty'
备份和恢复
使用 es 提供的 snapshot 功能
首先需要编辑config/elasticsearch.yml
文件增加备份存储库的位置。比如path.repo: /tmp
建立repo
curl -XPUT 'http://localhost:9200/_snapshot/my_repository' -d ' { "type": "fs", "settings": { "location": "/tmp/my_repository", "compress": true } }'
返回
{"acknowledged":true}
创建 snapshot
curl -XPUT "http://localhost:9200/_snapshot/my_repository/snap_1?wait_for_completion=true" -d ' { "indices": "logstash-event-login,logstash-event-view", "ignore_unavailable": "true", "include_global_state": false }'
wait_for_completion
参数表示会等到snapshot完成才返回,不加这个参数也可以通过其他接口获取到快照的进度
curl -XGET "http://localhost:9200/_snapshot/my_repository/snap_1/_status?pretty"
查看 snapshot
curl -XGET 'http://localhost:9200/_snapshot/my_repository/snap_1?pretty'
返回结果
{ "snapshots" : [ { "snapshot" : "snap_1", "uuid" : "1PXR1UNeSCK_BlfK_ZMyTg", "version_id" : 5040299, "version" : "5.4.2", "indices" : [ "logstash-event-login", "logstash-event-view" ], "state" : "SUCCESS", "start_time" : "2017-07-11T08:18:26.567Z", "start_time_in_millis" : 1499761106567, "end_time" : "2017-07-11T08:18:28.660Z", "end_time_in_millis" : 1499761108660, "duration_in_millis" : 2093, "failures" : [ ], "shards" : { "total" : 10, "failed" : 0, "successful" : 10 } } ] }
删除快照
curl -XDELETE 'http://localhost:9200/_snapshot/my_repository/snap_1'
查看所有快照
curl -XGET 'http://localhost:9200/_snapshot/my_repository/_all?pretty'
恢复 snapshot
curl -XPOST "http://localhost:9200/_snapshot/my_repository/snap_1/_restore?wait_for_completion=true&pretty" -d ' { "indices": "logstash-event-login", "ignore_unavailable": "true", "include_global_state": false, "rename_pattern": "logstash-event-login", "rename_replacement": "restore_logstash-event-login" }'
参数 rename_pattern
和 rename_replacement
用来正则匹配要恢复的索引,并且重命名。下面的例子:test-index => copy_index, test_2 => coyp_2
curl -XPOST "http://localhost:9200/_snapshot/my_repository/snap_1/_restore?wait_for_completion=true&pretty" -d ' { "indices": "test-index,test-2", "ignore_unavailable": "true", "include_global_state": false, "rename_pattern": "test-(.+)", "rename_replacement": "copy_$1" }'
使用 elasticdump
安装
npm install elasticdump -g
elasticdump 的 input 和 output 都可以指定为 elasticsearch 和文件
# 导出数据 elasticdump --input=http://localhost:9200/logstash-event-login --output=data.json --type=data # 导出mapping elasticdump --input=http://localhost:9200/logstash-event-login --output=mapping.json --type=mapping # 导入mapping elasticdump --input=mapping.json --output=http://localhost:9200/elasticdump-event-login --type=mapping # 导入数据 elasticdump --input=data.json --output=http://localhost:9200/elasticdump-event-login --type=data
参考资料
相关推荐
阳光岛主 2020-06-01
阿债的方寸天地 2020-04-29
liwf 2020-11-10
sjun0 2020-11-12
做对一件事很重要 2020-09-07
BraveWangDev 2020-08-19
songshijiazuaa 2020-08-15
FanErZong 2020-07-18
大慧 2020-07-04
houjinkai 2020-06-18
LUOPING0 2020-06-16
Carlos 2020-06-16
85427617 2020-06-13
心丨悦 2020-06-13
guicaizhou 2020-06-12
wenjieyatou 2020-06-08
stoneechogx 2020-06-04