Jon,
This doesn't look as much like database corruption as simply something going awry with a module. Have you updated anything? If so, or even not, run /update.php and let the install scripts do some database tweaking, if appropriate.
Otherwise, this sounds like a problem with install scripts or a module itself. Check the issues queue for all of your modules for similar errors. I'm not sure which dhtml modules you're referring to.
When you say you "ran a check table," do you mean like doing basic MySQL housekeeping, but you don't really have any problems running Drupal? In that case, you may have exposed a bug that needs fixing before it does cause trouble.
In that case, it would be best to start with a clean D6 install, then add your modules and themes back in one at a time, checking for the bug at every step (including clean core.) That can help you narrow down where to search and submit the bug report. If you're unsure about what to report, reply here and we can work on it together.
Micah
I have been working with D6 for awhile and all my Db's have this error. I meant to check right after the fresh D6 install but forgot until I had enabled CCK and the dhtml_menu module. I noticed it after that. I have run update.php and it is still there. I will do some more searching when I have time but knowing my other installations I am thinking it is either in core or the dhtml_menu module. Thanks for the help.
Jon
Jon,
What's the syntax of the check table command you're running? I can check my databases. I have one system that I think is completely clean core, and a couple of others that have some modules added. Let me know how you're testing this, and I'll compare.
Micah
I went into MyPHPAdmin. At the bottom of the database is the the dropdown list. I clicked on select all and then from the dropdown list I selected "check table" The table shows status ok for all the tables but at the bottom is where the problem statements occur. I see the dhtml_menu module has an update which I am going to try. On a couple of my installs with many modules I get alot of 404's which I am trying to track down...but that is another (perhaps unrelated) issue.
Jon
I did some looking at some other installation configurations both in D5 and D6.x and ALL of them had the following info after running "check table".
Problems with indexes of table `blocks`
UNIQUE and INDEX keys should not both be set for column `theme`
Problems with indexes of table `filters`
UNIQUE and INDEX keys should not both be set for column `format`
Problems with indexes of table `menu_links`
More than one INDEX key was created for column `menu_name`
Problems with indexes of table `search_index`
UNIQUE and INDEX keys should not both be set for column `word`
Problems with indexes of table `system`
More than one INDEX key was created for column `type`
Problems with indexes of table `term_data`
More than one INDEX key was created for column `vid`
Any help?
First, upgrade everything. WAMP, drupal, and what ever you have. Then, try a fresh and clean install. See it isn't still happening.
There might be something wrong with the sql schema (I'd need to see the database for that) or, more likely, there is something with the way MySQL is setup. You can have an index on an item and it be part of a unique key.
Did you add any indexes yourself?
Matt Farina
Geeks and God Co-Host
www.innovatingtomorrow.net
www.mattfarina.com
I am using MySQL 5.045 on my WAMPserver. I was having trouble importing from my Startlogic server unrelated to size so I made my local Db the same as my remote. I have looked through all of the Db's and all of them have this index issue. What you said makes me think it is a 5.045 problem. I have done alot of things with the Db such as inserting/deleting/dropping which made me think I had done something wrong. But this exists on fresh installations as well. At one point I was trying to install a multi-site configuration off one installation. I remember messing with a bunch of files as per the Drupal instructions. I am not sure if I ever got them back to the way they were. Could this be the source of the problem? I never added any indexes myself...in fact I don't even know what they are or do. Thanks for your patience and help.
Jon
I just tried this on a random D5 site, and I can reproduce it, but with slightly different errors:
Problems with indexes of table `node`
PRIMARY and INDEX keys should not both be set for column `nid`
More than one INDEX key was created for column `status`
Problems with indexes of table `term_hierarchy`
PRIMARY and INDEX keys should not both be set for column `tid`
Problems with indexes of table `term_node`
PRIMARY and INDEX keys should not both be set for column `tid`
Problems with indexes of table `view_view`
UNIQUE and INDEX keys should not both be set for column `name`
There are two other sites on that server. Both sites returned some of the same errors. Two of the three sites have lots of modules and have been through several updates. The other one is pretty new and has only a couple of modules.
My D6 dev site on my laptop came up clean.
Okay, I looked at my setting.php file. The only thing I can figure is that I need to uncomment the following: * To specify multiple connections to be used in your site (i.e. for
* complex custom modules) you can also specify an associative array
* of $db_url variables with the 'default' element used until otherwise
* requested.
*
* You can optionally set prefixes for some or all database table names
* by using the $db_prefix setting. If a prefix is specified, the table
* name will be prepended with its value. Be sure to use valid database
* characters only, usually alphanumeric and underscore. If no prefixes
* are desired, leave it as an empty string ''.
*
* To have all database names prefixed, set $db_prefix as a string:
*
*$db_prefix = 'main_';
*
* To provide prefixes for specific tables, set $db_prefix as an array.
* The array's keys are the table names and the values are the prefixes.
* The 'default' element holds the prefix for any tables not specified
* elsewhere in the array. Example:
*
$db_prefix = array(
'default' => 'main_',
'users' => 'shared_',
'sessions' => 'shared_',
'role' => 'shared_',
'authmap' => 'shared_',
);
In all my installations the above was commented out. Does it make sense that uncommenting them may be the solution?
*
This is for when you have more than one drupal website running off the same database and you want to keep part or all of the site separate from other drupal sites installed on the same database.
It's unlikely this would have anything to do with index issues.
Matt Farina
Geeks and God Co-Host
www.innovatingtomorrow.net
www.mattfarina.com
I've been wracking up weeks/month trying to figure these warnings out. I did the same thing as JStieglitz....ran a check of my database in a dev site using phpmyadmin. I'm running Drupal6x on apache2triad. And, it looks like I have the identical warnings that JStieglitz reported. Any idea what to do or if it's safe to continue to build site, despite warnings? I have: run update.php, done repair in phpmyadmin, cleared caches. Even logged in/out as admin just in case that had some magic. The only bit of info I have found from massive searching is that phpmyadmin may be throwing these warnings because of field duplication that's unavoidable... ie., multiple fields on one keyname.. if you delete the field that has multiple fieldnames in it ...and corresponding keyname, of course... you end up deleting the index for the fieldnames that are not duplicated.
Any one have any words/feedback?
Problems with indexes of table `blocks`
Warning UNIQUE and INDEX keys should not both be set for column `theme`
Problems with indexes of table `filters`
Warning UNIQUE and INDEX keys should not both be set for column `format`
Problems with indexes of table `menu_links`
Warning More than one INDEX key was created for column `menu_name`
Problems with indexes of table `search_index`
Warning UNIQUE and INDEX keys should not both be set for column `word`
Problems with indexes of table `system`
Warning More than one INDEX key was created for column `type`
Problems with indexes of table `term_data`
Warning More than one INDEX key was created for column `vid`
Can anyone tell me why on a fresh install of D6.6 I should be getting MySQL errors. I did a fresh local install using WAMP using version 5.0.45 of MySQL. I enabled CCK and the dhtml modules. I ran a check table and found: "Problems with indexes of table 'blocks'" UNIQUE and INDEX keys should not both be set for column 'theme'. I get this same messsage for table 'filters'('format'), 'search_index'('word'). Three of the tables: menu_links, system and term_data state "More than one INDEX key was created for column '&'.
Can anyone tell me how to correct this?
Does it matter?
Is this normal?
Any help would be greatly appreciated. As you know....I am a newb and have no clue as to the syntax and/or manipulation of MySQL data.
Jon