<?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: How to calculate a good InnoDB log file size</title>
	<atom:link href="http://www.mysqlperformanceblog.com/2008/11/21/how-to-calculate-a-good-innodb-log-file-size/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.mysqlperformanceblog.com/2008/11/21/how-to-calculate-a-good-innodb-log-file-size/</link>
	<description>Everything about MySQL Performance</description>
	<lastBuildDate>Sat, 21 Nov 2009 05:23:57 -0800</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Baron Schwartz</title>
		<link>http://www.mysqlperformanceblog.com/2008/11/21/how-to-calculate-a-good-innodb-log-file-size/comment-page-1/#comment-544846</link>
		<dc:creator>Baron Schwartz</dc:creator>
		<pubDate>Mon, 20 Apr 2009 22:28:05 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/?p=541#comment-544846</guid>
		<description>Yes, I mean innodb_log_file_size.  About the slides -- actually that advice was from Peter Zaitsev.  He&#039;s not giving you all the details you need to understand what he was talking about.  You would have had to be in that talk to understand it.</description>
		<content:encoded><![CDATA[<p>Yes, I mean innodb_log_file_size.  About the slides &#8212; actually that advice was from Peter Zaitsev.  He&#8217;s not giving you all the details you need to understand what he was talking about.  You would have had to be in that talk to understand it.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Andy Geers</title>
		<link>http://www.mysqlperformanceblog.com/2008/11/21/how-to-calculate-a-good-innodb-log-file-size/comment-page-1/#comment-544505</link>
		<dc:creator>Andy Geers</dc:creator>
		<pubDate>Mon, 20 Apr 2009 11:38:28 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/?p=541#comment-544505</guid>
		<description>I&#039;m slightly confused by this article - it seems to match very closely the advice given by the InnoDB developers for the innodb_log_buffer_size setting here: http://www.innodb.com/wp/wp-content/uploads/2007/05/uc2007-innodb-performance-optimization.pdf

... rather than the innodb_log_*file*_size setting that you are talking about. Can you confirm that you definitely mean the setting you&#039;re referring to?</description>
		<content:encoded><![CDATA[<p>I&#8217;m slightly confused by this article &#8211; it seems to match very closely the advice given by the InnoDB developers for the innodb_log_buffer_size setting here: <a href="http://www.innodb.com/wp/wp-content/uploads/2007/05/uc2007-innodb-performance-optimization.pdf" rel="nofollow">http://www.innodb.com/wp/wp-content/uploads/2007/05/uc2007-innodb-performance-optimization.pdf</a></p>
<p>&#8230; rather than the innodb_log_*file*_size setting that you are talking about. Can you confirm that you definitely mean the setting you&#8217;re referring to?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: John Marc</title>
		<link>http://www.mysqlperformanceblog.com/2008/11/21/how-to-calculate-a-good-innodb-log-file-size/comment-page-1/#comment-522398</link>
		<dc:creator>John Marc</dc:creator>
		<pubDate>Sat, 28 Mar 2009 20:55:11 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/?p=541#comment-522398</guid>
		<description>Yow! Guess I need to up this!

-rw-rw----  1 mysql mysql 100M Mar 28 16:49 ib_logfile0
-rw-rw----  1 mysql mysql 100M Mar 28 16:50 ib_logfile1

Using Barons calcs I am looking at 200MB, and Sheens method says 600MB?</description>
		<content:encoded><![CDATA[<p>Yow! Guess I need to up this!</p>
<p>-rw-rw&#8212;-  1 mysql mysql 100M Mar 28 16:49 ib_logfile0<br />
-rw-rw&#8212;-  1 mysql mysql 100M Mar 28 16:50 ib_logfile1</p>
<p>Using Barons calcs I am looking at 200MB, and Sheens method says 600MB?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Vladimir Rusinov</title>
		<link>http://www.mysqlperformanceblog.com/2008/11/21/how-to-calculate-a-good-innodb-log-file-size/comment-page-1/#comment-461415</link>
		<dc:creator>Vladimir Rusinov</dc:creator>
		<pubDate>Sun, 01 Feb 2009 23:31:43 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/?p=541#comment-461415</guid>
		<description>Hi. Here is translation to Russian (if someone interested): http://greenmice.info/ru/node/92</description>
		<content:encoded><![CDATA[<p>Hi. Here is translation to Russian (if someone interested): <a href="http://greenmice.info/ru/node/92" rel="nofollow">http://greenmice.info/ru/node/92</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Baron Schwartz</title>
		<link>http://www.mysqlperformanceblog.com/2008/11/21/how-to-calculate-a-good-innodb-log-file-size/comment-page-1/#comment-434343</link>
		<dc:creator>Baron Schwartz</dc:creator>
		<pubDate>Sun, 04 Jan 2009 21:37:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/?p=541#comment-434343</guid>
		<description>That is exactly the point of writing this post.  Those guidelines are wrong.  Both of them.</description>
		<content:encoded><![CDATA[<p>That is exactly the point of writing this post.  Those guidelines are wrong.  Both of them.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Adam</title>
		<link>http://www.mysqlperformanceblog.com/2008/11/21/how-to-calculate-a-good-innodb-log-file-size/comment-page-1/#comment-434268</link>
		<dc:creator>Adam</dc:creator>
		<pubDate>Sun, 04 Jan 2009 20:21:55 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/?p=541#comment-434268</guid>
		<description>Heh, I am messing with this now for my research and I&#039;m quite certain it says right in the readme that it should be 25% of your buffer pool size, which should be 50-80% of available memory. To me it seems like 64M is indeed way too low.</description>
		<content:encoded><![CDATA[<p>Heh, I am messing with this now for my research and I&#8217;m quite certain it says right in the readme that it should be 25% of your buffer pool size, which should be 50-80% of available memory. To me it seems like 64M is indeed way too low.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jesper Wisborg Krogh</title>
		<link>http://www.mysqlperformanceblog.com/2008/11/21/how-to-calculate-a-good-innodb-log-file-size/comment-page-1/#comment-421308</link>
		<dc:creator>Jesper Wisborg Krogh</dc:creator>
		<pubDate>Tue, 23 Dec 2008 04:25:26 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/?p=541#comment-421308</guid>
		<description>Thanks a lot - I had considered that as an option as well as well as keeping track of which rows actually need to be changed. It will of course require a bit more work and bookkeeping, but it should be doable and I believe in this case it is the best long term solution.

Merry Christmas</description>
		<content:encoded><![CDATA[<p>Thanks a lot &#8211; I had considered that as an option as well as well as keeping track of which rows actually need to be changed. It will of course require a bit more work and bookkeeping, but it should be doable and I believe in this case it is the best long term solution.</p>
<p>Merry Christmas</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Baron Schwartz</title>
		<link>http://www.mysqlperformanceblog.com/2008/11/21/how-to-calculate-a-good-innodb-log-file-size/comment-page-1/#comment-421302</link>
		<dc:creator>Baron Schwartz</dc:creator>
		<pubDate>Tue, 23 Dec 2008 04:19:11 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/?p=541#comment-421302</guid>
		<description>I think you need to be nicer to your database.  Try building the new table in table_new, so you can commit the transaction after every command, and then swapping the table_current and table_new with RENAME TABLE.  And now your free advice tokens for the day are all spent :)</description>
		<content:encoded><![CDATA[<p>I think you need to be nicer to your database.  Try building the new table in table_new, so you can commit the transaction after every command, and then swapping the table_current and table_new with RENAME TABLE.  And now your free advice tokens for the day are all spent <img src='http://www.mysqlperformanceblog.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jesper Wisborg Krogh</title>
		<link>http://www.mysqlperformanceblog.com/2008/11/21/how-to-calculate-a-good-innodb-log-file-size/comment-page-1/#comment-421287</link>
		<dc:creator>Jesper Wisborg Krogh</dc:creator>
		<pubDate>Tue, 23 Dec 2008 04:05:37 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/?p=541#comment-421287</guid>
		<description>mysql&gt; SHOW GLOBAL VARIABLES LIKE &#039;innodb_log_file_size&#039;;
+----------------------+-----------+
&#124; Variable_name        &#124; Value     &#124;
+----------------------+-----------+
&#124; innodb_log_file_size &#124; 536870912 &#124;
+----------------------+-----------+
1 row in set (0.00 sec)

The error message in the log states that the age of the last checkpoint is 966364465 and the capacity is 966363956. I&#039;m not sure why there capacity is a bit smaller than two times the innodb_log_file_size, but I assume there are some space being used for bookkeeping.

It is one particular transaction that seems to trigger the error and that has a total of nine columns: 3 unsigned ints, 4 ints, 1 unsigned tinyint, and one datetime. It is a cache table so the transaction first deletes all rows and then repopulates it following by a couple of table scans to manipulate the data in an ordered update. The total number of rows is 1286113 (determined with SELECT COUNT(*)). The file containing the data for the table is 772 MB. According to SHOW TABLE STATUS the stats is:

 Data_length: 165838848
Index_length: 219807744
   Data_free: 0
     Comment: InnoDB free: 399360 kB

Other things are going on in the server at the same time. I tried to do a test on our development system and it will run on an idle system with innodb_log_file_size set to 512 MB, so it might also be that we can get around it by trying to reschedule the tasks, however I suspect even so we would be running close to the limit. Which brings me to: is there anyway to monitor whether you are getting close to using all the available space in the innodb log files?</description>
		<content:encoded><![CDATA[<p>mysql&gt; SHOW GLOBAL VARIABLES LIKE &#8216;innodb_log_file_size&#8217;;<br />
+&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-+&#8212;&#8212;&#8212;&#8211;+<br />
| Variable_name        | Value     |<br />
+&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-+&#8212;&#8212;&#8212;&#8211;+<br />
| innodb_log_file_size | 536870912 |<br />
+&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-+&#8212;&#8212;&#8212;&#8211;+<br />
1 row in set (0.00 sec)</p>
<p>The error message in the log states that the age of the last checkpoint is 966364465 and the capacity is 966363956. I&#8217;m not sure why there capacity is a bit smaller than two times the innodb_log_file_size, but I assume there are some space being used for bookkeeping.</p>
<p>It is one particular transaction that seems to trigger the error and that has a total of nine columns: 3 unsigned ints, 4 ints, 1 unsigned tinyint, and one datetime. It is a cache table so the transaction first deletes all rows and then repopulates it following by a couple of table scans to manipulate the data in an ordered update. The total number of rows is 1286113 (determined with SELECT COUNT(*)). The file containing the data for the table is 772 MB. According to SHOW TABLE STATUS the stats is:</p>
<p> Data_length: 165838848<br />
Index_length: 219807744<br />
   Data_free: 0<br />
     Comment: InnoDB free: 399360 kB</p>
<p>Other things are going on in the server at the same time. I tried to do a test on our development system and it will run on an idle system with innodb_log_file_size set to 512 MB, so it might also be that we can get around it by trying to reschedule the tasks, however I suspect even so we would be running close to the limit. Which brings me to: is there anyway to monitor whether you are getting close to using all the available space in the innodb log files?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Baron Schwartz</title>
		<link>http://www.mysqlperformanceblog.com/2008/11/21/how-to-calculate-a-good-innodb-log-file-size/comment-page-1/#comment-421264</link>
		<dc:creator>Baron Schwartz</dc:creator>
		<pubDate>Tue, 23 Dec 2008 03:40:25 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/?p=541#comment-421264</guid>
		<description>Jesper, I think something else is wrong.  Have you *confirmed* that the log files are 512MB?  What do you get from this?

SHOW GLOBAL VARIABLES LIKE &#039;innodb_log_file_size&#039;;

I think you have a typo in your my.cnf, or you&#039;re putting the variables in the wrong my.cnf file, or something like that.  Either that, or you&#039;re working with blobs that are hundreds of MB or some other extremely unusual workload.  Or an InnoDB bug (very unlikely).  Either way, if you can&#039;t figure out what&#039;s wrong after checking these things, I think you probably need expert help :-&#124;</description>
		<content:encoded><![CDATA[<p>Jesper, I think something else is wrong.  Have you *confirmed* that the log files are 512MB?  What do you get from this?</p>
<p>SHOW GLOBAL VARIABLES LIKE &#8216;innodb_log_file_size&#8217;;</p>
<p>I think you have a typo in your my.cnf, or you&#8217;re putting the variables in the wrong my.cnf file, or something like that.  Either that, or you&#8217;re working with blobs that are hundreds of MB or some other extremely unusual workload.  Or an InnoDB bug (very unlikely).  Either way, if you can&#8217;t figure out what&#8217;s wrong after checking these things, I think you probably need expert help <img src='http://www.mysqlperformanceblog.com/wp-includes/images/smilies/icon_neutral.gif' alt=':-|' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
</channel>
</rss>
