sql >> Databasteknik >  >> RDS >> Mysql

Kan kardinalitet skilja sig åt för dubbletter av index i mysql?

Kardinalitet i mysql är en uppskattning , och mysql baserar sin uppskattning på tabellanvändningsstatistik:

Du kan läsa mer om statistiken som samlas in för myisam och innodb tabellmotorer i mysqls och innodbs dokumentation och hur du konfigurerar dessa:

All statistik lagras i STATISTIK-tabellen inom informationsschema.

Indexen, de uppskattade kardinaliteterna är närmare deras exakta kardinalitet (antal distinkta värden inom fältet) skapades för längre tid sedan, därför samlade mysql in mer statistik för dem och dess uppskattning är mer exakt. Om du kör analyse table på just denna tabell kommer troligen kardinaliteterna för de duplicerade indexen att ligga mycket närmare varandra än nu.

Den stora frågan är, varför har du dubbletter av index överhuvudtaget?




  1. Installera mysql-adapter 'gem install activerecord-mysql-adapter'

  2. SSIS-paketet vill inte hämta metadata för temporär tabell

  3. MySQL ger fluktuerande radantal när jag frågar schema?

  4. mysql kommandoraden returnerar körningstid?