Mysql optimizacija baze

Pozdrav!

Dali mi neko može reći gdje ovdje trebam u ovoj tablici staviti stupac u index i kako, i zašto se mora stavljati u index?

CREATE TABLE `korisnici` (
  `id_korisnika` int(11) NOT NULL AUTO_INCREMENT,
  `korisnicko_ime` varchar(15) NOT NULL,
  `lozinka` varchar(32) NOT NULL,
  `e_mail` varchar(100) NOT NULL,
  `e_mail_sakrij` tinyint(1) NOT NULL default '0',
  `status` enum('','m','a') NOT NULL default '',
  `datum_registracije` datetime NOT NULL,
  `datum_zadnje_posjete` datetime NOT NULL,
  `ip_adresa` tinytext NOT NULL,
  `aktivacija` varchar(32) NOT NULL,
  `spol` enum('m','z') NOT NULL,
  `banovan` tinyint(1) NOT NULL default '0',
  PRIMARY KEY (`id_korisnika`),
  UNIQUE KEY (`korisnicko_ime`),
  UNIQUE KEY (`e_mail`)
) CHARSET=utf8;

HVALA NA POMOĆI!

1.moraš imati jedan primarni ključ
2.idex stavljaš na ono polje po kojem misliš pretraživati tablicu

možeš imati više indexa, kod kompozitnih indexa, mysql uvijek gleda s lijeva na desno po kolonama.

što više indexa imaš, to ti je imsert sporiji, pa ako imaš x konkuretnih usera koji nešto upisuju bit će sporije, nego da nemaš index.

zato kreirati one indexe koji su stvarno potrebni.

primarčni ključ stavljaš na id,
a UNIQUE KEY na korisničko ime.


Copyright © 2020 WM Forum - AboutContact - Sponsored by: Mydataknox & Webmaster.Ninja