Solved

Converting tables from MyISAM to InnoDB

Posted on 2006-06-20
4
457 Views
Last Modified: 2012-06-22
Hi,
  I've got a table with 110k records. Reads/Writes are a little slow. I'm using MyISAM for the table. Considering the size and speed problems, will making the table InnoDB improve things?
  I'm using MySQL 5.0.22.  I also read that MySQL cautions this conversion as being unsupported.

(1) Anyone with any thoughts/experience on doing this?
(2) Anyone with any thoughts on my specific situation?

Thanks.
0
Comment
Question by:bigtwig
  • 2
4 Comments
 
LVL 7

Assisted Solution

by:db2inst1
db2inst1 earned 40 total points
ID: 16948617

I didn't know that was not supported. I did try changing the storage engine using alter table & once by importing the mysqldump after the editing the storage engine type in the dump file.

Alter table statement was slower. For almost double the size of your table.
0
 
LVL 2

Author Comment

by:bigtwig
ID: 16950512
http://dev.mysql.com/doc/refman/5.0/en/innodb-restrictions.html says it is an unsupported operation.

So you've (db2inst1) have done this twice before or you were just testing it?
0
 
LVL 22

Accepted Solution

by:
NovaDenizen earned 460 total points
ID: 16952785
That is just talking about the mysql.* database, which is the confusingly named database schema that holds all the user permission, table permission passwords, etc.  It is perfectly fine to change the engine on your own database tables.

In other words,
ALTER TABLE mysql.user ENGINE=InnoDB;   <---- DANGER DANGER!  unsupported!

ALTER TABLE XYZ_db.xyztable ENGINE=InnoDB;  <---- perfectly fine.
0
 
LVL 22

Assisted Solution

by:NovaDenizen
NovaDenizen earned 460 total points
ID: 16952817
This is completely separate from the question of whether or not changing the engine will actually speed things up for you.  It depends on how well indexed your queries are, what kind of data you have, and what kind of updates are going on.  If it slows things down, you could always alter it back to MyISAM.

Also, you should keep in mind that your ibdata file will get really big when you change your table to innodb, since all the data will go into the ibdata file.  If you change it back to MyISAM, the innodb file will still stay at the 'high-water mark' for that amount of data.
0

Featured Post

PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

Join & Write a Comment

More Fun with XML and MySQL – Parsing Delimited String with a Single SQL Statement Are you ready for another of my SQL tidbits?  Hopefully so, as in this adventure, I will be covering a topic that comes up a lot which is parsing a comma (or other…
Password hashing is better than message digests or encryption, and you should be using it instead of message digests or encryption.  Find out why and how in this article, which supplements the original article on PHP Client Registration, Login, Logo…
Here's a very brief overview of the methods PRTG Network Monitor (https://www.paessler.com/prtg) offers for monitoring bandwidth, to help you decide which methods you´d like to investigate in more detail.  The methods are covered in more detail in o…
You have products, that come in variants and want to set different prices for them? Watch this micro tutorial that describes how to configure prices for Magento super attributes. Assigning simple products to configurable: We assigned simple products…

758 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

22 Experts available now in Live!

Get 1:1 Help Now