<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: MySQL: the Pros and Cons of InnoDB Tables</title>
	<atom:link href="http://www.sitepoint.com/blogs/2009/03/26/mysql-innodb-table-pros-cons/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.sitepoint.com/blogs/2009/03/26/mysql-innodb-table-pros-cons/</link>
	<description>News, opinion, and fresh thinking for web developers and designers. The official podcast of sitepoint.com.</description>
	<lastBuildDate>Mon, 23 Nov 2009 00:48:44 -0500</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: JJ</title>
		<link>http://www.sitepoint.com/blogs/2009/03/26/mysql-innodb-table-pros-cons/comment-page-1/#comment-920653</link>
		<dc:creator>JJ</dc:creator>
		<pubDate>Mon, 20 Apr 2009 11:20:13 +0000</pubDate>
		<guid isPermaLink="false">http://www.sitepoint.com/blogs/?p=7493#comment-920653</guid>
		<description>**However, designing that database with foreign key relationships does require more effort. Database novices will find MyISAM easier because it has fewer features.**

It is not database novices who will find MyISAM easier, but database ignorants.
Just because clicking here and there in phpMyAdmin creates a database you don&#039;t become a database designer. If you don&#039;t know what a primary key is, or what foreign keys and referential integrity are, then you don&#039;t know anything about database design.</description>
		<content:encoded><![CDATA[<p>**However, designing that database with foreign key relationships does require more effort. Database novices will find MyISAM easier because it has fewer features.**</p>
<p>It is not database novices who will find MyISAM easier, but database ignorants.<br />
Just because clicking here and there in phpMyAdmin creates a database you don&#8217;t become a database designer. If you don&#8217;t know what a primary key is, or what foreign keys and referential integrity are, then you don&#8217;t know anything about database design.</p>]]></content:encoded>
	</item>
	<item>
		<title>By: Jose G</title>
		<link>http://www.sitepoint.com/blogs/2009/03/26/mysql-innodb-table-pros-cons/comment-page-1/#comment-906559</link>
		<dc:creator>Jose G</dc:creator>
		<pubDate>Tue, 31 Mar 2009 01:07:24 +0000</pubDate>
		<guid isPermaLink="false">http://www.sitepoint.com/blogs/?p=7493#comment-906559</guid>
		<description>For high traffic web sites, having an INNO DB Master with MyISAM Slaves for reading (selects) is a good option.</description>
		<content:encoded><![CDATA[<p>For high traffic web sites, having an INNO DB Master with MyISAM Slaves for reading (selects) is a good option.</p>]]></content:encoded>
	</item>
	<item>
		<title>By: Czaries</title>
		<link>http://www.sitepoint.com/blogs/2009/03/26/mysql-innodb-table-pros-cons/comment-page-1/#comment-904235</link>
		<dc:creator>Czaries</dc:creator>
		<pubDate>Fri, 27 Mar 2009 17:27:37 +0000</pubDate>
		<guid isPermaLink="false">http://www.sitepoint.com/blogs/?p=7493#comment-904235</guid>
		<description>I think the InnoDB engine should be the default. I really don&#039;t view them as any more complicated than MyISAM, and the benefits they provide far outweigh any perceived costs. In my mind, the only justification for ever using MyISAM on ANY project (large or small) is for search index tables due to the FULLTEXT search capabilities. Data integrity should be the top priority for databases, big or small.</description>
		<content:encoded><![CDATA[<p>I think the InnoDB engine should be the default. I really don&#8217;t view them as any more complicated than MyISAM, and the benefits they provide far outweigh any perceived costs. In my mind, the only justification for ever using MyISAM on ANY project (large or small) is for search index tables due to the FULLTEXT search capabilities. Data integrity should be the top priority for databases, big or small.</p>]]></content:encoded>
	</item>
	<item>
		<title>By: Brad Montgomery</title>
		<link>http://www.sitepoint.com/blogs/2009/03/26/mysql-innodb-table-pros-cons/comment-page-1/#comment-904150</link>
		<dc:creator>Brad Montgomery</dc:creator>
		<pubDate>Fri, 27 Mar 2009 14:18:18 +0000</pubDate>
		<guid isPermaLink="false">http://www.sitepoint.com/blogs/?p=7493#comment-904150</guid>
		<description>@Rory, @Craig Buckler

You can definitely switch from MyISAM to InnoDB using &quot;alter table&quot;, but to really reap the benefits of InnoDB you&#039;d probably need to re-design your tables (i.e. explicitly specifying any foreign key constraints)

You might be able to save yourself some time re-entering data by using mysqldump  to save your existing data, and just keep INSERT statements (which you may have to alter).

Of course, this all depends on your tables&#039; structure.  :)</description>
		<content:encoded><![CDATA[<p>@Rory, @Craig Buckler</p>
<p>You can definitely switch from MyISAM to InnoDB using &#8220;alter table&#8221;, but to really reap the benefits of InnoDB you&#8217;d probably need to re-design your tables (i.e. explicitly specifying any foreign key constraints)</p>
<p>You might be able to save yourself some time re-entering data by using mysqldump  to save your existing data, and just keep INSERT statements (which you may have to alter).</p>
<p>Of course, this all depends on your tables&#8217; structure.  :)</p>]]></content:encoded>
	</item>
	<item>
		<title>By: Chris</title>
		<link>http://www.sitepoint.com/blogs/2009/03/26/mysql-innodb-table-pros-cons/comment-page-1/#comment-903608</link>
		<dc:creator>Chris</dc:creator>
		<pubDate>Thu, 26 Mar 2009 21:04:11 +0000</pubDate>
		<guid isPermaLink="false">http://www.sitepoint.com/blogs/?p=7493#comment-903608</guid>
		<description>&gt;&gt; If your application is primarily selecting data 
&gt;&gt; and performance is a priority, MyISAM tables will 
&gt;&gt; normally be faster and use fewer system resources.

This statement isn&#039;t always true, and therefore I think it should have been omitted.  Performance is dependent on what your application does and the kinds of queries it handles.  A novice will see the subheading &quot;Slower performance&quot;, and might think InnoDB is slower, but again that&#039;s not true and is very misleading.

InnoDB&#039;s use of row level locking means it can be a lot faster than MyISAM.  Way faster in certain cases.

Certainly, since MyISAM is the default engine and its straightforward, it is good for beginners.  But beginners shouldn&#039;t be told InnoDB = &quot;Slower Performance&quot;.

I&#039;d recommend the book &quot;High Performance MySQL&quot; (2nd edition) to anyone thinking of building websites are more than just a hobby site.</description>
		<content:encoded><![CDATA[<p>&gt;&gt; If your application is primarily selecting data<br />
&gt;&gt; and performance is a priority, MyISAM tables will<br />
&gt;&gt; normally be faster and use fewer system resources.</p>
<p>This statement isn&#8217;t always true, and therefore I think it should have been omitted.  Performance is dependent on what your application does and the kinds of queries it handles.  A novice will see the subheading &#8220;Slower performance&#8221;, and might think InnoDB is slower, but again that&#8217;s not true and is very misleading.</p>
<p>InnoDB&#8217;s use of row level locking means it can be a lot faster than MyISAM.  Way faster in certain cases.</p>
<p>Certainly, since MyISAM is the default engine and its straightforward, it is good for beginners.  But beginners shouldn&#8217;t be told InnoDB = &#8220;Slower Performance&#8221;.</p>
<p>I&#8217;d recommend the book &#8220;High Performance MySQL&#8221; (2nd edition) to anyone thinking of building websites are more than just a hobby site.</p>]]></content:encoded>
	</item>
	<item>
		<title>By: williamb</title>
		<link>http://www.sitepoint.com/blogs/2009/03/26/mysql-innodb-table-pros-cons/comment-page-1/#comment-903567</link>
		<dc:creator>williamb</dc:creator>
		<pubDate>Thu, 26 Mar 2009 19:54:04 +0000</pubDate>
		<guid isPermaLink="false">http://www.sitepoint.com/blogs/?p=7493#comment-903567</guid>
		<description>Valuable information, short and to the point. I have been working with MySQL for quite a few years now and honestly just never bothered to learn the difference between InnoDB and MyISAM because MyISAM just &#039;worked&#039;. I definitely could have used this info about two months ago for a project I was working on but it will be useful from here on out. Thanks again...</description>
		<content:encoded><![CDATA[<p>Valuable information, short and to the point. I have been working with MySQL for quite a few years now and honestly just never bothered to learn the difference between InnoDB and MyISAM because MyISAM just &#8216;worked&#8217;. I definitely could have used this info about two months ago for a project I was working on but it will be useful from here on out. Thanks again&#8230;</p>]]></content:encoded>
	</item>
	<item>
		<title>By: Craig Buckler</title>
		<link>http://www.sitepoint.com/blogs/2009/03/26/mysql-innodb-table-pros-cons/comment-page-1/#comment-903520</link>
		<dc:creator>Craig Buckler</dc:creator>
		<pubDate>Thu, 26 Mar 2009 18:38:38 +0000</pubDate>
		<guid isPermaLink="false">http://www.sitepoint.com/blogs/?p=7493#comment-903520</guid>
		<description>@Stefan
That&#039;s interesting. I did find a few resources that indicate InnoDB could be faster in tests, although it didn&#039;t scale as well as MyISAM. Every DB has different requirements, so it&#039;s a little difficult to prove what&#039;s best.

I suspect MyISAM is slower or offers negligible speed benefits in all but the largest of read-only tables.</description>
		<content:encoded><![CDATA[<p>@Stefan<br />
That&#8217;s interesting. I did find a few resources that indicate InnoDB could be faster in tests, although it didn&#8217;t scale as well as MyISAM. Every DB has different requirements, so it&#8217;s a little difficult to prove what&#8217;s best.</p>
<p>I suspect MyISAM is slower or offers negligible speed benefits in all but the largest of read-only tables.</p>]]></content:encoded>
	</item>
	<item>
		<title>By: Stefan</title>
		<link>http://www.sitepoint.com/blogs/2009/03/26/mysql-innodb-table-pros-cons/comment-page-1/#comment-903499</link>
		<dc:creator>Stefan</dc:creator>
		<pubDate>Thu, 26 Mar 2009 18:11:15 +0000</pubDate>
		<guid isPermaLink="false">http://www.sitepoint.com/blogs/?p=7493#comment-903499</guid>
		<description>I&#039;m not so sure whether MyISAM is faster than InnoDB even for a read only benchmark. Twice I had the opportunity to run some read only benchmarks against MySQL and in both cases InnoDB was to my surprise faster than MyISAM (within a range of 10-40%). Are there any benchmarks available that show a performance advantage for MyISAM?

(Apart from that I really think that the ACID properties aren&#039;t a feature, but a requirement for a database.)</description>
		<content:encoded><![CDATA[<p>I&#8217;m not so sure whether MyISAM is faster than InnoDB even for a read only benchmark. Twice I had the opportunity to run some read only benchmarks against MySQL and in both cases InnoDB was to my surprise faster than MyISAM (within a range of 10-40%). Are there any benchmarks available that show a performance advantage for MyISAM?</p>
<p>(Apart from that I really think that the ACID properties aren&#8217;t a feature, but a requirement for a database.)</p>]]></content:encoded>
	</item>
	<item>
		<title>By: Craig Buckler</title>
		<link>http://www.sitepoint.com/blogs/2009/03/26/mysql-innodb-table-pros-cons/comment-page-1/#comment-903490</link>
		<dc:creator>Craig Buckler</dc:creator>
		<pubDate>Thu, 26 Mar 2009 17:57:46 +0000</pubDate>
		<guid isPermaLink="false">http://www.sitepoint.com/blogs/?p=7493#comment-903490</guid>
		<description>@Rory
Use the best table engine for the job in hand, although I do consider InnoDB to be a better choice for the majority of applications.

You can change an existing table to InnoDB using:

&lt;pre&gt;&lt;code class=&quot;sql&quot;&gt;alter table mytable Engine=InnoDB;&lt;/code&gt;&lt;/pre&gt;

Please don&#039;t do that on a live system! Test it thoroughly first.</description>
		<content:encoded><![CDATA[<p>@Rory<br />
Use the best table engine for the job in hand, although I do consider InnoDB to be a better choice for the majority of applications.</p>
<p>You can change an existing table to InnoDB using:</p>
<pre><code class="sql">alter table mytable Engine=InnoDB;</code></pre>
<p>Please don&#8217;t do that on a live system! Test it thoroughly first.</p>]]></content:encoded>
	</item>
	<item>
		<title>By: praetor</title>
		<link>http://www.sitepoint.com/blogs/2009/03/26/mysql-innodb-table-pros-cons/comment-page-1/#comment-903413</link>
		<dc:creator>praetor</dc:creator>
		<pubDate>Thu, 26 Mar 2009 16:02:32 +0000</pubDate>
		<guid isPermaLink="false">http://www.sitepoint.com/blogs/?p=7493#comment-903413</guid>
		<description>Can&#039;t wait for the Postgres articles ;)</description>
		<content:encoded><![CDATA[<p>Can&#8217;t wait for the Postgres articles ;)</p>]]></content:encoded>
	</item>
</channel>
</rss>
