1.查看指定索引(intpolicy)内容
GET /intpolicy/_search
2.查看指定索引下mappings的数据结构
GET intpolicy/_mappings?include_type_name=false
(nclude_type_name=false)这个字段在es7中将会弃用
3.在现有的mappings下添加字段(如果与canal服务以前使用可以实现es与mysql数据库实时同步,即新加的字段的值可以感知数据库对应字段的内容变动)
PUT intpolicy/_mappings?include_type_name=false
{
"properties": {
"rmkCmd": {
"type": "text"
}
}
}
4.通过指定的字段来查询索引下的数据结构
GET /intpolicy/_search
{
"query": {
"match": {
"ori_id":108
}
}
}
5.通过多个字段查询索引下的数据
GET /intpolicy/_search
{
"query": {
"bool": {
"should": [
{ "match": {"ori_id": 108 }},
{ "match": { "rmkCmd":"2"}}
]
}
}
}
6.查看指定mapping字段的类型
GET intpolicy/_mapping/field/userTag
7.创建索引库,如有需求可以拷贝旧的索引库 (setting/mapping...)
PUT testFlightInter?include_type_name=false
{
"settings" : {
"number_of_shards" : 3,
"number_of_replicas" : 2,
"analysis": {
"analyzer": {
"numanalyzer" : {
"type" : "pattern",
"pattern" : "|"
}
}
}
},
"mappings": {
"properties" : {
"ticketCarrier" : {
"type": "text"
},
"dep" : {
"type": "text"
}
}
}
8.旧的索引库到新的索引库的数据迁移(重点:新的索引库要与旧的索引库类型保持一致,即 mapping、setting那些。。)
POST _reindex
{
"source": {
"index": "intpolicy"
},
"dest": {
"index": "testflightinternal"
}
}
9.给索引库设置别名
PUT /testflightinternal/_alias/testalias
10.多个索引库别名动态切换。好处是:java客户端调用索引库查询无感知
(脚本是顺序执行的,也就是说旧的索引别名先删除,新的索引库再新增别名)
POST /_aliases
{
"actions": [
{ "remove": { "index": "testflightinternal2", "alias": "testalias" }},
{ "add": { "index": "testflightinternal", "alias": "testalias" }}
]
}
11.查看指定索引的别名
GET /testflightinternal2/_alias/*
12.查看指定索引的settings
GET /intpolicy_vesion2/_settings?pretty
13.查看es上所有的索引参数
GET _cat/indices?v