[FIXED] MYISAM causeing problems

Find the proper support area, Saga-Version.
Forum rules
READ NOW: L2j Forums Rules of Conduct
Post Reply
magestik
Posts: 31
Joined: Tue Jul 19, 2005 3:21 pm

[FIXED] MYISAM causeing problems

Post by magestik »

Severall tables have the line 'TYPE=MYISAM' which is causeing an error when trying to install the database (useing mysql 6.0).
Is there a reason for useing MYISAM instead of INNODB ?


got this from the web.
1. The big difference between MySQL Table Type MyISAM and InnoDB is that InnoDB supports transaction

2. InnoDB supports some newer features: Transactions, row-level locking, foreign keys

3. InnoDB is for high volume, high performance
Fulminus
L2j Veteran
L2j Veteran
Posts: 1554
Joined: Mon Oct 10, 2005 6:49 pm

Post by Fulminus »

MyISAM tables shouldn't be causing any issues as they are still supported by mysql 6.0, unless you have turned their support off in the installation or options. If so, you should be able to re-enable them. You can read mysql's docs for information on how to change those options, though it might be easiest to uninstall and reinstall mysql, being careful with all the options when you reinstall.

In any case, InnoDB is too much for most tables. Most of the L2JDP tables are static data holders. Data doesn't get inserted, deleted, or updated often (if ever, except during chronicle updates). For such tables, MyISAM is the ideal format.

InnoDB is ideal for tables that change often or for tables where external references and support for cascade etc is necessary (that is, foreign key constraints and related triggers).

Using the "wrong" table format will not cause anything to break, but it will add unnecessary overheads. Each format is optimized for its purpose. So updates, inserts, and deletes get more expensive over time in MyISAM than in InnoDB. Selects are cheaper in MyISAM than in InnoDB...
I'm a joyful, merriful, playful, curious, young, little elf!!! :-)
I'm also a High(tech) Elf, (computer) wiz!
rodo
Posts: 158
Joined: Sat Feb 24, 2007 11:14 pm

Post by rodo »

fulminus wrote:MyISAM tables shouldn't be causing any issues as they are still supported by mysql 6.0, unless you have turned their support off in the installation or options.
or the syntax has changed :P
rodo wrote:The very old syntax

Code: Select all

TYPE=MyISAM
is no longer valid since MySQL 5.2. This is stated on MySQL 6 documentation webpage http://dev.mysql.com/doc/refman/6.0/en/ ... table.html (and surely on changelogs etc.)
The older TYPE option was synonymous with ENGINE. TYPE was deprecated in MySQL 4.0, and removed in MySQL 5.2. When upgrading to MySQL 5.2, you must convert existing applications that rely on TYPE to use ENGINE instead.
Below is fix updating current syntax of storage engine definition in sql files to the only valid ENGINE=MyISAM. The ENGINE statement is compatible with MySQL 3.23 and newer, so there should be no problems.
This will allow users of MySQL version >= 5.2 to properly install/upgrade their datapacks.
Fix on: http://www.l2jdp.com/forum/viewtopic.php?p=35255#35255
Post Reply