<?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"
	>
<channel>
	<title>Comments on: 10+ Ways to Crash or Overload MySQL</title>
	<atom:link href="http://www.mysqlperformanceblog.com/2007/11/13/10-ways-to-crash-or-overload-mysql/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.mysqlperformanceblog.com/2007/11/13/10-ways-to-crash-or-overload-mysql/</link>
	<description>Everything about MySQL Performance</description>
	<pubDate>Tue, 02 Dec 2008 18:33:56 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5.1</generator>
		<item>
		<title>By: MySQL for Hosting Providers - how do they manage ? &#124; MySQL Performance Blog</title>
		<link>http://www.mysqlperformanceblog.com/2007/11/13/10-ways-to-crash-or-overload-mysql/#comment-395135</link>
		<dc:creator>MySQL for Hosting Providers - how do they manage ? &#124; MySQL Performance Blog</dc:creator>
		<pubDate>Fri, 28 Nov 2008 22:24:32 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/2007/11/13/10-ways-to-crash-or-overload-mysql/#comment-395135</guid>
		<description>[...] to really restrict how much resources single user can consume. I have written over a year ago about 10+ ways to crash or overload MySQL and since that people have come to me and suggested more ways to do the [...]</description>
		<content:encoded><![CDATA[<p>[...] to really restrict how much resources single user can consume. I have written over a year ago about 10+ ways to crash or overload MySQL and since that people have come to me and suggested more ways to do the [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: 5 kedvenc oldalam, amin hasznos volt kockulni &#124;</title>
		<link>http://www.mysqlperformanceblog.com/2007/11/13/10-ways-to-crash-or-overload-mysql/#comment-364231</link>
		<dc:creator>5 kedvenc oldalam, amin hasznos volt kockulni &#124;</dc:creator>
		<pubDate>Thu, 23 Oct 2008 09:45:42 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/2007/11/13/10-ways-to-crash-or-overload-mysql/#comment-364231</guid>
		<description>[...] - http://www.mysqlperformanceblog.com/2007/11/13/10-ways-to-crash-or-overload-mysql/ [...]</description>
		<content:encoded><![CDATA[<p>[...] - <a href="http://www.mysqlperformanceblog.com/2007/11/13/10-ways-to-crash-or-overload-mysql/" rel="nofollow">http://www.mysqlperformanceblog.com/2007/11/13/10-ways-to-crash-or-overload-mysql/</a> [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: gigiduru</title>
		<link>http://www.mysqlperformanceblog.com/2007/11/13/10-ways-to-crash-or-overload-mysql/#comment-198728</link>
		<dc:creator>gigiduru</dc:creator>
		<pubDate>Tue, 20 Nov 2007 00:43:02 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/2007/11/13/10-ways-to-crash-or-overload-mysql/#comment-198728</guid>
		<description>Given this statement: "Really - there are many ways to crash or otherwise made unavailable server with any MySQL version if you have access to it with normal privileges", shouldn't the title be something like "10+ Ways to keep alive MySQL"? 

Not to mention, this blog entry would be even shorter than it actually is right now.</description>
		<content:encoded><![CDATA[<p>Given this statement: &#8220;Really - there are many ways to crash or otherwise made unavailable server with any MySQL version if you have access to it with normal privileges&#8221;, shouldn&#8217;t the title be something like &#8220;10+ Ways to keep alive MySQL&#8221;? </p>
<p>Not to mention, this blog entry would be even shorter than it actually is right now.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: 10 moyens de crasher MySQL</title>
		<link>http://www.mysqlperformanceblog.com/2007/11/13/10-ways-to-crash-or-overload-mysql/#comment-196993</link>
		<dc:creator>10 moyens de crasher MySQL</dc:creator>
		<pubDate>Sun, 18 Nov 2007 16:18:18 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/2007/11/13/10-ways-to-crash-or-overload-mysql/#comment-196993</guid>
		<description>[...] &#160;10+ Ways to Crash or Overload MySQL (0 visite) [...]</description>
		<content:encoded><![CDATA[<p>[...] &nbsp;10+ Ways to Crash or Overload MySQL (0 visite) [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Pythian Group Blog &#187; Blog Archive &#187; Log Buffer #71: a Carnival of the Vanities for DBAs</title>
		<link>http://www.mysqlperformanceblog.com/2007/11/13/10-ways-to-crash-or-overload-mysql/#comment-195202</link>
		<dc:creator>Pythian Group Blog &#187; Blog Archive &#187; Log Buffer #71: a Carnival of the Vanities for DBAs</dc:creator>
		<pubDate>Fri, 16 Nov 2007 17:53:16 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/2007/11/13/10-ways-to-crash-or-overload-mysql/#comment-195202</guid>
		<description>[...] the MySQL Performance Blog, Peter Zaitsev has another list: 10+ Ways to Crash or Overload MySQL. Writes Peter, &#8220;[There] are many ways to crash or otherwise made unavailable server with any [...]</description>
		<content:encoded><![CDATA[<p>[...] the MySQL Performance Blog, Peter Zaitsev has another list: 10+ Ways to Crash or Overload MySQL. Writes Peter, &#8220;[There] are many ways to crash or otherwise made unavailable server with any [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: peter</title>
		<link>http://www.mysqlperformanceblog.com/2007/11/13/10-ways-to-crash-or-overload-mysql/#comment-195176</link>
		<dc:creator>peter</dc:creator>
		<pubDate>Fri, 16 Nov 2007 17:07:48 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/2007/11/13/10-ways-to-crash-or-overload-mysql/#comment-195176</guid>
		<description>Gleb,

What does BENCHMARK give you comparing (for example) to self join of same table without indexes few times or other cpu hog query ?</description>
		<content:encoded><![CDATA[<p>Gleb,</p>
<p>What does BENCHMARK give you comparing (for example) to self join of same table without indexes few times or other cpu hog query ?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Gleb Pakharenko</title>
		<link>http://www.mysqlperformanceblog.com/2007/11/13/10-ways-to-crash-or-overload-mysql/#comment-195001</link>
		<dc:creator>Gleb Pakharenko</dc:creator>
		<pubDate>Fri, 16 Nov 2007 12:57:37 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/2007/11/13/10-ways-to-crash-or-overload-mysql/#comment-195001</guid>
		<description>There is a famous BENCHMARK() to DOS web-sites :)</description>
		<content:encoded><![CDATA[<p>There is a famous BENCHMARK() to DOS web-sites <img src='http://www.mysqlperformanceblog.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: peter</title>
		<link>http://www.mysqlperformanceblog.com/2007/11/13/10-ways-to-crash-or-overload-mysql/#comment-193109</link>
		<dc:creator>peter</dc:creator>
		<pubDate>Wed, 14 Nov 2007 18:45:17 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/2007/11/13/10-ways-to-crash-or-overload-mysql/#comment-193109</guid>
		<description>OK Jeremy, I agree with you - whatever way you look at it it is either bug or nonsense :)</description>
		<content:encoded><![CDATA[<p>OK Jeremy, I agree with you - whatever way you look at it it is either bug or nonsense <img src='http://www.mysqlperformanceblog.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jeremy Cole</title>
		<link>http://www.mysqlperformanceblog.com/2007/11/13/10-ways-to-crash-or-overload-mysql/#comment-193108</link>
		<dc:creator>Jeremy Cole</dc:creator>
		<pubDate>Wed, 14 Nov 2007 18:38:58 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/2007/11/13/10-ways-to-crash-or-overload-mysql/#comment-193108</guid>
		<description>Actually, to add one further bullet point:

* localhost doesn't count either, as it's not really looked up and thus doesn't have an entry to hostname_cache in order to keep count of errors.</description>
		<content:encoded><![CDATA[<p>Actually, to add one further bullet point:</p>
<p>* localhost doesn&#8217;t count either, as it&#8217;s not really looked up and thus doesn&#8217;t have an entry to hostname_cache in order to keep count of errors.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jeremy Cole</title>
		<link>http://www.mysqlperformanceblog.com/2007/11/13/10-ways-to-crash-or-overload-mysql/#comment-193096</link>
		<dc:creator>Jeremy Cole</dc:creator>
		<pubDate>Wed, 14 Nov 2007 18:15:54 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/2007/11/13/10-ways-to-crash-or-overload-mysql/#comment-193096</guid>
		<description>Hi Peter,

Yes, it's strange.  Aborted_connects has no relation to max_connect_errors.  The only place it's ever checked is in sql/sql_parse.cc:

   848      if (!(specialflag &#38; SPECIAL_NO_RESOLVE))
   849      {
...
   861        if (connect_errors &#62; max_connect_errors)
   862          return(ER_HOST_IS_BLOCKED);
   863      }

Where connect_errors comes from:

   851        thd-&#62;main_security_ctx.host=
   852          ip_to_hostname(&#38;thd-&#62;remote.sin_addr, &#38;connect_errors);

There are a couple of things to consider with this:
* Since inc_host_errors is never called on password failure, bad password attempts don't count.
* If you use skip_name_resolve, none of that code is called at all.
* If a host doesn't have a valid PTR (ip to host mapping), nothing is ever counted.

As you probably know, I've been trying to get MySQL to overhaul how it handles hosts for a long time now.  My host cache patches are a good start to this:

http://jcole.us/patches/mysql/5.0/host_cache/

Regards,

Jeremy</description>
		<content:encoded><![CDATA[<p>Hi Peter,</p>
<p>Yes, it&#8217;s strange.  Aborted_connects has no relation to max_connect_errors.  The only place it&#8217;s ever checked is in sql/sql_parse.cc:</p>
<p>   848      if (!(specialflag &amp; SPECIAL_NO_RESOLVE))<br />
   849      {<br />
&#8230;<br />
   861        if (connect_errors &gt; max_connect_errors)<br />
   862          return(ER_HOST_IS_BLOCKED);<br />
   863      }</p>
<p>Where connect_errors comes from:</p>
<p>   851        thd-&gt;main_security_ctx.host=<br />
   852          ip_to_hostname(&amp;thd-&gt;remote.sin_addr, &amp;connect_errors);</p>
<p>There are a couple of things to consider with this:<br />
* Since inc_host_errors is never called on password failure, bad password attempts don&#8217;t count.<br />
* If you use skip_name_resolve, none of that code is called at all.<br />
* If a host doesn&#8217;t have a valid PTR (ip to host mapping), nothing is ever counted.</p>
<p>As you probably know, I&#8217;ve been trying to get MySQL to overhaul how it handles hosts for a long time now.  My host cache patches are a good start to this:</p>
<p><a href="http://jcole.us/patches/mysql/5.0/host_cache/" rel="nofollow">http://jcole.us/patches/mysql/5.0/host_cache/</a></p>
<p>Regards,</p>
<p>Jeremy</p>
]]></content:encoded>
	</item>
</channel>
</rss>
