Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Problem - Max key length

[es] :: MySQL :: Problem - Max key length

[ Pregleda: 1693 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

zzlajoo
admin
Novi Sad

Član broj: 68522
Poruke: 26
79.101.46.*



Profil

icon Problem - Max key length05.12.2008. u 23:12 - pre 187 meseci
Pozdrav,

ljudi imam problem prilikom instalcija CMS na localhost.
Prijavljuje mi sledecu gresku


Warning: Specified key was too long. Max key length is 500 query: CREATE TABLE actions ( `aid` VARCHAR(255) NOT NULL DEFAULT '0', `type` VARCHAR(32) NOT NULL DEFAULT '', `callback` VARCHAR(255) NOT NULL DEFAULT '', `parameters` LONGTEXT NOT NULL, `description` VARCHAR(255) NOT NULL DEFAULT '0', PRIMARY KEY (aid) ) /*!40100 DEFAULT CHARACTER SET UTF8 *


Da li ja mogu da povecam Max key length i gde?
Pokusavao sam sve i svasta ali nisam uspeo.

Hvala veliko!!!
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.xdsl.beograd.com.

Sajt: mysql.rs


+2377 Profil

icon Re: Problem - Max key length06.12.2008. u 01:53 - pre 187 meseci
Code:

CREATE TABLE actions ( 
  `aid` VARCHAR(255) NOT NULL DEFAULT '0', 
  `type` VARCHAR(32) NOT NULL DEFAULT '', 
  `callback` VARCHAR(255) NOT NULL DEFAULT '', 
  `parameters` LONGTEXT NOT NULL, 
  `description` VARCHAR(255) NOT NULL DEFAULT '0', 
  
  PRIMARY KEY (aid) 
);


Jedini key koji ja ovde vidim je primarni kljuc po varchar(255) polju koje bi trebalo da je utf8 (dakle 765 bajtova).

MySQL 4.1.1 ima limit za max key length od 500 bajtova, 4.1.2 ima limit na 1000 bajtova.

Ne mozes da promenis taj limit. Sve sto mozes je

1. UPGRADE, UPGRADE, UPGRADE .. koristis MySQL star kao biblija, ako koristis 4.1.1 to je "najlosiji" 4.1, ako bas oces da ostanes na 4.1, skini poslednji 4.1.22 mnooooogo je hiljada puta bolji od 4.1.1 (i ima povecan limit za key na 1000 bajtova)

2. smanji velicinu aid polja na 500/3 = 166 (pitanje da li ce to ta aplikacija podneti kako treba)

3. nemoj da koristis UTF8 (pitanje da li ce to opet aplikacija podneti)

Necu da ulazim u to da li je u redu ili ne koristiti varchar kao primary key, da li je 1000 bajtova dovoljno ili ne za key size i slicno ... upgrade-uj taj mysql na 4.1.22 (ili jos bolje, na 5.1.30) i resi problem.

 
Odgovor na temu

zzlajoo
admin
Novi Sad

Član broj: 68522
Poruke: 26
79.101.46.*



Profil

icon Re: Problem - Max key length06.12.2008. u 08:11 - pre 187 meseci
Puno hvala za isrpan odgovor!!!

Ja imam instaliranu verziju 5.0.45 tj. 5.0.0 alpha.
Verovatno je ova moja neka "osakacena" verzija mysql :((

Onu gresku tj. upozorenje sto mi je javlja nije jedino jer ima nekoliko tabela za koje mi isto to javlja.
Znaci trebao bi smanjiti velicinu polja za svako polje gde mi prelazi max key lenght.

A sto se tice tipa i velicine polja i meni je malo cudno sto je tako. Ja sam samo skinuo instalaciju i pokrenuo je.

Jos jednom hvala!!!!!!!!!!!!!!
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.xdsl.beograd.com.

Sajt: mysql.rs


+2377 Profil

icon Re: Problem - Max key length06.12.2008. u 09:05 - pre 187 meseci
za 5.0.0 ne znam, mnoooogo je to davno bilo, ali 5.0.45 ima limit od 1000 bajtova za key, dakle tu bi eventualno mogao da vidis poruku "Specified key was too long. Max key length is 1000 query"

stavi 5.1.30 ... kad vec instaliras, instaliraj poslednji GA ..

inace, limit za velicinu kljuca je 500 na mnogo bajatim i 1000 bajtova na novijim verzijama mysql-a. racunaj da ti svaki UTF8 karakter pojede 3 bajta ... mislim da dalje znas ...
 
Odgovor na temu

[es] :: MySQL :: Problem - Max key length

[ Pregleda: 1693 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.