dbTalk Databases Forums  

InnoDB slowness

comp.databases.mysql comp.databases.mysql


Discuss InnoDB slowness in the comp.databases.mysql forum.



Reply
 
Thread Tools Display Modes
  #1  
Old   
monkeys paw
 
Posts: n/a

Default InnoDB slowness - 03-09-2010 , 10:26 AM






I found out that the Myisam does not allow transactions so i decided
to change some tables on my machine so that they use the InnoDB engine
instead of the MyISAM engine.
In doing this, I found that loading an InnoDB table is incredibly slow if
you keep it's indexes. One of the tables took hours to load with the
indexes and only about 15 minutes without the indexes. As a rule, the
InnoDB engine seems to load slower than the MyISAM engine even when
there are no indexes.

Does this sound like expected results?

Reply With Quote
  #2  
Old   
Hugo
 
Posts: n/a

Default Re: InnoDB slowness - 03-09-2010 , 10:47 AM






monkeys paw wrote :

Quote:
In doing this, I found that loading an InnoDB table is incredibly slow if
you keep it's indexes. One of the tables took hours to load with the
indexes and only about 15 minutes without the indexes. As a rule, the
InnoDB engine seems to load slower than the MyISAM engine even when
there are no indexes.
What do you mean by "load a table" ? Scan every lines such as in "select
* from foo;" ? Indexes does not help in case of full table scan. But in
the other hand it should not hinder the performance.

More informations are required. Table definition, query, explain plan...

--
Hugo

Reply With Quote
  #3  
Old   
Axel Schwenke
 
Posts: n/a

Default Re: InnoDB slowness - 03-09-2010 , 10:49 AM



monkeys paw <monkey (AT) joemoney (DOT) net> wrote:

Quote:
I found that loading an InnoDB table is incredibly slow
....
Does this sound like expected results?
Sounds like you insert single rows with autocommit enabled.
You should insert some 100 ... 1000 rows per transaction.
mysqldump gets there by using extended INSERT statements.
Alternatively you can use explicit BEGIN; COMMIT;

Or you can set innodb_flush_log_at_trx_commit to 2 for the
import. See:

http://dev.mysql.com/doc/refman/5.1/...t_trx_com mit

Oh and when you're there, don't miss:

http://dev.mysql.com/doc/refman/5.1/...db-tuning.html


XL

Reply With Quote
Reply




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.3
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.