John R. Owens wrote:
# Creating tables...Query "CREATE TABLE
categorylinks ( cl_from int(8)
unsigned NOT NULL default '0', cl_to varchar(255) binary NOT NULL
default '', cl_sortkey varchar(255) binary NOT NULL default '',
cl_timestamp timestamp NOT NULL, UNIQUE KEY cl_from(cl_from,cl_to), KEY
cl_sortkey(cl_to,cl_sortkey(128)), KEY cl_timestamp(cl_to,cl_timestamp)
)" failed with error code "Specified key was too long; max key length is
1000 bytes".
Do one of the following:
* Downgrade to MySQL 4.0
* Set the default MySQL character set to latin1 instead of utf-8
* Install MediaWiki 1.5beta4 instead of 1.4.
The only thing that comes to mind that I did
differently when redoing
the MySQL database was that I told it to use UTF8 as the default
character set & collation; I suppose that might possibly affect the
number of bytes in the key?
Bingo.
Also, while I'm at it, from what I understand, PHP
eAccelerator is
supposed to be the successor to Turck MMCache, but it doesn't seem to be
detected and considered equivalent. Is this typical, or did I perhaps
not install eAccelerator right, too?
eAccelerator has different names for all its functions so is not
detected by a check for Turck MMCache. In 1.5 I believe it's separately
detected.
I would recommend against using the turck/eAcclerator MediaWiki cache
functions. They are not well tested, and possibly unnecessary or perhaps
harmful due to memory size limits.
They provide valuable PHP acceleration without any configuration in
MediaWiki.
-- brion vibber (brion @
pobox.com)