The Arcive of Official vBulletin Modifications Site.It is not a VB3 engine, just a parsed copy! |
|
#1
|
||||
|
||||
MySQL Error: ENGINE = MyISAM invalid SQL?
When trying to install a few hacks, including QuoteIt, Radio Stations, and Multiple Login Detector, I get the following error:
Quote:
|
#2
|
||||
|
||||
This is a mysql version incompatibility.
Mysql 5 adds the engine definition to the create table syntax. Mysql 4 (and perhaps 4.1, I am not sure) does not recognise it. 2 solutions 1) upgrade your mysql 2) edit the plugin to remove the engine designation. |
#3
|
||||
|
||||
Quote:
Does removing the engine designation have any effect on the performance of the hack, and/or are there any theoretical reprecussions? |
#4
|
||||
|
||||
Quote:
From the mysql reference manual: ENGINE was added in MySQL 4.0.18 (for 4.0) and 4.1.2 (for 4.1). This means you are using a *really old and probably unsupported* version of mysql |
#5
|
||||
|
||||
Actually, if you look at the whole error, it is the collation that is causing the error. Language collations are in newer versions and you cannot restore with that information. You need to make the backup with compatibility for the older version.
|
#6
|
||||
|
||||
Quote:
I'm just trying to understand the problem. The MySQL is controlled by the host I have, so I can't really easily upgrade it, though moving to a new host with a newer version is always possible (I've been wanting to move anyways). Thanks in advance for any help or suggestions. |
#7
|
||||
|
||||
Quote:
A character set defines what actual characters are represented in your strings, so if you were writing in French you would want a character set that supported accents over vowels. A collation determines how the members of the set are compared, for example does "a" come before "A". Chances are you could delete any reference to these in the create table syntax, and not cause a problem. Obviously, I cannot guarantee this. Were it me, I'd be moving hosts. 4.0 is a poor choice of database for today. It's not even supported anymore. |
#8
|
||||
|
||||
In newer versions of MySQL the export of a table would be:
Code:
CREATE TABLE `vb_access` ( `userid` int(10) unsigned NOT NULL default '0', `forumid` smallint(5) unsigned NOT NULL default '0', `accessmask` smallint(5) unsigned NOT NULL default '0', PRIMARY KEY (`userid`,`forumid`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1; Code:
CREATE TABLE `vb_access` ( `userid` int(10) unsigned NOT NULL default '0', `forumid` smallint(5) unsigned NOT NULL default '0', `accessmask` smallint(5) unsigned NOT NULL default '0', PRIMARY KEY (`userid`,`forumid`) ) TYPE=InnoDB; http://www.vbulletin.com/docs/html/m...servers_backup Or just remove everything after the closing parenthesis for each table declaration. If it isn't specified than MySQL will use its defaults. |
#9
|
||||
|
||||
Quote:
|
|
|
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
More Information | |
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|