Key too long

Hier können Probleme und alles andere in Deutscher Sprache gelöst werden.
Post Reply
Jav
Posts: 2
Joined: Sat Sep 19, 2009 5:41 pm

Key too long

Post by Jav »

Hi
ich habe mich bemüht, bin aber als 60 jähriger Neueinsteiger nicht schlau genug geworden:
Beim Versuch, einen Dump vom Host auf meine xampp installation zu kopieren erscheint beim Import des Dumps die berüchtigte Meldung.
CREATE TABLE IF NOT EXISTS `serendipity_exits` (
`entry_id` int( 11 ) NOT NULL DEFAULT '0',
`day` date NOT NULL ,
`count` int( 11 ) NOT NULL DEFAULT '0',
`scheme` varchar( 5 ) COLLATE utf8_unicode_ci DEFAULT NULL ,
`host` varchar( 128 ) COLLATE utf8_unicode_ci NOT NULL ,
`port` varchar( 5 ) COLLATE utf8_unicode_ci DEFAULT NULL ,
`path` varchar( 255 ) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
`query` varchar( 255 ) COLLATE utf8_unicode_ci DEFAULT NULL ,
PRIMARY KEY ( `host` , `path` , `day` , `entry_id` ) ,
KEY `exits_idx` ( `entry_id` , `day` , `host` )
) ENGINE = MYISAM DEFAULT CHARSET = utf8 COLLATE = utf8_unicode_ci;

MySQL meldet: Dokumentation
#1071 - Specified key was too long; max key length is 1000 bytes

Host:
* Server Version: 5.1.33-log
* Protokoll-Version: 10
* Benutzer: mojavch@admin2.adm.hostpoint.internal
* MySQL-Zeichensatz: UTF-8 Unicode (utf8)

XAMPP:
# Server Version: 5.1.33-community
# Protokoll-Version: 10
# Benutzer: root@localhost
# MySQL-Zeichensatz: UTF-8 Unicode (utf8)

Ich weiss nicht, wie man den key kleiner macht. Kann mir jemand helfen?
Besten Dank PAJ

PS Ein grosses Kompliment an die Erbauer und Pfleger dieser SW und an das Forum. Es spricht m.E. für das System, wenn ich als älteres Semester mit Hilfe von Garvins Handbuch und diesem Forum in knapp einer Woche einen Blog bauen und das bulletproof template für meine Bedürfnisse justieren kann. Besten Dank! Gibt es eine gemeinsame Spendenkasse ?
garvinhicking
Core Developer
Posts: 30022
Joined: Tue Sep 16, 2003 9:45 pm
Location: Cologne, Germany
Contact:

Re: Key too long

Post by garvinhicking »

Hi!

Ja, das Problem ist leider das wenn man UTF-8 Zeichensatz nimmt, MySQL die maximale Zeichenlänge aufgrund des ZEichensatzes mal 4 nimmt.

Die Keylänge kannst Du derart einschränken:
PRIMARY KEY ( `host` , `path` (128), `day` , `entry_id` ) ,
D.h. einfach in Klammern einen kleineren Wert. 255 ist meist nicht nötig zur eindeutigen Identizifierung, du solltest daher auch mit werten wie 160 keinerlei Probleme erwarten müssen.

Ich freue mich jedenfalls sonst sehr für dein Lob, und hoffe dass wir die verbleibenden Probleme auch gut beseitigt kriegen! :)

Eine globale Spendenkasse gibt es nicht, aber viele Entwickler haben eigene PayPal- oder Amazon-Wunschlisten...

Viele Grüße,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
Jav
Posts: 2
Joined: Sat Sep 19, 2009 5:41 pm

Re: Key too long

Post by Jav »

besten Dank, Garvin!
es hat geklappt; ich habe wieder eine menge mysql gelernt und die db-struktur von s9y entdeckt.
habe mir eine default-installation auf xampp gebaut und dann mit phpadmin die variablen verglichen.
ich wollte schon auf joomla umsteigen, weil die dump verschieberei dort einfacher ist. jetzt lasse ich es und baue ein cms mit s9y. all the best! and the rest on paypal! paj
Post Reply