Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Bisakah pembuatan indeks menggunakan indeks yang ada?

MySQL biasanya membangun kembali seluruh tabel saat Anda menambahkan indeks, jadi semua yang sudah ada juga akan dibangun kembali. Ini bisa lambat.

Satu-satunya pengecualian adalah menambahkan indeks menggunakan plugin InnoDB, yang tidak.

Sejauh yang saya tahu, itu selalu melakukan pemindaian tabel penuh saat membuat indeks, namun BISA melakukan pemindaian indeks jika Anda menambahkan indeks yang memiliki kolom yang sama (atau subset) dengan indeks lain. Indeks tersebut biasanya hanya berguna jika kolom berada dalam urutan yang berbeda.

Menggunakan stock mysql, semakin banyak indeks yang Anda miliki, semakin lambat untuk membuat yang baru, karena juga membangun kembali indeks yang ada.

Dengan plugin, saya rasa tidak ada bedanya.

Bagaimanapun, jika Anda berencana untuk menambahkan beberapa indeks, Anda harus melakukannya sekaligus, bukan satu per satu.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Plugin '0' tidak dimuat

  2. Mempartisi tabel mySQL yang memiliki kunci asing?

  3. mysql:pilih max(score) tidak mengembalikan data baris yang relevan

  4. Masukkan catatan ke dalam tabel dengan posisi tanpa memperbarui semua bidang posisi catatan

  5. Perlu memperbarui basis data aplikasi pengguna tunggal saya untuk memungkinkan banyak pengguna, bagaimana cara mengubah skema basis data?