<?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: Choosing innodb_buffer_pool_size</title>
	<atom:link href="http://www.mysqlperformanceblog.com/2007/11/03/choosing-innodb_buffer_pool_size/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.mysqlperformanceblog.com/2007/11/03/choosing-innodb_buffer_pool_size/</link>
	<description>Percona&#039;s MySQL &#38; InnoDB performance and scalability blog</description>
	<lastBuildDate>Sat, 11 Feb 2012 16:45:54 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
	<item>
		<title>By: Wes</title>
		<link>http://www.mysqlperformanceblog.com/2007/11/03/choosing-innodb_buffer_pool_size/comment-page-1/#comment-873055</link>
		<dc:creator>Wes</dc:creator>
		<pubDate>Tue, 10 Jan 2012 21:48:42 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/2007/11/03/choosing-innodb_buffer_pool_size/#comment-873055</guid>
		<description>@Alexander,

PAE will solve the problem with a 32-bit system addressing more than 3.5G of system RAM, creating a lot more space for distinct process working segments.  PAE by itself does not solve the problem of 32-bit programs accessing &gt; 2G of useful RAM.  That&#039;s a totally separate question that involves some trickery from the people writing the software. Normal 32-bit applications can only &quot;see&quot; 32-bits worth of system RAM, regardless of how much the system actually has.

@Peter,

I&#039;m playing around with buffer pool settings in a staging environment (and..okay, maybe a bit in prod).  I set my buffer_pool size to 40000M on a box with 55G. I was expecting to see MySQL immediately allocate the entire 40G chunk so that it was a guaranteed allocation.  That doesn&#039;t appear to be the case.  Could you be so kind as to elaborate on how innodb preallocates buffer space?

Best,

Wes</description>
		<content:encoded><![CDATA[<p>@Alexander,</p>
<p>PAE will solve the problem with a 32-bit system addressing more than 3.5G of system RAM, creating a lot more space for distinct process working segments.  PAE by itself does not solve the problem of 32-bit programs accessing &gt; 2G of useful RAM.  That&#8217;s a totally separate question that involves some trickery from the people writing the software. Normal 32-bit applications can only &#8220;see&#8221; 32-bits worth of system RAM, regardless of how much the system actually has.</p>
<p>@Peter,</p>
<p>I&#8217;m playing around with buffer pool settings in a staging environment (and..okay, maybe a bit in prod).  I set my buffer_pool size to 40000M on a box with 55G. I was expecting to see MySQL immediately allocate the entire 40G chunk so that it was a guaranteed allocation.  That doesn&#8217;t appear to be the case.  Could you be so kind as to elaborate on how innodb preallocates buffer space?</p>
<p>Best,</p>
<p>Wes</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Alexander</title>
		<link>http://www.mysqlperformanceblog.com/2007/11/03/choosing-innodb_buffer_pool_size/comment-page-1/#comment-855050</link>
		<dc:creator>Alexander</dc:creator>
		<pubDate>Sun, 11 Dec 2011 05:47:51 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/2007/11/03/choosing-innodb_buffer_pool_size/#comment-855050</guid>
		<description>32bit PAE linux kernel not resolve problem with 2Gb limit?</description>
		<content:encoded><![CDATA[<p>32bit PAE linux kernel not resolve problem with 2Gb limit?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: David</title>
		<link>http://www.mysqlperformanceblog.com/2007/11/03/choosing-innodb_buffer_pool_size/comment-page-1/#comment-851935</link>
		<dc:creator>David</dc:creator>
		<pubDate>Tue, 06 Dec 2011 00:49:27 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/2007/11/03/choosing-innodb_buffer_pool_size/#comment-851935</guid>
		<description>Prem: Sounds like you have a 32-bit version of mysql installed likely because you have a 32-bit Linux. MySQL can not use more than 2G of ram on 32 bit platform. The 1173M plus the other buffers you have (or defaults) and its overhead are not letting you go much higher.</description>
		<content:encoded><![CDATA[<p>Prem: Sounds like you have a 32-bit version of mysql installed likely because you have a 32-bit Linux. MySQL can not use more than 2G of ram on 32 bit platform. The 1173M plus the other buffers you have (or defaults) and its overhead are not letting you go much higher.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Prem</title>
		<link>http://www.mysqlperformanceblog.com/2007/11/03/choosing-innodb_buffer_pool_size/comment-page-1/#comment-821533</link>
		<dc:creator>Prem</dc:creator>
		<pubDate>Fri, 09 Sep 2011 20:01:13 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/2007/11/03/choosing-innodb_buffer_pool_size/#comment-821533</guid>
		<description>I have a Linux Machine withr 16GB RAM. Have installed mysql and it shows innodb_buffer_pool_size=1173G.
Tried increasing it to 2048M and restarted mysql. When I checked the status of mysql it is not Running.
Again if go back to 1173M it is functioning properly.
Any troubleshooting tips would be great?</description>
		<content:encoded><![CDATA[<p>I have a Linux Machine withr 16GB RAM. Have installed mysql and it shows innodb_buffer_pool_size=1173G.<br />
Tried increasing it to 2048M and restarted mysql. When I checked the status of mysql it is not Running.<br />
Again if go back to 1173M it is functioning properly.<br />
Any troubleshooting tips would be great?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jochen Lillich</title>
		<link>http://www.mysqlperformanceblog.com/2007/11/03/choosing-innodb_buffer_pool_size/comment-page-1/#comment-794697</link>
		<dc:creator>Jochen Lillich</dc:creator>
		<pubDate>Thu, 20 Jan 2011 19:52:13 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/2007/11/03/choosing-innodb_buffer_pool_size/#comment-794697</guid>
		<description>@sedat:

If you change innodb_log_size, you&#039;ll have to remove the old log files manually so MySQL can create new ones. See also http://www.mysqlperformanceblog.com/2008/11/21/how-to-calculate-a-good-innodb-log-file-size/comment-page-1/#comment-390952

Best regards,
  Jochen</description>
		<content:encoded><![CDATA[<p>@sedat:</p>
<p>If you change innodb_log_size, you&#8217;ll have to remove the old log files manually so MySQL can create new ones. See also <a href="http://www.mysqlperformanceblog.com/2008/11/21/how-to-calculate-a-good-innodb-log-file-size/comment-page-1/#comment-390952" rel="nofollow">http://www.mysqlperformanceblog.com/2008/11/21/how-to-calculate-a-good-innodb-log-file-size/comment-page-1/#comment-390952</a></p>
<p>Best regards,<br />
  Jochen</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: powpow</title>
		<link>http://www.mysqlperformanceblog.com/2007/11/03/choosing-innodb_buffer_pool_size/comment-page-1/#comment-794683</link>
		<dc:creator>powpow</dc:creator>
		<pubDate>Thu, 20 Jan 2011 13:47:25 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/2007/11/03/choosing-innodb_buffer_pool_size/#comment-794683</guid>
		<description>hi there,

thx in the first place for your deep-going background information.

my question: i want to tune a big database. we recently upgrade to mysql 5.5.8 @ freebsd 7.1.
the main db is innodb, myisam is used for the mysql-system-tables(small-sized).

the production-innodb-database allocates now of about 50GB of filesystem-space, the dump is about 19GB big. i know that innodb - ibdata - files will never shrink, so i have to drop and import the data to get rid of this. 
the host hast 16GB of RAM, most of this would be available to mysql because there is no other productive service running.

so far i have learned(thanx to your blog!) i definitely want to increase innodb_puffer_pool_size(which is set to just 386MB).
my question is: would i get an additional performance-benefit if i &#039;refragment&#039; the ibdata-file by dropping / importing or would this be a useless exercise?

thx in advance!
harri</description>
		<content:encoded><![CDATA[<p>hi there,</p>
<p>thx in the first place for your deep-going background information.</p>
<p>my question: i want to tune a big database. we recently upgrade to mysql 5.5.8 @ freebsd 7.1.<br />
the main db is innodb, myisam is used for the mysql-system-tables(small-sized).</p>
<p>the production-innodb-database allocates now of about 50GB of filesystem-space, the dump is about 19GB big. i know that innodb &#8211; ibdata &#8211; files will never shrink, so i have to drop and import the data to get rid of this.<br />
the host hast 16GB of RAM, most of this would be available to mysql because there is no other productive service running.</p>
<p>so far i have learned(thanx to your blog!) i definitely want to increase innodb_puffer_pool_size(which is set to just 386MB).<br />
my question is: would i get an additional performance-benefit if i &#8216;refragment&#8217; the ibdata-file by dropping / importing or would this be a useless exercise?</p>
<p>thx in advance!<br />
harri</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: sedat</title>
		<link>http://www.mysqlperformanceblog.com/2007/11/03/choosing-innodb_buffer_pool_size/comment-page-1/#comment-793032</link>
		<dc:creator>sedat</dc:creator>
		<pubDate>Sat, 08 Jan 2011 17:38:01 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/2007/11/03/choosing-innodb_buffer_pool_size/#comment-793032</guid>
		<description>hi there, ain&#039;t there anyone sees some errors like &quot;incorrect information in file ..&quot; when change the innodb_buffer_pool_size and innodb_log_file_size? i see them and couldn&#039;t solve this issue for now. have you any idea to solve this?</description>
		<content:encoded><![CDATA[<p>hi there, ain&#8217;t there anyone sees some errors like &#8220;incorrect information in file ..&#8221; when change the innodb_buffer_pool_size and innodb_log_file_size? i see them and couldn&#8217;t solve this issue for now. have you any idea to solve this?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Furkan Kuru</title>
		<link>http://www.mysqlperformanceblog.com/2007/11/03/choosing-innodb_buffer_pool_size/comment-page-1/#comment-784102</link>
		<dc:creator>Furkan Kuru</dc:creator>
		<pubDate>Thu, 25 Nov 2010 19:31:07 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/2007/11/03/choosing-innodb_buffer_pool_size/#comment-784102</guid>
		<description>Hello,

My Mysql server is heavily loaded, now 300 qps average.

It uses %50 Cpu in average and just 700MB of ram. My server has 8GB and it has over 3GB free. The slow query log seems fine. There are very few and not frequent ones.

I want to be sure that it is returning the cached results and do not touch the disk unnecessarily.

I think the linux OS caches the innodb file but can I trust on that? And is there any good practice to lower cpu usage through buffering or caching?

innodb_buffer_pool_size is set to default value. (8mb)

I have Innodb, MyIsam and Memory tables mixed.

Here is an output from a tuner script

INNODB STATUS
Current InnoDB index space = 238 M
Current InnoDB data space = 294 M
Current InnoDB buffer pool free = 0 %
Current innodb_buffer_pool_size = 8 M

KEY BUFFER
Current MyISAM index space = 113 M
Current key_buffer_size = 192 M
Key cache miss rate is 1 : 63
Key buffer free ratio = 74 %
Your key_buffer_size seems to be fine

QUERY CACHE
Query cache is enabled
Current query_cache_size = 256 M
Current query_cache_used = 19 M
Current query_cache_limit = 1 M
Current Query cache Memory fill ratio = 7.64 %
Current query_cache_min_res_unit = 4 K
Query Cache is 28 % fragmented</description>
		<content:encoded><![CDATA[<p>Hello,</p>
<p>My Mysql server is heavily loaded, now 300 qps average.</p>
<p>It uses %50 Cpu in average and just 700MB of ram. My server has 8GB and it has over 3GB free. The slow query log seems fine. There are very few and not frequent ones.</p>
<p>I want to be sure that it is returning the cached results and do not touch the disk unnecessarily.</p>
<p>I think the linux OS caches the innodb file but can I trust on that? And is there any good practice to lower cpu usage through buffering or caching?</p>
<p>innodb_buffer_pool_size is set to default value. (8mb)</p>
<p>I have Innodb, MyIsam and Memory tables mixed.</p>
<p>Here is an output from a tuner script</p>
<p>INNODB STATUS<br />
Current InnoDB index space = 238 M<br />
Current InnoDB data space = 294 M<br />
Current InnoDB buffer pool free = 0 %<br />
Current innodb_buffer_pool_size = 8 M</p>
<p>KEY BUFFER<br />
Current MyISAM index space = 113 M<br />
Current key_buffer_size = 192 M<br />
Key cache miss rate is 1 : 63<br />
Key buffer free ratio = 74 %<br />
Your key_buffer_size seems to be fine</p>
<p>QUERY CACHE<br />
Query cache is enabled<br />
Current query_cache_size = 256 M<br />
Current query_cache_used = 19 M<br />
Current query_cache_limit = 1 M<br />
Current Query cache Memory fill ratio = 7.64 %<br />
Current query_cache_min_res_unit = 4 K<br />
Query Cache is 28 % fragmented</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Sridhar Subramaniam</title>
		<link>http://www.mysqlperformanceblog.com/2007/11/03/choosing-innodb_buffer_pool_size/comment-page-1/#comment-775566</link>
		<dc:creator>Sridhar Subramaniam</dc:creator>
		<pubDate>Fri, 24 Sep 2010 11:20:57 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/2007/11/03/choosing-innodb_buffer_pool_size/#comment-775566</guid>
		<description>I have machine with configuration of intel(R) Xeon(R) CPU 5160 @3.00GHz 6 GB RAM. and mysql with Innodb tables.
100mb of data is available. i have set normal configuration in ini with query_cache=64mb and innodb_additional_mem_pool_size	16M
innodb_flush_log_at_trx_commit	0
innodb_log_buffer_size	8M
innodb_buffer_pool_size	1G
innodb_log_file_size	24M
innodb_thread_concurrency	16
innodb_lock_wait_timeout	120
max_heap_table_size	64M
max_allowed_packet	16M
query_cache_limit	2M
query_cache_min_res_unit	
slave_net_timeout	
innodb_data_file_path	ibdata1:10M:autoextend
innodb_file_io_threads	4
thread_concurrency	8
innodb_max_dirty_pages_pct	90

When i run the package to generate a report it takes 15 seconds to finish of the process. but normally in PARADOX(the same kind of data) it takes only 3 seconds. can anybody suggest me to fine tune the ini configuration. whatever changes  done in innodb parameters the result stays same. even when i set innodb_buffer_pool_size = 48M instead of 1G the result is same. only difference i could find is when i make query_cache = 0 then the process is increased to 20 seconds instead of 15 seconds. so i set again query_Cache=64M. Can any body suggest me to adjust the configuration to keep my process time same as in paradox? 

Thanks in advance</description>
		<content:encoded><![CDATA[<p>I have machine with configuration of intel(R) Xeon(R) CPU 5160 @3.00GHz 6 GB RAM. and mysql with Innodb tables.<br />
100mb of data is available. i have set normal configuration in ini with query_cache=64mb and innodb_additional_mem_pool_size	16M<br />
innodb_flush_log_at_trx_commit	0<br />
innodb_log_buffer_size	8M<br />
innodb_buffer_pool_size	1G<br />
innodb_log_file_size	24M<br />
innodb_thread_concurrency	16<br />
innodb_lock_wait_timeout	120<br />
max_heap_table_size	64M<br />
max_allowed_packet	16M<br />
query_cache_limit	2M<br />
query_cache_min_res_unit<br />
slave_net_timeout<br />
innodb_data_file_path	ibdata1:10M:autoextend<br />
innodb_file_io_threads	4<br />
thread_concurrency	8<br />
innodb_max_dirty_pages_pct	90</p>
<p>When i run the package to generate a report it takes 15 seconds to finish of the process. but normally in PARADOX(the same kind of data) it takes only 3 seconds. can anybody suggest me to fine tune the ini configuration. whatever changes  done in innodb parameters the result stays same. even when i set innodb_buffer_pool_size = 48M instead of 1G the result is same. only difference i could find is when i make query_cache = 0 then the process is increased to 20 seconds instead of 15 seconds. so i set again query_Cache=64M. Can any body suggest me to adjust the configuration to keep my process time same as in paradox? </p>
<p>Thanks in advance</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: stinky</title>
		<link>http://www.mysqlperformanceblog.com/2007/11/03/choosing-innodb_buffer_pool_size/comment-page-1/#comment-774927</link>
		<dc:creator>stinky</dc:creator>
		<pubDate>Sun, 19 Sep 2010 19:20:55 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/2007/11/03/choosing-innodb_buffer_pool_size/#comment-774927</guid>
		<description>First of all - great information and great work Peter et al. 

I now know we have a major issue with our innodb_buffer_pool_size configuration..... 

Due to the fact that we are using managed virtual services we need to buy memory by chunks. So are there any stats, from &#039;show innodb status;&#039; I assume,  I can use to know if we are starting to make headway in the increases we will be making (by hiring more memory and allocating to innodb_buffer_pool_size). Of course we can do bench marking to know when something is improving, but it is always good to fall back onto stats from the system. We need to make the balance between size of the buffer and cost of memory.

Less importantly, when the innodb_buffer_pool_size is grossly increased (ie 100 times) is there anything else that we should consider? The main thing I can find is that innodb_log_file_size should be increased to about 25% of innodb_buffer_pool_size.  

Thanks again,

Nick Whalan</description>
		<content:encoded><![CDATA[<p>First of all &#8211; great information and great work Peter et al. </p>
<p>I now know we have a major issue with our innodb_buffer_pool_size configuration&#8230;.. </p>
<p>Due to the fact that we are using managed virtual services we need to buy memory by chunks. So are there any stats, from &#8216;show innodb status;&#8217; I assume,  I can use to know if we are starting to make headway in the increases we will be making (by hiring more memory and allocating to innodb_buffer_pool_size). Of course we can do bench marking to know when something is improving, but it is always good to fall back onto stats from the system. We need to make the balance between size of the buffer and cost of memory.</p>
<p>Less importantly, when the innodb_buffer_pool_size is grossly increased (ie 100 times) is there anything else that we should consider? The main thing I can find is that innodb_log_file_size should be increased to about 25% of innodb_buffer_pool_size.  </p>
<p>Thanks again,</p>
<p>Nick Whalan</p>
]]></content:encoded>
	</item>
</channel>
</rss>

