Membuat indeks di MongoDB adalah operasi idempoten. Jadi jalankan db.names.createIndex({name:1})
akan membuat indeks hanya jika belum ada.
Alias yang tidak digunakan lagi (pada MongoDB 3.0) untuk createIndex() adalah memastikanIndex() yang sedikit lebih jelas tentang apa createIndex()
sebenarnya.
Sunting: Terima kasih kepada ZitRo karena telah mengklarifikasi dalam komentar bahwa memanggil createIndex()
dengan nama yang sama tetapi opsi yang berbeda dari indeks yang ada akan menimbulkan kesalahan MongoError: Index with name: **indexName** already exists with different options
seperti yang dijelaskan dalam pertanyaan ini.
Jika Anda memiliki alasan lain untuk memeriksa, maka Anda dapat mengakses data indeks saat ini dengan salah satu dari dua cara:
- Mulai v3.0, kita dapat menggunakan
db.names.getIndexes()
di mananames
adalah nama koleksi. Dokumen di sini. - Sebelum v3.0, Anda dapat mengakses
system.indexes
koleksi dan lakukanfind
seperti yang dijelaskan bri di bawah ini.