# Delete all mappings

**URL:** <https://discuss.elastic.co/t/delete-all-mappings/57455>\
**Category:** Elasticsearch\
**Created:** [August 8, 2016, 8:44am UTC](https://discuss.elastic.co/t/delete-all-mappings/57455 "2016-08-08T08:44:10Z")\
**Posts on this page:** 12\
**Page:** 1

<div class="post-metadata">

**Author:** ![sunilmchaudhari](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/sunilmchaudhari/32/9475_2.png) [@sunilmchaudhari](https://discuss.elastic.co/u/sunilmchaudhari)\
**Post date:** [August 8, 2016, 8:44am UTC](https://discuss.elastic.co/t/delete-all-mappings/57455/1 "2016-08-08T08:44:10Z")

</div>

Hello,  
How can I delete all mapping with type name "accessLog" and "someField" has type "string" under that mapping in whole ES data?

br,  
Sunil

---

<div class="post-metadata">

**Author:** ![warkolm](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/warkolm/32/39224_2.png) [@warkolm](https://discuss.elastic.co/u/warkolm)\
**Post date:** [August 8, 2016, 8:45am UTC](https://discuss.elastic.co/t/delete-all-mappings/57455/2 "2016-08-08T08:45:56Z")

</div>

You cannot delete mappings without deleting the data as well.

---

<div class="post-metadata">

**Author:** ![sunilmchaudhari](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/sunilmchaudhari/32/9475_2.png) [@sunilmchaudhari](https://discuss.elastic.co/u/sunilmchaudhari)\
**Post date:** [August 8, 2016, 8:47am UTC](https://discuss.elastic.co/t/delete-all-mappings/57455/3 "2016-08-08T08:47:50Z")

</div>

Yes Mark, that is understood. its as good as dropping the table. RIght?

---

<div class="post-metadata">

**Author:** ![warkolm](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/warkolm/32/39224_2.png) [@warkolm](https://discuss.elastic.co/u/warkolm)\
**Post date:** [August 8, 2016, 8:48am UTC](https://discuss.elastic.co/t/delete-all-mappings/57455/4 "2016-08-08T08:48:14Z")

</div>

It removes the data, yes.

---

<div class="post-metadata">

**Author:** ![sunilmchaudhari](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/sunilmchaudhari/32/9475_2.png) [@sunilmchaudhari](https://discuss.elastic.co/u/sunilmchaudhari)\
**Post date:** [August 8, 2016, 8:49am UTC](https://discuss.elastic.co/t/delete-all-mappings/57455/5 "2016-08-08T08:49:38Z")

</div>

So, what approach or standard practice in such case?  
If do some change in field type under same mapping, it shows mapping conflicts.

---

<div class="post-metadata">

**Author:** ![warkolm](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/warkolm/32/39224_2.png) [@warkolm](https://discuss.elastic.co/u/warkolm)\
**Post date:** [August 8, 2016, 8:50am UTC](https://discuss.elastic.co/t/delete-all-mappings/57455/6 "2016-08-08T08:50:28Z")

</div>

You need to reindex.

---

<div class="post-metadata">

**Author:** ![sunilmchaudhari](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/sunilmchaudhari/32/9475_2.png) [@sunilmchaudhari](https://discuss.elastic.co/u/sunilmchaudhari)\
**Post date:** [August 8, 2016, 8:51am UTC](https://discuss.elastic.co/t/delete-all-mappings/57455/7 "2016-08-08T08:51:47Z")

</div>

OK, then, I can do it using Migration checker plugin.  
Thanks!

---

<div class="post-metadata">

**Author:** ![sunilmchaudhari](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/sunilmchaudhari/32/9475_2.png) [@sunilmchaudhari](https://discuss.elastic.co/u/sunilmchaudhari)\
**Post date:** [August 8, 2016, 8:53am UTC](https://discuss.elastic.co/t/delete-all-mappings/57455/8 "2016-08-08T08:53:42Z")

</div>

However,  
Any guide for writing query to delete such mappings in case I don't need data?

---

<div class="post-metadata">

**Author:** ![warkolm](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/warkolm/32/39224_2.png) [@warkolm](https://discuss.elastic.co/u/warkolm)\
**Post date:** [August 8, 2016, 9:03am UTC](https://discuss.elastic.co/t/delete-all-mappings/57455/9 "2016-08-08T09:03:51Z")

</div>

`curl -XDELETE host:9200/indexname` will do it.

---

<div class="post-metadata">

**Author:** ![sunilmchaudhari](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/sunilmchaudhari/32/9475_2.png) [@sunilmchaudhari](https://discuss.elastic.co/u/sunilmchaudhari)\
**Post date:** [August 8, 2016, 9:19am UTC](https://discuss.elastic.co/t/delete-all-mappings/57455/10 "2016-08-08T09:19:03Z")

</div>

Hi,  
But there are 'n' number of such indexes based on application name and date. e.g. appName-YYYY-MM-DD

I want to delete only those indexes, where there is mapping 'accessLog' and field 'responseTime' having field type 'string'.

br,  
Sunil

---

<div class="post-metadata">

**Author:** ![warkolm](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/warkolm/32/39224_2.png) [@warkolm](https://discuss.elastic.co/u/warkolm)\
**Post date:** [August 8, 2016, 8:44pm UTC](https://discuss.elastic.co/t/delete-all-mappings/57455/11 "2016-08-08T20:44:05Z")

</div>

You'll need to install [https://www.elastic.co/guide/en/elasticsearch/plugins/current/plugins-delete-by-query.html](https://www.elastic.co/guide/en/elasticsearch/plugins/current/plugins-delete-by-query.html) then

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [July 5, 2017, 10:29pm UTC](https://discuss.elastic.co/t/delete-all-mappings/57455/12 "2017-07-05T22:29:17Z")

</div>


