﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>IT博客-回忆之城-随笔分类-数据库</title><link>http://www.cnitblog.com/xijia0524/category/8926.html</link><description>生命在于折腾</description><language>zh-cn</language><lastBuildDate>Wed, 09 Dec 2015 12:04:32 GMT</lastBuildDate><pubDate>Wed, 09 Dec 2015 12:04:32 GMT</pubDate><ttl>60</ttl><item><title>【转】mysql innodb_open_files设置过大导致的问题</title><link>http://www.cnitblog.com/xijia0524/archive/2015/12/09/90315.html</link><dc:creator>回忆之城</dc:creator><author>回忆之城</author><pubDate>Wed, 09 Dec 2015 03:27:00 GMT</pubDate><guid>http://www.cnitblog.com/xijia0524/archive/2015/12/09/90315.html</guid><wfw:comment>http://www.cnitblog.com/xijia0524/comments/90315.html</wfw:comment><comments>http://www.cnitblog.com/xijia0524/archive/2015/12/09/90315.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xijia0524/comments/commentRss/90315.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xijia0524/services/trackbacks/90315.html</trackback:ping><description><![CDATA[<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">今天上午不断的接到开发同学的反馈，测试环境的一台mysql(5.1.48)，对应的应用总是不断的报连接数拿不到。登陆到机器后发现mysql -uroot连接不上，而netstat -nal |grep 3306|wc -l也只有1200个，而这台机器设置的max_connections=5000，max_user_connections=0，innodb_open_files=60000。</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><span style="white-space: pre"></span>因为这台机器上100+个schema，2w+个表，只是部分应用有反馈，大部分应用还处于可用状态，因此没有做任何处理，采取了kill session的方式（这一次刚好有同学在出问题之前用mysql -uroot连上了），kill后，过了一段时间恢复了，mysql -uroot可以连接了。想当然的认为是某个应用把连接拿完了导致的，还以为解决了。</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><span style="white-space: pre"></span>但是到下午又有同学反馈同样的问题，这次ssh之后mysql -uroot依然连不上，ps发现mysqld是刚刚起的。怀疑mysqld异常重启，看了一下alert日志，发现有大量下面的信息：</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">&nbsp;</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">121203 16:06:54 &nbsp;InnoDB: MySQL and InnoDB data dictionaries are out of sync.</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">InnoDB: Unable to find the AUTOINC column template_id in the InnoDB table test/tc_steppay_templa</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">te.</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">InnoDB: We set the next AUTOINC column value to 0,</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">InnoDB: in effect disabling the AUTOINC next value generation.</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">InnoDB: You can either set the next AUTOINC value explicitly using ALTER TABLE</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">InnoDB: or fix the data dictionary by recreating the table.</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">121203 16:06:54 &nbsp;InnoDB: Assertion failure in thread 46915963758912 in file handler/ha_innodb.cc</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">&nbsp;line 9366</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">InnoDB: Failing assertion: auto_inc &gt; 0</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">InnoDB: We intentionally generate a memory trap.</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">InnoDB: Submit a detailed bug report to http://bugs.mysql.com.</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">InnoDB: If you get repeated assertion failures or crashes, even</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">InnoDB: immediately after the mysqld startup, there may be</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">InnoDB: corruption in the InnoDB tablespace. Please refer to</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">InnoDB: http://dev.mysql.com/doc/refman/5.1/en/forcing-recovery.html</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">InnoDB: about forcing recovery.</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">121203 16:06:54 - mysqld got signal 6 ;</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">This could be because you hit a bug. It is also possible that this binary</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">or one of the libraries it was linked against is corrupt, improperly built,</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">or misconfigured. This error can also be caused by malfunctioning hardware.</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">We will try our best to scrape up some info that will hopefully help diagnose</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">the problem, but since we have already crashed, something is definitely wrong</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">and this may fail.</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">key_buffer_size=104857600</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">read_buffer_size=1048576</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">max_used_connections=4811</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">max_threads=5000</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">threads_connected=4719</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">It is possible that mysqld could use up to</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 5773884 K</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">bytes of memory</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">Hope that's ok; if not, decrease some variables in the equation.</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">&nbsp;</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">thd: 0x2aab595703c0</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">Attempting backtrace. You can use the following information to find out</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">where mysqld died. If you see no messages after this, something went</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">terribly wrong...</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">121203 16:06:54 [ERROR] Error in accept: Resource temporarily unavailable</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">121203 16:06:54 [ERROR] Error in accept: Resource temporarily unavailable</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">121203 16:06:54 [ERROR] Error in accept: Resource temporarily unavailable</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><span style="white-space: pre"></span>日志里面有2个地方比较起眼，&#8220;Resource temporarily unavailable&#8221;，&#8220;&nbsp;Unable to find the AUTOINC column template_id in the InnoDB table test/tc_steppay_template.&#8221;。前面一个应该是资源设置的问题，咨询了印风，是innodb_open_files设置过大(&gt;1024)导致mysql在crash后恢复触发了bug（http://bugs.mysql.com/bug.php?id=48929），详细原因这个bug描述的也比较清楚，就不再多说，这个bug在这台机器的mysql版本里依旧存在。因为是测试环境，设置innodb_open_files=1000(这个参数对性能的影响，可以参考这里http://www.mysqlperformanceblog.com/2009/11/18/how-innodb_open_files-affects-performance/)，重启解决。</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Helvetica, Tahoma, Arial, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><span style="white-space: pre"></span>到这里问题应该算解决了，但是看alert日志不禁要问，为什么mysqld会crash，根据前面的日志似乎是另外一个bug（http://bugs.mysql.com/bug.php?id=55993）。但是test.tc_steppay_template count(*)=0,这个表是没人操作的；另外这台机器物理内存比较小（5632000K）目前这个原因暂时不详。待找到原因再来补充。</p><img src ="http://www.cnitblog.com/xijia0524/aggbug/90315.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xijia0524/" target="_blank">回忆之城</a> 2015-12-09 11:27 <a href="http://www.cnitblog.com/xijia0524/archive/2015/12/09/90315.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转】MySQL远程连接ERROR 2003 (HY000):Can't connect to MySQL server on'XXXXX'的问题</title><link>http://www.cnitblog.com/xijia0524/archive/2015/12/07/90312.html</link><dc:creator>回忆之城</dc:creator><author>回忆之城</author><pubDate>Mon, 07 Dec 2015 09:36:00 GMT</pubDate><guid>http://www.cnitblog.com/xijia0524/archive/2015/12/07/90312.html</guid><wfw:comment>http://www.cnitblog.com/xijia0524/comments/90312.html</wfw:comment><comments>http://www.cnitblog.com/xijia0524/archive/2015/12/07/90312.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xijia0524/comments/commentRss/90312.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xijia0524/services/trackbacks/90312.html</trackback:ping><description><![CDATA[<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">问题描述：<br />&nbsp;</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">从一台linux远程连接另一台linux上的MySQL, 出现ERROR 2003 (HY000): Can't connect to MySQL server on 'xxx.xxx.xxx.85'(111)错误。</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">&nbsp;</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">[mysql@vvm<a style="color: rgb(51,51,51); font-size: 14px; text-decoration: none" class="keylink" href="http://www.2cto.com/kf/ware/vc/" target="_blank">vc</a>s0 ~]$<span class="Apple-converted-space">&nbsp;</span><a style="color: rgb(51,51,51); font-size: 14px; text-decoration: none" class="keylink" href="http://www.2cto.com/database/MySQL/" target="_blank">mysql</a><span class="Apple-converted-space">&nbsp;</span>-hxxx.xxx.xxx.85 -uroot -p</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">Enter password: &nbsp;www.2cto.com &nbsp;</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">ERROR 2003 (HY000): Can't connect to MySQL server on 'xxx.xxx.xxx.85' (111)</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">[mysql@vvmvcs0 ~]$ perror 111</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">OS error code 111: Connection refused</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">查看errorCode</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">&nbsp;</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">[mysql@vvmvcs0 ~]$ perror 111&nbsp;</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">OS error code 111: Connection refused<br />&nbsp;</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">问题分析：</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">1，可能网络连接问，远程ping xxx.xxx.xxx.85 ，能ping通，排除此情况</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">&nbsp;</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">[mysql@vvmvcs0 ~]$ ping xxx.xxx.xxx.85&nbsp;</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">PING xxx.xxx.xxx.85 (xxx.xxx.xxx.85) 56(84) bytes of data.</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">64 bytes from xxx.xxx.xxx.85: icmp_seq=1 ttl=63 time=0.230 ms</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">&nbsp;</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">2，排查可能由于85上my.cnf里配置了skip_networking或者bind_address，只允许本地socket连接</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">2.1 在[mysqld]下设置skip_networking,</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">知识说明： 这使用MySQL只能通过本机Socket连接(socket连接也是本地连接的默认方式），放弃对TCP/IP的监听 &nbsp;www.2cto.com &nbsp;</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">当然也不让本地java程序连接MySQL(Connector/J只能通过TCP/IP来连接）。</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">2.2 可能使用了bind_address=127.0.0.1(当然也可以是其他ip)</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">&nbsp;</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">[mysqld]&nbsp;</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">bind_address=127.0.0.1</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">知识说明：这种情况可以TCP/IP连接</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">通过查看了my.cnf文件，以上两个都是没设置的，排除掉这两种情况<br />&nbsp;</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">3，排查DNS解析问题,检查是否设置了： skip_name_resolve。 这个情况肯定不可能，因为我用的是ip,不是主机名。</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">&nbsp;</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">[mysqld]</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">skip_name_resolve</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">知识说明：这个参数加上后，不支持主机名的连接方式。<br />&nbsp;</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">4, 排查用户和密码问题， 其实用户和密码的错误，不会出现111的，所以排除用户密码问题</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">ERROR 1045 (28000): Access denied for user 'root'@'XXXX' (using password: YES)<br />&nbsp;</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">5，排查--port问题，有可能85的MySQL port不是默认3306， 这样我远程连接时，没有指定--port，用的是3306, 而85上没有对3306进行监听。</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">ps -ef | grep mysqld</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">果然是： 85上的MySQL使用的是3308 port.</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">最终连接方式：加上--port=3308</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">&nbsp;</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">[mysql@vvmvcs0 ~]$ mysql -hxxx.xxx.xxx.85 -uroot -p --port=3308&nbsp;</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">Enter password:&nbsp;</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">Welcome to the MySQL monitor. Commands end with ; or \g.<br />&nbsp;</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">为什么出现这么低级的错误呢？</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">因为我一直在用85上的MySQL, 而且每次都是直接用mysql -uroot就连接上了，没有指定--port，这样我就一直以为这MySQL的port一直是默认的3306的。<br />&nbsp;</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">其实根本原因是：<br />&nbsp;</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">1. MySQL本地连接，如果不指mysql --protocol=tcp, 连接默认是socket方式连接的。这点大家都知道。 &nbsp;www.2cto.com &nbsp;</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">2, MySQL socket连接是根据sokect文件来的，与--port不相关的，如果是一机多实例，则用-S(或者--socket=name ）来指定连接哪个实例。</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">就是这个socket连接对--port无识别效果，导致排查这个问题这么久。</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">见下面： 其实85上只有一个port为3308的MySQL实例，但是用3306仍然是连接上此实例，说明socket连接方式忽略--port参数。</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">&nbsp;</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">-bash-3.2$ mysql -uroot --port=3308</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">&nbsp;Welcome to the MySQL monitor. Commands end with ; or \g.</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">&nbsp;</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">&nbsp;mysql -uroot --port=3306&nbsp;</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">Welcome to the MySQL monitor. Commands end with ; or \g.</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">再次说明基础细节很重要啊。</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">&nbsp;</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">&nbsp;</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">&nbsp;</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">作者 RogerZhuo</div><img src ="http://www.cnitblog.com/xijia0524/aggbug/90312.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xijia0524/" target="_blank">回忆之城</a> 2015-12-07 17:36 <a href="http://www.cnitblog.com/xijia0524/archive/2015/12/07/90312.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转】mysql 恢复(one)数据库及单张表 </title><link>http://www.cnitblog.com/xijia0524/archive/2015/11/02/90269.html</link><dc:creator>回忆之城</dc:creator><author>回忆之城</author><pubDate>Mon, 02 Nov 2015 03:05:00 GMT</pubDate><guid>http://www.cnitblog.com/xijia0524/archive/2015/11/02/90269.html</guid><wfw:comment>http://www.cnitblog.com/xijia0524/comments/90269.html</wfw:comment><comments>http://www.cnitblog.com/xijia0524/archive/2015/11/02/90269.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xijia0524/comments/commentRss/90269.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xijia0524/services/trackbacks/90269.html</trackback:ping><description><![CDATA[<font color="#666666" size="4">1.恢复数据库;</font> 
<div style="text-align: left; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 12px/26px 宋体, Arial; word-wrap: break-word; white-space: normal; color: rgb(102,102,102); word-spacing: 0px; -webkit-text-stroke-width: 0px"></div>
<div style="text-align: left; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 12px/26px 宋体, Arial; word-wrap: break-word; white-space: normal; color: rgb(102,102,102); word-spacing: 0px; -webkit-text-stroke-width: 0px"><font style="word-wrap: break-word" class="Apple-style-span" size="4">一般备份情况,是讲多个DB备份到一个*,.sql文件中,怎么从*.sql中恢复one database?</font></div>
<div style="text-align: left; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 12px/26px 宋体, Arial; word-wrap: break-word; white-space: normal; color: rgb(102,102,102); word-spacing: 0px; -webkit-text-stroke-width: 0px"><font style="word-wrap: break-word" class="Apple-style-span" size="4">方法1: 找个测试DB,将*.sql 全部reload,而后,backup需要的DB,,恢复之</font></div>
<div style="text-align: left; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 12px/26px 宋体, Arial; word-wrap: break-word; white-space: normal; color: rgb(102,102,102); word-spacing: 0px; -webkit-text-stroke-width: 0px"><font style="word-wrap: break-word" class="Apple-style-span" size="4">&nbsp; &nbsp; &nbsp; &nbsp;2:mysql -h ip -Pport -u name -p'passwd' --one-database db_name &lt; /*.sql</font></div>
<div style="text-align: left; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 12px/26px 宋体, Arial; word-wrap: break-word; white-space: normal; color: rgb(102,102,102); word-spacing: 0px; -webkit-text-stroke-width: 0px"><font style="word-wrap: break-word" class="Apple-style-span" size="4"><span style="color: red"><strong>--one-database:mysql只执行你有感兴趣恢复数据库查询;</strong></span></font></div>
<div style="text-align: left; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 12px/26px 宋体, Arial; word-wrap: break-word; white-space: normal; color: rgb(102,102,102); word-spacing: 0px; -webkit-text-stroke-width: 0px"><font style="word-wrap: break-word" class="Apple-style-span" size="4">2,恢复单张表;</font></div>
<div style="text-align: left; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 12px/26px 宋体, Arial; word-wrap: break-word; white-space: normal; color: rgb(102,102,102); word-spacing: 0px; -webkit-text-stroke-width: 0px"><font style="word-wrap: break-word" class="Apple-style-span" size="4">&nbsp;容易做到:<font style="word-wrap: break-word" class="Apple-style-span" face="黑体">找个测试DB,将*.sql全部reload,而后,export 需要table,恢复之;难点:<span style="line-height: 15px; word-wrap: break-word; color: rgb(68,68,68)" class="Apple-style-span">从只运用于该表的更新日志中拉出片断,</span><span style="line-height: 15px; word-wrap: break-word; color: rgb(68,68,68)" class="Apple-style-span">mysql_find_rows 可以从</span></font><span style="line-height: 15px; word-wrap: break-word; color: rgb(68,68,68)" class="Apple-style-span"><font style="word-wrap: break-word" class="Apple-style-span" face="黑体">更新日志中提取多行查询</font></span></font></div>
<div style="text-align: left; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 12px/26px 宋体, Arial; word-wrap: break-word; white-space: normal; color: rgb(102,102,102); word-spacing: 0px; -webkit-text-stroke-width: 0px"><font style="word-wrap: break-word" class="Apple-style-span" size="4"><span style="line-height: 15px; word-wrap: break-word; color: rgb(68,68,68)" class="Apple-style-span"><font style="word-wrap: break-word" class="Apple-style-span" face="黑体"><br style="word-wrap: break-word" /></font></span></font></div>
<div style="text-align: left; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 12px/26px 宋体, Arial; word-wrap: break-word; white-space: normal; color: rgb(102,102,102); word-spacing: 0px; -webkit-text-stroke-width: 0px"><font style="word-wrap: break-word" class="Apple-style-span" color="#444444" size="2" face="黑体"><span style="line-height: 15px; word-wrap: break-word" class="Apple-style-span">不错总结<strong style="word-wrap: break-word">:</strong></span></font></div>
<div style="text-align: left; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 12px/26px 宋体, Arial; word-wrap: break-word; white-space: normal; color: rgb(102,102,102); word-spacing: 0px; -webkit-text-stroke-width: 0px"><font style="word-wrap: break-word" class="Apple-style-span" color="#444444" size="2" face="黑体"><span style="line-height: 15px; word-wrap: break-word" class="Apple-style-span"><strong style="word-wrap: break-word">http://blog.csdn.net/jiedushi/article/details/7222776</strong></span></font></div>
<div style="text-align: left; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 12px/26px 宋体, Arial; word-wrap: break-word; white-space: normal; color: rgb(102,102,102); word-spacing: 0px; -webkit-text-stroke-width: 0px"><font style="word-wrap: break-word" class="Apple-style-span" color="#444444" size="2" face="黑体"><span style="line-height: 15px; word-wrap: break-word" class="Apple-style-span">--利用mysql 物理备份,恢复单张表方法</span></font></div><img src ="http://www.cnitblog.com/xijia0524/aggbug/90269.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xijia0524/" target="_blank">回忆之城</a> 2015-11-02 11:05 <a href="http://www.cnitblog.com/xijia0524/archive/2015/11/02/90269.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>ERROR 1201 (HY000): Could not initialize master info structure; more error messages can be found in</title><link>http://www.cnitblog.com/xijia0524/archive/2015/10/14/90226.html</link><dc:creator>回忆之城</dc:creator><author>回忆之城</author><pubDate>Wed, 14 Oct 2015 07:49:00 GMT</pubDate><guid>http://www.cnitblog.com/xijia0524/archive/2015/10/14/90226.html</guid><wfw:comment>http://www.cnitblog.com/xijia0524/comments/90226.html</wfw:comment><comments>http://www.cnitblog.com/xijia0524/archive/2015/10/14/90226.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xijia0524/comments/commentRss/90226.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xijia0524/services/trackbacks/90226.html</trackback:ping><description><![CDATA[<p style="text-align: left; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 13px/25px Arial; white-space: normal; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-stroke-width: 0px">执行</p>
<p style="text-align: left; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 13px/25px Arial; white-space: normal; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-stroke-width: 0px">change master to master_host='ip', master_port=3306, master_user='xxx',master_password='xxx', master_log_file='mysql-bin.000012',master_log_pos=107;<br /></p>
<p style="text-align: left; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 13px/25px Arial; white-space: normal; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-stroke-width: 0px">抛出错误</p>
<p style="text-align: left; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 13px/25px Arial; white-space: normal; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-stroke-width: 0px">ERROR 1201 (HY000): Could not initialize master info structure; more error messages can be found in the MySQL error log<br /></p>
<p style="text-align: left; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 13px/25px Arial; white-space: normal; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-stroke-width: 0px"><br /></p>
<p style="text-align: left; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 13px/25px Arial; white-space: normal; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-stroke-width: 0px">解决办法：</p>
<p style="text-align: left; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 13px/25px Arial; white-space: normal; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-stroke-width: 0px"><span style="line-height: 28px; font-family: 宋体; color: red; font-size: 14px">stop slave;</span><br /></p>
<p style="text-align: left; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 13px/25px Arial; white-space: normal; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-stroke-width: 0px"><span style="line-height: 28px; font-family: 宋体; color: rgb(51,51,51); font-size: 14px"><span style="line-height: 28px; font-family: 宋体; color: red; font-size: 14px">reset slave;</span></span></p><img src ="http://www.cnitblog.com/xijia0524/aggbug/90226.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xijia0524/" target="_blank">回忆之城</a> 2015-10-14 15:49 <a href="http://www.cnitblog.com/xijia0524/archive/2015/10/14/90226.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转】mysql自动增长后插入数据</title><link>http://www.cnitblog.com/xijia0524/archive/2015/05/06/90090.html</link><dc:creator>回忆之城</dc:creator><author>回忆之城</author><pubDate>Wed, 06 May 2015 09:55:00 GMT</pubDate><guid>http://www.cnitblog.com/xijia0524/archive/2015/05/06/90090.html</guid><wfw:comment>http://www.cnitblog.com/xijia0524/comments/90090.html</wfw:comment><comments>http://www.cnitblog.com/xijia0524/archive/2015/05/06/90090.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xijia0524/comments/commentRss/90090.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xijia0524/services/trackbacks/90090.html</trackback:ping><description><![CDATA[<p style="text-align: left; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 13px/25px Arial; white-space: normal; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-stroke-width: 0px">指定id<br />错误：INSERT INTO test VALUES('test');<br />这样的形式会产生错误，信息大致说数据列不够。<br />Column count doesn't match value count at row 1<br />如果，自己填写id也可以，如下：<br />INSERT INTO test (id, name) VALUES(1,'test');</p>
<p style="text-align: left; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 13px/25px Arial; white-space: normal; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-stroke-width: 0px">正确写法，如下：<br />自动增长Id的插入语句<br /><strong>INSERT INTO test (name) VALUSE('test');</strong></p><img src ="http://www.cnitblog.com/xijia0524/aggbug/90090.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xijia0524/" target="_blank">回忆之城</a> 2015-05-06 17:55 <a href="http://www.cnitblog.com/xijia0524/archive/2015/05/06/90090.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转】 Mysql如何导出某个表中的某一列或几列? </title><link>http://www.cnitblog.com/xijia0524/archive/2015/05/06/90089.html</link><dc:creator>回忆之城</dc:creator><author>回忆之城</author><pubDate>Wed, 06 May 2015 09:54:00 GMT</pubDate><guid>http://www.cnitblog.com/xijia0524/archive/2015/05/06/90089.html</guid><wfw:comment>http://www.cnitblog.com/xijia0524/comments/90089.html</wfw:comment><comments>http://www.cnitblog.com/xijia0524/archive/2015/05/06/90089.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xijia0524/comments/commentRss/90089.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xijia0524/services/trackbacks/90089.html</trackback:ping><description><![CDATA[<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 5px 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/26px 宋体, Arial; word-wrap: break-word; white-space: normal; color: rgb(102,102,102); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">OS:Rhel 5.4</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 5px 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/26px 宋体, Arial; word-wrap: break-word; white-space: normal; color: rgb(102,102,102); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">mysql:mysql 5.1</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 5px 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/26px 宋体, Arial; word-wrap: break-word; white-space: normal; color: rgb(102,102,102); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">需求：需要导出某个表中的某个列，输出到一个文件.</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 5px 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/26px 宋体, Arial; word-wrap: break-word; white-space: normal; color: rgb(102,102,102); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">解决方法1：</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 5px 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/26px 宋体, Arial; word-wrap: break-word; white-space: normal; color: rgb(102,102,102); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">在mysql后台数据库中用select * into outfile命令:</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 5px 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/26px 宋体, Arial; word-wrap: break-word; white-space: normal; color: rgb(102,102,102); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><span style="color: red">mysql&gt;select id from table&nbsp; into outfile 'mysql data所在的目录';</span><br /><span style="text-transform: none; background-color: rgb(246,246,246); text-indent: 32px; letter-spacing: normal; display: inline !important; font: 16px/30px 'Microsoft YaHei'; white-space: normal; float: none; color: red; word-spacing: 0px; -webkit-text-stroke-width: 0px">select * from pre_members into outfile 'mysql data所在的目录' fields terminated by &#8216;,&#8217; enclosed by &#8216;&#8221;&#8216; ;</span><br /></p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 5px 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/26px 宋体, Arial; word-wrap: break-word; white-space: normal; color: rgb(102,102,102); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">(注意：输出的文件目录必须是在mysql,data_dir所在目录，否则，会提示：</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 5px 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/26px 宋体, Arial; word-wrap: break-word; white-space: normal; color: rgb(102,102,102); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">ERROR 1 (HY000): Can't create/write to file '/home/pu/mysql/test' (Errcode: 13)</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 5px 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/26px 宋体, Arial; word-wrap: break-word; white-space: normal; color: rgb(102,102,102); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"></p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 5px 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/26px 宋体, Arial; word-wrap: break-word; white-space: normal; color: rgb(102,102,102); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">解决方法2:</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 5px 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/26px 宋体, Arial; word-wrap: break-word; white-space: normal; color: rgb(102,102,102); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">在shell环境上，执行</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 5px 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/26px 宋体, Arial; word-wrap: break-word; white-space: normal; color: rgb(102,102,102); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><span style="color: red">#mysql -uroot -ppassword -e "select id from databases.table;"&gt;test</span></p><img src ="http://www.cnitblog.com/xijia0524/aggbug/90089.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xijia0524/" target="_blank">回忆之城</a> 2015-05-06 17:54 <a href="http://www.cnitblog.com/xijia0524/archive/2015/05/06/90089.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转】[ERROR] Event Scheduler: Failed to open table mysql.event  MySQL计划任务(事件调度器)(Event Scheduler)</title><link>http://www.cnitblog.com/xijia0524/archive/2015/03/27/90043.html</link><dc:creator>回忆之城</dc:creator><author>回忆之城</author><pubDate>Fri, 27 Mar 2015 05:36:00 GMT</pubDate><guid>http://www.cnitblog.com/xijia0524/archive/2015/03/27/90043.html</guid><wfw:comment>http://www.cnitblog.com/xijia0524/comments/90043.html</wfw:comment><comments>http://www.cnitblog.com/xijia0524/archive/2015/03/27/90043.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xijia0524/comments/commentRss/90043.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xijia0524/services/trackbacks/90043.html</trackback:ping><description><![CDATA[<p style="padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 13px/23px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(17,17,17); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; font-size: small; padding-top: 0px">MySQL5.1.x版本中引入了一项新特性EVENT，顾名思义就是事件、定时任务机制，在指定的时间单元内执行特定的任务，因此今后一些对数据定时性操作不再依赖外部程序，而直接使用数据库本身提供的功能。</span></p>
<p style="padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 13px/23px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(17,17,17); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; font-size: small; padding-top: 0px"><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; color: rgb(153,0,0); padding-top: 0px">要查看当前是否已开启事件调度器</span>，可执行如下SQL：</span></p>
<p style="padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 13px/23px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(17,17,17); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; font-size: small; padding-top: 0px">SHOW VARIABLES LIKE 'event_scheduler';<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />或</span></p>
<p style="padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 13px/23px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(17,17,17); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; font-size: small; padding-top: 0px">SELECT @@event_scheduler;<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />或</span></p>
<p style="padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 13px/23px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(17,17,17); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; font-size: small; padding-top: 0px">SHOW PROCESSLIST;<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />若显示：</span></p>
<p style="padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 13px/23px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(17,17,17); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; font-size: small; padding-top: 0px">+-----------------+-------+<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />| Variable_name&nbsp;&nbsp; | Value |<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />+-----------------+-------+<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />| event_scheduler | OFF&nbsp;&nbsp; |<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />+-----------------+-------+<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />则可执行</span></p>
<p style="padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 13px/23px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(17,17,17); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; font-size: small; padding-top: 0px">SET GLOBAL event_scheduler = 1;<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />或</span></p>
<p style="padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 13px/23px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(17,17,17); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; font-size: small; padding-top: 0px">SET GLOBAL event_scheduler = ON;<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />来开启，也可以直接在启动命令加上&#8220;&#8211;event_scheduler=1&#8221;，例如：</span></p>
<p style="padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 13px/23px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(17,17,17); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; color: red; font-size: small; padding-top: 0px"><strong>mysqld ... --event_scheduler=1</strong></span></p>
<p style="padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 13px/23px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(17,17,17); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; color: red; font-size: small; padding-top: 0px"><strong>my.ini or my.cnf 中的</strong></span><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; font-size: small; padding-top: 0px"><strong><br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" /></strong></span><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; color: red; font-size: small; padding-top: 0px">[mysqld]<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" /></span><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; color: red; font-size: small; padding-top: 0px"><strong>添加 event_scheduler=ON</strong></span></p>
<p style="padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 13px/23px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(17,17,17); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; font-size: small; padding-top: 0px"><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; color: rgb(153,0,0); padding-top: 0px">创建事件(CREATE EVENT)</span><br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />先来看一下它的语法：</span></p>
<p style="padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 13px/23px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(17,17,17); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; font-size: small; padding-top: 0px">CREATE EVENT [IF NOT EXISTS] event_name<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />ON SCHEDULE schedule<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />[ON COMPLETION [NOT] PRESERVE]<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />[ENABLE | DISABLE]<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />[COMMENT 'comment']<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />DO sql_statement;</span></p>
<p style="padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 13px/23px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(17,17,17); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; font-size: small; padding-top: 0px">schedule:<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />AT TIMESTAMP [+ INTERVAL INTERVAL]<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />| EVERY INTERVAL [STARTS TIMESTAMP] [ENDS TIMESTAMP]</span></p>
<p style="padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 13px/23px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(17,17,17); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; font-size: small; padding-top: 0px">INTERVAL:<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />quantity {YEAR | QUARTER | MONTH | DAY | HOUR | MINUTE |<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; WEEK | SECOND | YEAR_MONTH | DAY_HOUR | DAY_MINUTE |<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DAY_SECOND | HOUR_MINUTE | HOUR_SECOND | MINUTE_SECOND}</span></p>
<p style="padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 13px/23px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(17,17,17); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; font-size: small; padding-top: 0px">1)首先来看一个简单的例子来演示每秒插入一条记录到数据表</span></p>
<p style="padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 13px/23px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(17,17,17); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; font-size: small; padding-top: 0px">USE test;<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />CREATE TABLE aaa (timeline TIMESTAMP);<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />CREATE EVENT e_test_insert<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />ON SCHEDULE EVERY 1 SECOND&nbsp;<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />DO INSERT INTO test.aaa VALUES (CURRENT_TIMESTAMP);<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />等待3秒钟后，再执行查询成功。</span></p>
<p style="padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 13px/23px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(17,17,17); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; font-size: small; padding-top: 0px">2) 5天后清空test表：</span></p>
<p style="padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 13px/23px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(17,17,17); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; font-size: small; padding-top: 0px">CREATE EVENT e_test<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 5 DAY<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />DO TRUNCATE TABLE test.aaa;<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />3) 2007年7月20日12点整清空test表：</span></p>
<p style="padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 13px/23px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(17,17,17); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; font-size: small; padding-top: 0px">CREATE EVENT e_test<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />ON SCHEDULE AT TIMESTAMP '2007-07-20 12:00:00'<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />DO TRUNCATE TABLE test.aaa;<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />4) 每天定时清空test表：</span></p>
<p style="padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 13px/23px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(17,17,17); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; font-size: small; padding-top: 0px">CREATE EVENT e_test<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />ON SCHEDULE EVERY 1 DAY<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />DO TRUNCATE TABLE test.aaa;<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />5) 5天后开启每天定时清空test表：</span></p>
<p style="padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 13px/23px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(17,17,17); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; font-size: small; padding-top: 0px">CREATE EVENT e_test<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />ON SCHEDULE EVERY 1 DAY<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />STARTS CURRENT_TIMESTAMP + INTERVAL 5 DAY<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />DO TRUNCATE TABLE test.aaa;<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />6) 每天定时清空test表，5天后停止执行：</span></p>
<p style="padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 13px/23px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(17,17,17); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; font-size: small; padding-top: 0px">CREATE EVENT e_test<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />ON SCHEDULE EVERY 1 DAY<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />ENDS CURRENT_TIMESTAMP + INTERVAL 5 DAY<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />DO TRUNCATE TABLE test.aaa;<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />7) 5天后开启每天定时清空test表，一个月后停止执行：</span></p>
<p style="padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 13px/23px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(17,17,17); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; font-size: small; padding-top: 0px">CREATE EVENT e_test<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />ON SCHEDULE EVERY 1 DAY<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />STARTS CURRENT_TIMESTAMP + INTERVAL 5 DAY<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />ENDS CURRENT_TIMESTAMP + INTERVAL 1 MONTH<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />DO TRUNCATE TABLE test.aaa;<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />[ON COMPLETION [NOT] PRESERVE]可以设置这个事件是执行一次还是持久执行，默认为NOT PRESERVE。<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />8) 每天定时清空test表(只执行一次，任务完成后就终止该事件)：</span></p>
<p style="padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 13px/23px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(17,17,17); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; font-size: small; padding-top: 0px">CREATE EVENT e_test<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />ON SCHEDULE EVERY 1 DAY<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />ON COMPLETION NOT PRESERVE<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />DO TRUNCATE TABLE test.aaa;<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />[ENABLE | DISABLE]可是设置该事件创建后状态是否开启或关闭，默认为ENABLE。<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />[COMMENT &#8216;comment&#8217;]可以给该事件加上注释。</span></p>
<p style="padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 13px/23px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(17,17,17); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; font-size: small; padding-top: 0px"><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; color: rgb(153,0,0); padding-top: 0px">修改事件(ALTER EVENT)</span><br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />ALTER EVENT event_name<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />[ON SCHEDULE schedule]<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />[RENAME TO new_event_name]<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />[ON COMPLETION [NOT] PRESERVE]<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />[COMMENT 'comment']<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />[ENABLE | DISABLE]<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />[DO sql_statement]<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />1) 临时关闭事件</span></p>
<p style="padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 13px/23px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(17,17,17); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; font-size: small; padding-top: 0px">ALTER EVENT e_test DISABLE;<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />2) 开启事件</span></p>
<p style="padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 13px/23px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(17,17,17); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; font-size: small; padding-top: 0px">ALTER EVENT e_test ENABLE;<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />3) 将每天清空test表改为5天清空一次：</span></p>
<p style="padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 13px/23px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(17,17,17); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; font-size: small; padding-top: 0px">ALTER EVENT e_test<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />ON SCHEDULE EVERY 5 DAY;</span></p>
<p style="padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 13px/23px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(17,17,17); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; font-size: small; padding-top: 0px"><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; color: rgb(153,0,0); padding-top: 0px">删除事件(DROP EVENT)</span><br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />语法很简单，如下所示：</span></p>
<p style="padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 13px/23px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(17,17,17); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; font-size: small; padding-top: 0px">DROP EVENT [IF EXISTS] event_name<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />例如删除前面创建的e_test事件</span></p>
<p style="padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 13px/23px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(17,17,17); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; font-size: small; padding-top: 0px">DROP EVENT e_test;<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />当然前提是这个事件存在，否则会产生ERROR 1513 (HY000): Unknown event错误，因此最好加上IF EXISTS</span></p>
<p style="padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 13px/23px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(17,17,17); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; font-size: small; padding-top: 0px">DROP EVENT IF EXISTS e_test;</span></p><img src ="http://www.cnitblog.com/xijia0524/aggbug/90043.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xijia0524/" target="_blank">回忆之城</a> 2015-03-27 13:36 <a href="http://www.cnitblog.com/xijia0524/archive/2015/03/27/90043.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转】MySQL “Bind on TCP/IP port: Address already in use”</title><link>http://www.cnitblog.com/xijia0524/archive/2015/03/27/90042.html</link><dc:creator>回忆之城</dc:creator><author>回忆之城</author><pubDate>Fri, 27 Mar 2015 05:26:00 GMT</pubDate><guid>http://www.cnitblog.com/xijia0524/archive/2015/03/27/90042.html</guid><wfw:comment>http://www.cnitblog.com/xijia0524/comments/90042.html</wfw:comment><comments>http://www.cnitblog.com/xijia0524/archive/2015/03/27/90042.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xijia0524/comments/commentRss/90042.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xijia0524/services/trackbacks/90042.html</trackback:ping><description><![CDATA[<p style="text-align: justify; text-transform: none; background-color: rgb(250,250,252); text-indent: 0px; letter-spacing: normal; font: 14px/22px tahoma, 宋体; white-space: normal; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-stroke-width: 0px">最近在已部署MySQL Enterprise Monitor的服务器上新增了MySQL实例，导致MySQL Enterprise Monitor异常宕机了，无法重新启动成功。收到了Bind on TCP/IP port: Address already in use的错误提示。下面是这个问题的解决办法，供大家参考。</p>
<p style="text-align: justify; text-transform: none; background-color: rgb(250,250,252); text-indent: 0px; letter-spacing: normal; font: 14px/22px tahoma, 宋体; white-space: normal; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-stroke-width: 0px">1、故障现象<br />[root@SZAPP03 init.d]# ./mysql-monitor-server start<br />Starting mysql service&nbsp; [ OK ]<br />150127 09:57:34 mysqld_safe Logging to '/opt/mysql/enterprise/monitor/mysql/runtime/mysqld.log'.<br />150127 09:57:35 mysqld_safe Starting mysqld daemon with databases from /opt/mysql/enterprise/monitor/mysql/data/<br />./mysql-monitor-server : tomcat&nbsp; (pid 28303) already running<br />150127 09:57:42 mysqld_safe mysqld from pid file /opt/mysql/enterprise/monitor/mysql/runtime/mysqld.pid ended</p>
<p style="text-align: justify; text-transform: none; background-color: rgb(250,250,252); text-indent: 0px; letter-spacing: normal; font: 14px/22px tahoma, 宋体; white-space: normal; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-stroke-width: 0px"><br />2、故障分析<br />#查看日志，提示为Bind on TCP/IP port: Address already in use，地址在使用，如下<br />[root@SZAPP03 init.d]# tail -100 /opt/mysql/enterprise/monitor/mysql/runtime/mysqld.log |grep "ERROR" -A5<br />2015-01-27 09:57:36 30753 [ERROR] Can't start server: Bind on TCP/IP port: Address already in use<br />2015-01-27 09:57:36 30753 [ERROR] Do you already have another mysqld server running on port: 13306 ?<br />2015-01-27 09:57:36 30753 [ERROR] Aborting</p>
<p style="text-align: justify; text-transform: none; background-color: rgb(250,250,252); text-indent: 0px; letter-spacing: normal; font: 14px/22px tahoma, 宋体; white-space: normal; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-stroke-width: 0px">2015-01-27 09:57:36 30753 [Note] Binlog end<br />2015-01-27 09:57:36 30753 [Note] Shutting down plugin 'partition'<br />2015-01-27 09:57:36 30753 [Note] Shutting down plugin 'ARCHIVE'<br />2015-01-27 09:57:36 30753 [Note] Shutting down plugin 'BLACKHOLE'<br />2015-01-27 09:57:36 30753 [Note] Shutting down plugin 'ARCHIVE'<br />2015-01-27 09:57:36 30753 [Note] Shutting down plugin 'BLACKHOLE'</p>
<p style="text-align: justify; text-transform: none; background-color: rgb(250,250,252); text-indent: 0px; letter-spacing: normal; font: 14px/22px tahoma, 宋体; white-space: normal; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-stroke-width: 0px">#根据上述错误提示，核查缺省的mysql enterprise monitor 端口号13306，如下，并没有被占用<br />[root@SZAPP03 init.d]#<strong style="color: red"> netstat -nltp|grep mysql</strong><strong><br /></strong>tcp&nbsp; &nbsp; &nbsp; &nbsp; 0&nbsp; &nbsp; &nbsp; 0 :::3306&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; :::*&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; LISTEN&nbsp; &nbsp; &nbsp; 8734/mysqld&nbsp; &nbsp; &nbsp; &nbsp;<span class="Apple-converted-space">&nbsp;</span><br />tcp&nbsp; &nbsp; &nbsp; &nbsp; 0&nbsp; &nbsp; &nbsp; 0 :::3307&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; :::*&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; LISTEN&nbsp; &nbsp; &nbsp; 9489/mysqld&nbsp;</p>
<p style="text-align: justify; text-transform: none; background-color: rgb(250,250,252); text-indent: 0px; letter-spacing: normal; font: 14px/22px tahoma, 宋体; white-space: normal; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-stroke-width: 0px"><br />3、故障解决</p>
<p style="text-align: justify; text-transform: none; background-color: rgb(250,250,252); text-indent: 0px; letter-spacing: normal; font: 14px/22px tahoma, 宋体; white-space: normal; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-stroke-width: 0px">#故障现象里有一个提示为tomcat&nbsp; (pid 28303) already running<br />#这个引起了我的注意，于是尝试先kill到tomcat相关进程<br />[root@SZAPP03 init.d]# ps -ef|grep 28303|grep -v grep<br />mysqlmem 28303 28302&nbsp; 4 Jan20 ?&nbsp; &nbsp; &nbsp; &nbsp; 07:35:03 jsvc.exec -java-home /opt/mysql/enterprise/monitor/java<span class="Apple-converted-space">&nbsp;</span><br />&nbsp;-user mysqlmem -pidfile /opt/mysql/enterprise/monitor/apache-tomcat/temp/catalina.pid -wait 10 -outfile<span class="Apple-converted-space">&nbsp;</span><br />&nbsp;/opt/mysql/enterprise/monitor/apache-tomcat/logs/catalina-daemon.out -errfile &amp;1 -classpath<span class="Apple-converted-space">&nbsp;</span><br />&nbsp;/opt/mysql/enterprise/monitor/apache-tomcat/bin/bootstrap.jar:<br />&nbsp;/opt/mysql/enterprise/monitor/apache-tomcat/bin/commons-daemon.jar:<br />&nbsp;/opt/mysql/enterprise/monitor/apache-tomcat/bin/tomcat-juli.jar -Dnop -Xmx768M -Xms768M<span class="Apple-converted-space">&nbsp;</span><br />&nbsp;-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/opt/mysql/enterprise/monitor/apache-tomcat/temp<span class="Apple-converted-space">&nbsp;</span><br />&nbsp;-XX:+UseParallelOldGC -XX:MaxPermSize=512M -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager<br />&nbsp;-Djava.endorsed.dirs= -Dcatalina.base=/opt/mysql/enterprise/monitor/apache-tomcat<br />&nbsp;-Dcatalina.home=/opt/mysql/enterprise/monitor/apache-tomcat<span class="Apple-converted-space">&nbsp;</span><br />&nbsp;-Djava.io.tmpdir=/opt/mysql/enterprise/monitor/apache-tomcat/temp org.apache.catalina.startup.Bootstrap</p>
<p style="text-align: justify; text-transform: none; background-color: rgb(250,250,252); text-indent: 0px; letter-spacing: normal; font: 14px/22px tahoma, 宋体; white-space: normal; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-stroke-width: 0px">[root@SZAPP03 init.d]# kill -9 28303<br />#再次检查是否有tomcat相关进程存在，逐一kill tomcat相关进程<br />[root@SZAPP03 init.d]# ps -ef|grep tomcat<br />[root@SZAPP03 init.d]# kill -9 28302<br />[root@SZAPP03 init.d]# kill -9 30867<br /># Author : Leshami<br /># Blog&nbsp; :<span class="Apple-converted-space">&nbsp;</span><a style="color: rgb(179,43,213); text-decoration: underline" href="http://www.linuxidc.com/">http://www.linuxidc.com</a></p>
<p style="text-align: justify; text-transform: none; background-color: rgb(250,250,252); text-indent: 0px; letter-spacing: normal; font: 14px/22px tahoma, 宋体; white-space: normal; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-stroke-width: 0px">#再次重新启动mysql em，此时启动正常<br />[root@SZAPP03 init.d]# ./mysql-monitor-server start<br />Starting mysql service&nbsp; [ OK ]<br />150127 10:16:08 mysqld_safe Logging to '/opt/mysql/enterprise/monitor/mysql/runtime/mysqld.log'.<br />150127 10:16:08 mysqld_safe Starting mysqld daemon with databases from /opt/mysql/enterprise/monitor/mysql/data/<br />Starting tomcat service&nbsp; [ OK ]</p>
<p style="text-align: justify; text-transform: none; background-color: rgb(250,250,252); text-indent: 0px; letter-spacing: normal; font: 14px/22px tahoma, 宋体; white-space: normal; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-stroke-width: 0px">#检查mysql em的状态<br />[root@SZAPP03 init.d]# ./mysql-monitor-server status<br />MySQL Enterprise MySQL is running<br />MySQL Enterprise Tomcat is running</p>
<p style="text-align: justify; text-transform: none; background-color: rgb(250,250,252); text-indent: 0px; letter-spacing: normal; font: 14px/22px tahoma, 宋体; white-space: normal; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-stroke-width: 0px">#检查mysql 的端口号<br />[root@SZAPP03 init.d]# netstat -nltp|grep mysql<br />tcp&nbsp; &nbsp; &nbsp; &nbsp; 0&nbsp; &nbsp; &nbsp; 0 :::3306&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; :::*&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; LISTEN&nbsp; &nbsp; &nbsp; 8734/mysqld&nbsp; &nbsp; &nbsp; &nbsp;<span class="Apple-converted-space">&nbsp;</span><br />tcp&nbsp; &nbsp; &nbsp; &nbsp; 0&nbsp; &nbsp; &nbsp; 0 :::3307&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; :::*&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; LISTEN&nbsp; &nbsp; &nbsp; 9489/mysqld&nbsp; &nbsp; &nbsp; &nbsp;<span class="Apple-converted-space">&nbsp;</span><br />tcp&nbsp; &nbsp; &nbsp; &nbsp; 0&nbsp; &nbsp; &nbsp; 0 :::13306&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; :::*&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; LISTEN&nbsp; &nbsp; &nbsp; 31584/mysqld</p>
<p style="text-align: justify; text-transform: none; background-color: rgb(250,250,252); text-indent: 0px; letter-spacing: normal; font: 14px/22px tahoma, 宋体; white-space: normal; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-stroke-width: 0px">--------------------------------------分割线 --------------------------------------</p>
<p style="text-align: justify; text-transform: none; background-color: rgb(250,250,252); text-indent: 0px; letter-spacing: normal; font: 14px/22px tahoma, 宋体; white-space: normal; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-stroke-width: 0px"><a style="color: rgb(179,43,213); text-decoration: underline" title="Ubuntu" href="http://www.linuxidc.com/topicnews.aspx?tid=2" target="_blank">Ubuntu</a><span class="Apple-converted-space">&nbsp;</span>14.04下安装MySQL<span class="Apple-converted-space">&nbsp;</span><a style="color: rgb(179,43,213); text-decoration: underline" href="http://www.linuxidc.com/Linux/2014-05/102366.htm">http://www.linuxidc.com/Linux/2014-05/102366.htm</a></p>
<p style="text-align: justify; text-transform: none; background-color: rgb(250,250,252); text-indent: 0px; letter-spacing: normal; font: 14px/22px tahoma, 宋体; white-space: normal; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-stroke-width: 0px">《MySQL权威指南(原书第2版)》清晰中文扫描版 PDF<span class="Apple-converted-space">&nbsp;</span><a style="color: rgb(179,43,213); text-decoration: underline" href="http://www.linuxidc.com/Linux/2014-03/98821.htm">http://www.linuxidc.com/Linux/2014-03/98821.htm</a></p>
<p style="text-align: justify; text-transform: none; background-color: rgb(250,250,252); text-indent: 0px; letter-spacing: normal; font: 14px/22px tahoma, 宋体; white-space: normal; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-stroke-width: 0px">Ubuntu 14.04 LTS 安装 LNMP Nginx\PHP5 (PHP-FPM)\MySQL<span class="Apple-converted-space">&nbsp;</span><a style="color: rgb(179,43,213); text-decoration: underline" href="http://www.linuxidc.com/Linux/2014-05/102351.htm">http://www.linuxidc.com/Linux/2014-05/102351.htm</a></p>
<p style="text-align: justify; text-transform: none; background-color: rgb(250,250,252); text-indent: 0px; letter-spacing: normal; font: 14px/22px tahoma, 宋体; white-space: normal; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-stroke-width: 0px">Ubuntu 14.04下搭建MySQL主从服务器<span class="Apple-converted-space">&nbsp;</span><a style="color: rgb(179,43,213); text-decoration: underline" href="http://www.linuxidc.com/Linux/2014-05/101599.htm">http://www.linuxidc.com/Linux/2014-05/101599.htm</a></p>
<p style="text-align: justify; text-transform: none; background-color: rgb(250,250,252); text-indent: 0px; letter-spacing: normal; font: 14px/22px tahoma, 宋体; white-space: normal; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-stroke-width: 0px">Ubuntu 12.04 LTS 构建高可用分布式 MySQL 集群<span class="Apple-converted-space">&nbsp;</span><a style="color: rgb(179,43,213); text-decoration: underline" href="http://www.linuxidc.com/Linux/2013-11/93019.htm">http://www.linuxidc.com/Linux/2013-11/93019.htm</a></p>
<p style="text-align: justify; text-transform: none; background-color: rgb(250,250,252); text-indent: 0px; letter-spacing: normal; font: 14px/22px tahoma, 宋体; white-space: normal; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-stroke-width: 0px">Ubuntu 12.04下源代码安装MySQL5.6以及Python-MySQLdb<span class="Apple-converted-space">&nbsp;</span><a style="color: rgb(179,43,213); text-decoration: underline" href="http://www.linuxidc.com/Linux/2013-08/89270.htm">http://www.linuxidc.com/Linux/2013-08/89270.htm</a></p>
<p style="text-align: justify; text-transform: none; background-color: rgb(250,250,252); text-indent: 0px; letter-spacing: normal; font: 14px/22px tahoma, 宋体; white-space: normal; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-stroke-width: 0px">MySQL-5.5.38通用二进制安装<span class="Apple-converted-space">&nbsp;</span><a style="color: rgb(179,43,213); text-decoration: underline" href="http://www.linuxidc.com/Linux/2014-07/104509.htm">http://www.linuxidc.com/Linux/2014-07/104509.htm</a></p>
<p style="text-align: justify; text-transform: none; background-color: rgb(250,250,252); text-indent: 0px; letter-spacing: normal; font: 14px/22px tahoma, 宋体; white-space: normal; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-stroke-width: 0px">--------------------------------------分割线 --------------------------------------</p>
<p style="text-align: justify; text-transform: none; background-color: rgb(250,250,252); text-indent: 0px; letter-spacing: normal; font: 14px/22px tahoma, 宋体; white-space: normal; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-stroke-width: 0px"><strong>本文永久更新链接地址</strong>：<a style="color: rgb(179,43,213); text-decoration: underline" href="http://www.linuxidc.com/Linux/2015-01/112457.htm">http://www.linuxidc.com/Linux/2015-01/112457.htm</a></p><img src ="http://www.cnitblog.com/xijia0524/aggbug/90042.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xijia0524/" target="_blank">回忆之城</a> 2015-03-27 13:26 <a href="http://www.cnitblog.com/xijia0524/archive/2015/03/27/90042.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转】Operating system error number 13 in a file operation</title><link>http://www.cnitblog.com/xijia0524/archive/2015/03/27/90041.html</link><dc:creator>回忆之城</dc:creator><author>回忆之城</author><pubDate>Fri, 27 Mar 2015 05:24:00 GMT</pubDate><guid>http://www.cnitblog.com/xijia0524/archive/2015/03/27/90041.html</guid><wfw:comment>http://www.cnitblog.com/xijia0524/comments/90041.html</wfw:comment><comments>http://www.cnitblog.com/xijia0524/archive/2015/03/27/90041.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xijia0524/comments/commentRss/90041.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xijia0524/services/trackbacks/90041.html</trackback:ping><description><![CDATA[<p style="text-align: left; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 14px/26px Arial; white-space: normal; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-stroke-width: 0px">nnobackupex 备份时遇到下述错误：</p>
<p style="text-align: left; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 14px/26px Arial; white-space: normal; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-stroke-width: 0px"><strong><span style="color: rgb(255,0,0)">InnoDB: Operating system error number 13 in a file operation.<br />InnoDB: The error means mysqld does not have the access rights to<br />InnoDB: the directory.<br />InnoDB: os_file_readdir_next_file() returned -1 in directory ./etc, crash recovery may have failed for some .ibd files!<br />InnoDB: Operating system error number 13 in a file operation.<br />InnoDB: The error means mysqld does not have the access rights to<br />InnoDB: the directory.<br />innobackupex: Error: The xtrabackup child process has died at /usr/bin/innobackupex line 2681.</span></strong></p>
<p style="text-align: left; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 14px/26px Arial; white-space: normal; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-stroke-width: 0px">问问google说可能是selinux引起的。</p>
<p style="text-align: left; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 14px/26px Arial; white-space: normal; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-stroke-width: 0px"><strong style="color: red"># getenforce&nbsp; 和 ls -Z&nbsp; 检查发现果然是和selinux有关。</strong></p>
<p style="text-align: left; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 14px/26px Arial; white-space: normal; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-stroke-width: 0px">生产环境，先关掉selinux，在用chcon去修改selinux文件属性，我想还是算了吧。</p>
<p style="text-align: left; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 14px/26px Arial; white-space: normal; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-stroke-width: 0px">切换到root用户，执行备份命令，ok。</p>
<p style="text-align: left; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 14px/26px Arial; white-space: normal; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-stroke-width: 0px">拿到备份去做恢复的时候，感觉备份文件比较小。解压一看，发现数据库没备份成功。<br /><br /><strong style="color: red">检查ibdata1文件权限，修改权限为660</strong></p><img src ="http://www.cnitblog.com/xijia0524/aggbug/90041.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xijia0524/" target="_blank">回忆之城</a> 2015-03-27 13:24 <a href="http://www.cnitblog.com/xijia0524/archive/2015/03/27/90041.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转】mysql远程连接数据库慢的解决方案</title><link>http://www.cnitblog.com/xijia0524/archive/2015/03/17/90013.html</link><dc:creator>回忆之城</dc:creator><author>回忆之城</author><pubDate>Tue, 17 Mar 2015 09:38:00 GMT</pubDate><guid>http://www.cnitblog.com/xijia0524/archive/2015/03/17/90013.html</guid><wfw:comment>http://www.cnitblog.com/xijia0524/comments/90013.html</wfw:comment><comments>http://www.cnitblog.com/xijia0524/archive/2015/03/17/90013.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xijia0524/comments/commentRss/90013.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xijia0524/services/trackbacks/90013.html</trackback:ping><description><![CDATA[<h1 style="text-align: left; padding-bottom: 0px; line-height: 26px; text-transform: none; background-color: rgb(255,255,255); font-variant: normal; font-style: normal; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font-family: Arial; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">一、环境</h1>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/26px Arial; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><span style="white-space: pre"></span>数据库为mysql5.0</p>
<h1 style="text-align: left; padding-bottom: 0px; line-height: 26px; text-transform: none; background-color: rgb(255,255,255); font-variant: normal; font-style: normal; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font-family: Arial; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><a style="color: rgb(202,0,0); text-decoration: none" name="t1"></a>二、问题描述</h1>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/26px Arial; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><span style="white-space: pre"></span>mysql在使用远程连接时，建立连接很慢，几十秒到一分多钟。</p>
<h1 style="text-align: left; padding-bottom: 0px; line-height: 26px; text-transform: none; background-color: rgb(255,255,255); font-variant: normal; font-style: normal; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font-family: Arial; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><a style="color: rgb(202,0,0); text-decoration: none" name="t2"></a>三、解决方案</h1>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/26px Arial; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">1、在mysql安装目录下的my.ini(windows系统)配置文件中找到[mysqld],在该行的下面添加如下配置</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/26px Arial; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"></p>
<div style="text-align: left; text-transform: none; background-color: rgb(231,229,220); text-indent: 0px; margin: 18px 0px; width: 936px; letter-spacing: normal; font: 12px/26px Consolas, 'Courier New', Courier, mono, serif; white-space: normal; color: rgb(0,0,0); overflow: auto; word-spacing: 0px; padding-top: 1px; -webkit-text-stroke-width: 0px" class="dp-highlighter bg_html">
<div style="padding-left: 45px" class="bar">
<div style="border-left: rgb(108,226,108) 3px solid; padding-bottom: 10px; background-color: rgb(248,248,248); padding-left: 10px; padding-right: 8px; font: 9px Verdana, Geneva, Arial, Helvetica, sans-serif; color: silver; padding-top: 3px" class="tools"><strong>[html]</strong><span class="Apple-converted-space">&nbsp;</span><a style="background-image: url(http://static.blog.csdn.net/scripts/SyntaxHighlighter/styles/images/default/ico_plain.gif); border-bottom: medium none; border-left: medium none; padding-bottom: 1px; text-indent: -2000px; margin: 0px 10px 0px 0px; padding-left: 1px; width: 16px; padding-right: 1px; display: inline-block; background-position: 0% 0%; height: 16px; color: rgb(160,160,160); font-size: 9px; border-top: medium none; border-right: medium none; text-decoration: none; padding-top: 1px" class="ViewSource" title="view plain" onclick="dp.sh.Toolbar.Command('ViewSource',this);return false;" href="http://blog.csdn.net/cyxlzzs/article/details/8143615#">view plain</a><a style="background-image: url(http://static.blog.csdn.net/scripts/SyntaxHighlighter/styles/images/default/ico_copy.gif); border-bottom: medium none; border-left: medium none; padding-bottom: 1px; text-indent: -2000px; margin: 0px 10px 0px 0px; padding-left: 1px; width: 16px; padding-right: 1px; display: inline-block; background-position: 0% 0%; height: 16px; color: rgb(160,160,160); font-size: 9px; border-top: medium none; border-right: medium none; text-decoration: none; padding-top: 1px" class="CopyToClipboard" title="copy" onclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;" href="http://blog.csdn.net/cyxlzzs/article/details/8143615#">copy</a> 
<div style="z-index: 99; position: absolute; width: 18px; height: 18px; top: 617px; left: 550px"><embed id="ZeroClipboardMovie_1" height="18" name="ZeroClipboardMovie_1" type="application/x-shockwave-flash" align="center" pluginspage="http://www.macromedia.com/go/getflashplayer" width="18" src="http://static.blog.csdn.net/scripts/ZeroClipboard/ZeroClipboard.swf" loop="false" menu="false" quality="best" bgcolor="#ffffff" allowscriptaccess="always" allowfullscreen="false" flashvars="id=1&amp;width=18&amp;height=18" wmode="transparent"></div></div></div>
<ol style="border-bottom: medium none; border-left: medium none; padding-bottom: 0px; background-color: rgb(255,255,255); list-style-type: decimal; margin: 0px 0px 1px 45px; padding-left: 0px; padding-right: 0px; color: rgb(92,92,92); border-top: medium none; border-right: medium none; padding-top: 0px" class="dp-xml"><li style="list-style-position: outside; border-bottom-style: none; border-left: rgb(108,226,108) 3px solid; padding-bottom: 0px !important; line-height: 18px; background-color: rgb(255,255,255); list-style-type: decimal-leading-zero; margin: 0px; padding-left: 10px !important; padding-right: 3px !important; border-top-style: none; color: ; border-right-style: none; padding-top: 0px !important" class="alt"><span style="border-bottom: medium none; border-left: medium none; padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; color: black; border-top: medium none; border-right: medium none; padding-top: 0px"><span style="border-bottom: medium none; border-left: medium none; padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; color: black; border-top: medium none; border-right: medium none; padding-top: 0px">[mysqld]&nbsp;&nbsp;</span></span></li><li style="list-style-position: outside; border-bottom-style: none; border-left: rgb(108,226,108) 3px solid; padding-bottom: 0px !important; line-height: 18px; background-color: rgb(248,248,248); list-style-type: decimal-leading-zero; margin: 0px; padding-left: 10px !important; padding-right: 3px !important; border-top-style: none; color: rgb(92,92,92); border-right-style: none; padding-top: 0px !important"><span style="border-bottom: medium none; border-left: medium none; padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; color: black; border-top: medium none; border-right: medium none; padding-top: 0px">&nbsp;&nbsp;</span></li><li style="list-style-position: outside; border-bottom-style: none; border-left: rgb(108,226,108) 3px solid; padding-bottom: 0px !important; line-height: 18px; background-color: rgb(255,255,255); list-style-type: decimal-leading-zero; margin: 0px; padding-left: 10px !important; padding-right: 3px !important; border-top-style: none; color: ; border-right-style: none; padding-top: 0px !important" class="alt"><span style="border-bottom: medium none; border-left: medium none; padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; color: black; border-top: medium none; border-right: medium none; padding-top: 0px">skip-name-resolve&nbsp;&nbsp;</span></li></ol></div><br style="text-align: left; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 14px/26px Arial; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px" /><span style="text-align: left; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; display: inline !important; font: 14px/26px Arial; white-space: normal; float: none; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px">2、重启mysql服务，测试即可</span> 
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/26px Arial; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"></p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/26px Arial; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"></p>
<h1 style="text-align: left; padding-bottom: 0px; line-height: 26px; text-transform: none; background-color: rgb(255,255,255); font-variant: normal; font-style: normal; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font-family: Arial; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"><a style="color: rgb(202,0,0); text-decoration: none" name="t3"></a>四、解释说明</h1>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/26px Arial; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"></p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/26px Arial; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">1、查看mysql文档，看到如下解释</p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/26px Arial; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"></p>
<div style="text-align: left; text-transform: none; background-color: rgb(231,229,220); text-indent: 0px; margin: 18px 0px; width: 936px; letter-spacing: normal; font: 12px/26px Consolas, 'Courier New', Courier, mono, serif; white-space: normal; color: rgb(0,0,0); overflow: auto; word-spacing: 0px; padding-top: 1px; -webkit-text-stroke-width: 0px" class="dp-highlighter bg_plain">
<div style="padding-left: 45px" class="bar">
<div style="border-left: rgb(108,226,108) 3px solid; padding-bottom: 10px; background-color: rgb(248,248,248); padding-left: 10px; padding-right: 8px; font: 9px Verdana, Geneva, Arial, Helvetica, sans-serif; color: silver; padding-top: 3px" class="tools"><strong>[plain]</strong><span class="Apple-converted-space">&nbsp;</span><a style="background-image: url(http://static.blog.csdn.net/scripts/SyntaxHighlighter/styles/images/default/ico_plain.gif); border-bottom: medium none; border-left: medium none; padding-bottom: 1px; text-indent: -2000px; margin: 0px 10px 0px 0px; padding-left: 1px; width: 16px; padding-right: 1px; display: inline-block; background-position: 0% 0%; height: 16px; color: rgb(160,160,160); font-size: 9px; border-top: medium none; border-right: medium none; text-decoration: none; padding-top: 1px" class="ViewSource" title="view plain" onclick="dp.sh.Toolbar.Command('ViewSource',this);return false;" href="http://blog.csdn.net/cyxlzzs/article/details/8143615#">view plain</a><a style="background-image: url(http://static.blog.csdn.net/scripts/SyntaxHighlighter/styles/images/default/ico_copy.gif); border-bottom: medium none; border-left: medium none; padding-bottom: 1px; text-indent: -2000px; margin: 0px 10px 0px 0px; padding-left: 1px; width: 16px; padding-right: 1px; display: inline-block; background-position: 0% 0%; height: 16px; color: rgb(160,160,160); font-size: 9px; border-top: medium none; border-right: medium none; text-decoration: none; padding-top: 1px" class="CopyToClipboard" title="copy" onclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;" href="http://blog.csdn.net/cyxlzzs/article/details/8143615#">copy</a> 
<div style="z-index: 99; position: absolute; width: 18px; height: 18px; top: 844px; left: 553px"><embed id="ZeroClipboardMovie_2" height="18" name="ZeroClipboardMovie_2" type="application/x-shockwave-flash" align="center" pluginspage="http://www.macromedia.com/go/getflashplayer" width="18" src="http://static.blog.csdn.net/scripts/ZeroClipboard/ZeroClipboard.swf" loop="false" menu="false" quality="best" bgcolor="#ffffff" allowscriptaccess="always" allowfullscreen="false" flashvars="id=2&amp;width=18&amp;height=18" wmode="transparent"></div></div></div>
<ol style="border-bottom: medium none; border-left: medium none; padding-bottom: 0px; background-color: rgb(255,255,255); list-style-type: decimal; margin: 0px 0px 1px 45px; padding-left: 0px; padding-right: 0px; color: rgb(92,92,92); border-top: medium none; border-right: medium none; padding-top: 0px"><li style="list-style-position: outside; border-bottom-style: none; border-left: rgb(108,226,108) 3px solid; padding-bottom: 0px !important; line-height: 18px; background-color: rgb(255,255,255); list-style-type: decimal-leading-zero; margin: 0px; padding-left: 10px !important; padding-right: 3px !important; border-top-style: none; color: ; border-right-style: none; padding-top: 0px !important" class="alt"><span style="border-bottom: medium none; border-left: medium none; padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; color: black; border-top: medium none; border-right: medium none; padding-top: 0px"><span style="border-bottom: medium none; border-left: medium none; padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; color: black; border-top: medium none; border-right: medium none; padding-top: 0px">How&nbsp;MySQL&nbsp;uses&nbsp;DNS&nbsp;&nbsp;</span></span></li><li style="list-style-position: outside; border-bottom-style: none; border-left: rgb(108,226,108) 3px solid; padding-bottom: 0px !important; line-height: 18px; background-color: rgb(248,248,248); list-style-type: decimal-leading-zero; margin: 0px; padding-left: 10px !important; padding-right: 3px !important; border-top-style: none; color: rgb(92,92,92); border-right-style: none; padding-top: 0px !important"><span style="border-bottom: medium none; border-left: medium none; padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; color: black; border-top: medium none; border-right: medium none; padding-top: 0px">&nbsp;&nbsp;</span></li><li style="list-style-position: outside; border-bottom-style: none; border-left: rgb(108,226,108) 3px solid; padding-bottom: 0px !important; line-height: 18px; background-color: rgb(255,255,255); list-style-type: decimal-leading-zero; margin: 0px; padding-left: 10px !important; padding-right: 3px !important; border-top-style: none; color: ; border-right-style: none; padding-top: 0px !important" class="alt"><span style="border-bottom: medium none; border-left: medium none; padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; color: black; border-top: medium none; border-right: medium none; padding-top: 0px">When&nbsp;a&nbsp;new&nbsp;thread&nbsp;connects&nbsp;to&nbsp;mysqld,&nbsp;mysqld&nbsp;will&nbsp;spawn&nbsp;a&nbsp;new&nbsp;thread&nbsp;to&nbsp;handle&nbsp;the&nbsp;request.&nbsp;This&nbsp;thread&nbsp;will&nbsp;first&nbsp;check&nbsp;if&nbsp;the&nbsp;hostname&nbsp;is&nbsp;in&nbsp;the&nbsp;hostname&nbsp;cache.&nbsp;If&nbsp;not&nbsp;the&nbsp;thread&nbsp;will&nbsp;call&nbsp;gethostbyaddr_r()&nbsp;and&nbsp;gethostbyname_r()&nbsp;to&nbsp;resolve&nbsp;the&nbsp;hostname.&nbsp;&nbsp;</span></li><li style="list-style-position: outside; border-bottom-style: none; border-left: rgb(108,226,108) 3px solid; padding-bottom: 0px !important; line-height: 18px; background-color: rgb(248,248,248); list-style-type: decimal-leading-zero; margin: 0px; padding-left: 10px !important; padding-right: 3px !important; border-top-style: none; color: rgb(92,92,92); border-right-style: none; padding-top: 0px !important"><span style="border-bottom: medium none; border-left: medium none; padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; color: black; border-top: medium none; border-right: medium none; padding-top: 0px">&nbsp;&nbsp;</span></li><li style="list-style-position: outside; border-bottom-style: none; border-left: rgb(108,226,108) 3px solid; padding-bottom: 0px !important; line-height: 18px; background-color: rgb(255,255,255); list-style-type: decimal-leading-zero; margin: 0px; padding-left: 10px !important; padding-right: 3px !important; border-top-style: none; color: ; border-right-style: none; padding-top: 0px !important" class="alt"><span style="border-bottom: medium none; border-left: medium none; padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; color: black; border-top: medium none; border-right: medium none; padding-top: 0px">If&nbsp;the&nbsp;operating&nbsp;system&nbsp;doesn't&nbsp;support&nbsp;the&nbsp;above&nbsp;thread-safe&nbsp;calls,&nbsp;the&nbsp;thread&nbsp;will&nbsp;lock&nbsp;a&nbsp;mutex&nbsp;and&nbsp;call&nbsp;gethostbyaddr()&nbsp;and&nbsp;gethostbyname()&nbsp;instead.&nbsp;Note&nbsp;that&nbsp;in&nbsp;this&nbsp;case&nbsp;no&nbsp;other&nbsp;thread&nbsp;can&nbsp;resolve&nbsp;other&nbsp;hostnames&nbsp;that&nbsp;is&nbsp;not&nbsp;in&nbsp;the&nbsp;hostname&nbsp;cache&nbsp;until&nbsp;the&nbsp;first&nbsp;thread&nbsp;is&nbsp;ready.&nbsp;&nbsp;</span></li><li style="list-style-position: outside; border-bottom-style: none; border-left: rgb(108,226,108) 3px solid; padding-bottom: 0px !important; line-height: 18px; background-color: rgb(248,248,248); list-style-type: decimal-leading-zero; margin: 0px; padding-left: 10px !important; padding-right: 3px !important; border-top-style: none; color: rgb(92,92,92); border-right-style: none; padding-top: 0px !important"><span style="border-bottom: medium none; border-left: medium none; padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; color: black; border-top: medium none; border-right: medium none; padding-top: 0px">&nbsp;&nbsp;</span></li><li style="list-style-position: outside; border-bottom-style: none; border-left: rgb(108,226,108) 3px solid; padding-bottom: 0px !important; line-height: 18px; background-color: rgb(255,255,255); list-style-type: decimal-leading-zero; margin: 0px; padding-left: 10px !important; padding-right: 3px !important; border-top-style: none; color: ; border-right-style: none; padding-top: 0px !important" class="alt"><span style="border-bottom: medium none; border-left: medium none; padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; color: black; border-top: medium none; border-right: medium none; padding-top: 0px">You&nbsp;can&nbsp;disable&nbsp;DNS&nbsp;host&nbsp;lookup&nbsp;by&nbsp;starting&nbsp;mysqld&nbsp;with&nbsp;&#8211;skip-name-resolve.&nbsp;In&nbsp;this&nbsp;case&nbsp;you&nbsp;can&nbsp;however&nbsp;only&nbsp;use&nbsp;IP&nbsp;names&nbsp;in&nbsp;the&nbsp;MySQL&nbsp;privilege&nbsp;tables.&nbsp;&nbsp;</span></li><li style="list-style-position: outside; border-bottom-style: none; border-left: rgb(108,226,108) 3px solid; padding-bottom: 0px !important; line-height: 18px; background-color: rgb(248,248,248); list-style-type: decimal-leading-zero; margin: 0px; padding-left: 10px !important; padding-right: 3px !important; border-top-style: none; color: rgb(92,92,92); border-right-style: none; padding-top: 0px !important"><span style="border-bottom: medium none; border-left: medium none; padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; color: black; border-top: medium none; border-right: medium none; padding-top: 0px">&nbsp;&nbsp;</span></li><li style="list-style-position: outside; border-bottom-style: none; border-left: rgb(108,226,108) 3px solid; padding-bottom: 0px !important; line-height: 18px; background-color: rgb(255,255,255); list-style-type: decimal-leading-zero; margin: 0px; padding-left: 10px !important; padding-right: 3px !important; border-top-style: none; color: ; border-right-style: none; padding-top: 0px !important" class="alt"><span style="border-bottom: medium none; border-left: medium none; padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; color: black; border-top: medium none; border-right: medium none; padding-top: 0px">If&nbsp;you&nbsp;have&nbsp;a&nbsp;very&nbsp;slow&nbsp;DNS&nbsp;and&nbsp;many&nbsp;hosts,&nbsp;you&nbsp;can&nbsp;get&nbsp;more&nbsp;performance&nbsp;by&nbsp;either&nbsp;disabling&nbsp;DNS&nbsp;lookop&nbsp;with&nbsp;&#8211;skip-name-resolve&nbsp;or&nbsp;by&nbsp;increasing&nbsp;the&nbsp;HOST_CACHE_SIZE&nbsp;define&nbsp;(default:&nbsp;128)&nbsp;and&nbsp;recompile&nbsp;mysqld.&nbsp;&nbsp;</span></li><li style="list-style-position: outside; border-bottom-style: none; border-left: rgb(108,226,108) 3px solid; padding-bottom: 0px !important; line-height: 18px; background-color: rgb(248,248,248); list-style-type: decimal-leading-zero; margin: 0px; padding-left: 10px !important; padding-right: 3px !important; border-top-style: none; color: rgb(92,92,92); border-right-style: none; padding-top: 0px !important"><span style="border-bottom: medium none; border-left: medium none; padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; color: black; border-top: medium none; border-right: medium none; padding-top: 0px">&nbsp;&nbsp;</span></li><li style="list-style-position: outside; border-bottom-style: none; border-left: rgb(108,226,108) 3px solid; padding-bottom: 0px !important; line-height: 18px; background-color: rgb(255,255,255); list-style-type: decimal-leading-zero; margin: 0px; padding-left: 10px !important; padding-right: 3px !important; border-top-style: none; color: ; border-right-style: none; padding-top: 0px !important" class="alt"><span style="border-bottom: medium none; border-left: medium none; padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; color: black; border-top: medium none; border-right: medium none; padding-top: 0px">You&nbsp;can&nbsp;disable&nbsp;the&nbsp;hostname&nbsp;cache&nbsp;with&nbsp;&#8211;skip-host-cache.&nbsp;You&nbsp;can&nbsp;clear&nbsp;the&nbsp;hostname&nbsp;cache&nbsp;with&nbsp;FLUSH&nbsp;HOSTS&nbsp;or&nbsp;mysqladmin&nbsp;flush-hosts.&nbsp;&nbsp;</span></li><li style="list-style-position: outside; border-bottom-style: none; border-left: rgb(108,226,108) 3px solid; padding-bottom: 0px !important; line-height: 18px; background-color: rgb(248,248,248); list-style-type: decimal-leading-zero; margin: 0px; padding-left: 10px !important; padding-right: 3px !important; border-top-style: none; color: rgb(92,92,92); border-right-style: none; padding-top: 0px !important"><span style="border-bottom: medium none; border-left: medium none; padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; color: black; border-top: medium none; border-right: medium none; padding-top: 0px">&nbsp;&nbsp;</span></li><li style="list-style-position: outside; border-bottom-style: none; border-left: rgb(108,226,108) 3px solid; padding-bottom: 0px !important; line-height: 18px; background-color: rgb(255,255,255); list-style-type: decimal-leading-zero; margin: 0px; padding-left: 10px !important; padding-right: 3px !important; border-top-style: none; color: ; border-right-style: none; padding-top: 0px !important" class="alt"><span style="border-bottom: medium none; border-left: medium none; padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; color: black; border-top: medium none; border-right: medium none; padding-top: 0px">If&nbsp;you&nbsp;don't&nbsp;want&nbsp;to&nbsp;allow&nbsp;connections&nbsp;over&nbsp;TCP/IP,&nbsp;you&nbsp;can&nbsp;do&nbsp;this&nbsp;by&nbsp;starting&nbsp;mysqld&nbsp;with&nbsp;&#8211;skip-networking.&nbsp;&nbsp;</span></li></ol></div><br style="text-align: left; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 14px/26px Arial; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px" /><span style="text-align: left; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; display: inline !important; font: 14px/26px Arial; white-space: normal; float: none; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px">从文档中我们可以看到加入上述参数配置的原因。mysql在远程连接时先采用域名解析去查找主机，当查找不到时才会采用ip地址去找。加入这个参数就禁止了mysql采用DNS解析的方式，而直接通过ip进行连接</span> 
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/26px Arial; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"></p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/26px Arial; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"></p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/26px Arial; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"></p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/26px Arial; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px"></p>
<p style="text-align: left; padding-bottom: 0px; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/26px Arial; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">2、当然根据文档中描述，如果加入了&#8220;skip-name-resolve&#8221;配置的话，mysql就不能通过域名解析了。如果应该把mysql数据库中的user表中的host字段改成相应的ip。如&#8220;localhost&#8221;应该改为&#8220;127.0.0.1&#8221;</p><img src ="http://www.cnitblog.com/xijia0524/aggbug/90013.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xijia0524/" target="_blank">回忆之城</a> 2015-03-17 17:38 <a href="http://www.cnitblog.com/xijia0524/archive/2015/03/17/90013.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转】Mysql中查看表的类型InnoDB</title><link>http://www.cnitblog.com/xijia0524/archive/2014/12/02/89875.html</link><dc:creator>回忆之城</dc:creator><author>回忆之城</author><pubDate>Tue, 02 Dec 2014 03:27:00 GMT</pubDate><guid>http://www.cnitblog.com/xijia0524/archive/2014/12/02/89875.html</guid><wfw:comment>http://www.cnitblog.com/xijia0524/comments/89875.html</wfw:comment><comments>http://www.cnitblog.com/xijia0524/archive/2014/12/02/89875.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xijia0524/comments/commentRss/89875.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xijia0524/services/trackbacks/89875.html</trackback:ping><description><![CDATA[<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">Mysql中查看表的类型InnoDB</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">&nbsp;</div>
<div style="padding-bottom: 0px; border-right-width: 0px; text-transform: none; background-color: rgb(255,255,255); list-style-type: none; text-indent: 0px; margin: 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/28px 宋体; white-space: normal; border-top-width: 0px; border-bottom-width: 0px; color: rgb(51,51,51); border-left-width: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px">
<div style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px">问题描述：</div>
<div style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px">&nbsp; MySQL 数据表主要支持六种类型 ，分别是：BDB、HEAP、ISAM、MERGE、MYISAM、InnoBDB。</div>
<div style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px">这六种又分为两类，一类是&#8220;事务安全型&#8221;(transaction-safe)，包括BDB和InnoDB；其余都属于第二类，称为&#8221;非事务安全型&#8221;(non-transaction-safe)。</div>
<div style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px">问题解决：</div>
<div style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px">&nbsp; 存储引擎说白了就是如何存储数据、如何为存储的数据建立索引和如何更新、查询数据等技术的实现方法。因为在关系<a style="color: rgb(51,51,51); font-size: 14px; text-decoration: none" class="keylink" href="http://www.2cto.com/database/" target="_blank">数据库</a>中数据的存储是以表的形式存储的，所以存储引擎也可以称为表类型（即存储和操作此表的类型）。</div>
<div style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px">InnoDB 是较新的事务安全型存储引擎，用于事务处理应用程序，支持BDB的几乎所有特性，并具有众多新特性，包括ACID事务支持。</div>
<div style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px">特性：</div>
<div style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px">事务处理机制&nbsp;<br />支持外链&nbsp;<br />崩溃后能立即恢复&nbsp;<br />支持外键功能，级联删除&nbsp;<br />支持并发能力&nbsp;<br />在硬盘上的存储方式：InnoBDB frm</div>
<div style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px">最新版本的Mysql已经计划移除对BDB的支持，转而全力发展InnoDB。InnoDB对Mysql有更好的特性支持，而且开发社区活跃。</div>
<div style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px">&nbsp; MyISAM 默认的MySQL插件式存储引擎，它是基于ISAM类型，但它增加了许多有用的扩展，它是在Web、数据仓储和其他应用环境下最常使用的存储引擎之一。注意，通过更改STORAGE_ENGINE配置变量，能够方便地更改MySQL服务器的默认存储引擎。&nbsp;<br />优点：</div>
<div style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px">1.比ISAM表更小，所占资源更少&nbsp;<br />2.可以在不同平台间二进制移植表的类型在创建表时指定。</div>
<div style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px">（１）查看数据库可以支持的存储引擎</div>
<div style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px">&nbsp; 命令：show engines;</div>
<div style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px"><img style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; width: 630px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; height: 140px; border-left-width: 0px; padding-top: 0px" src="http://up.2cto.com/2013/0530/20130530024136105.png"  alt="" /></div>
<div style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px">&nbsp; 注：如上图所示，为显示当前<a style="color: rgb(51,51,51); font-size: 14px; text-decoration: none" class="keylink" href="http://www.2cto.com/database/MySQL/" target="_blank">mysql</a>支持的存储引擎</div>
<div style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px"><img style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; width: 335px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; height: 127px; border-left-width: 0px; padding-top: 0px" src="http://up.2cto.com/2013/0530/20130530024136868.png"  alt="" /></div>
<div style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px">从上图看出，这里使用的是mysql 5.5版本，默认使用的是InnoDB的数据库引擎，为安全事务的引擎</div>
<div style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px">（2）查看表结构</div>
<div style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px">命令：desc table_name；</div>
<div style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px"><img style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; width: 630px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; height: 191px; border-left-width: 0px; padding-top: 0px" src="http://up.2cto.com/2013/0530/20130530024137449.png"  alt="" /></div>
<div style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px">（3）显示表的创建语句</div>
<div style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px"><img style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; width: 630px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; height: 397px; border-left-width: 0px; padding-top: 0px" src="http://up.2cto.com/2013/0530/20130530024137175.png"  alt="" /></div>
<div style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px">注：</div>
<div style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px">&nbsp; 以上显示了表的默认创建语句，从上面可以看出，mysql5.5默认情况下使用的是InnoDB的引擎，使用的编码方式utf-8</div>
<div style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px">（4）显示表的当前状态值</div>
<div style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px"><img style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; width: 607px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; height: 353px; border-left-width: 0px; padding-top: 0px" src="http://up.2cto.com/2013/0530/20130530024137104.png"  alt="" /></div>
<div style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px">（5）修改数据库表的引擎</div>
<div style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px"><img style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; width: 630px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; height: 345px; border-left-width: 0px; padding-top: 0px" src="http://up.2cto.com/2013/0530/20130530024137110.png"  alt="" /></div>
<div style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px">注：mysql5.5默认情况下创建的数据表就是InnoDB,查看表的结构信息如上</div>
<div style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px">修改表的数据库引擎</div>
<div style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px"><img style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; width: 484px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; height: 73px; border-left-width: 0px; padding-top: 0px" src="http://up.2cto.com/2013/0530/20130530024137816.png"  alt="" /></div>
<div style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px">修改之后，重新查看mysql的数据库引擎</div>
<div style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px"><img style="padding-bottom: 0px; border-right-width: 0px; list-style-type: none; margin: 0px; padding-left: 0px; width: 613px; padding-right: 0px; border-top-width: 0px; border-bottom-width: 0px; height: 400px; border-left-width: 0px; padding-top: 0px" src="http://up.2cto.com/2013/0530/20130530024140263.png"  alt="" /></div></div><br class="Apple-interchange-newline" /><img src ="http://www.cnitblog.com/xijia0524/aggbug/89875.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xijia0524/" target="_blank">回忆之城</a> 2014-12-02 11:27 <a href="http://www.cnitblog.com/xijia0524/archive/2014/12/02/89875.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转】Linux Error: 23: Too many open files in system </title><link>http://www.cnitblog.com/xijia0524/archive/2014/07/02/89640.html</link><dc:creator>回忆之城</dc:creator><author>回忆之城</author><pubDate>Wed, 02 Jul 2014 10:13:00 GMT</pubDate><guid>http://www.cnitblog.com/xijia0524/archive/2014/07/02/89640.html</guid><wfw:comment>http://www.cnitblog.com/xijia0524/comments/89640.html</wfw:comment><comments>http://www.cnitblog.com/xijia0524/archive/2014/07/02/89640.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xijia0524/comments/commentRss/89640.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xijia0524/services/trackbacks/89640.html</trackback:ping><description><![CDATA[又出現一個錯誤:<br /><br />出現錯誤的時候,DB自動shutdown 了.<br /><br />ORA-00313: open failed for members of log group 2 of thread 1<br />ORA-00312: online log 2 thread 1: '/oradata/oradata2/efa/redo/Log2.ora'<br />ORA-27041: unable to open file<br />Linux Error: 23: Too many open files in system<br />Additional information: 2<br />error 313 detected in background process<br />ORA-00313: open failed for members of log group 2 of thread 1<br />ORA-00312: online log 2 thread 1: '/oradata/oradata2/efa/redo/Log2.ora'<br />ORA-27041: unable to open file<br />Linux Error: 23: Too many open files in system<br />Additional information: 2<br /><br /><br />OS Version:<br />[root@cimfa501 bdump]# uname -a<br />Linux cimfa501 2.4.9-e.34smp #1 SMP Wed Jan 19 23:02:38 CST 2005 i686 unknown<br /><br /><a class="relatedlink" href="http://www.itpub.net/tree/index_1/" target="_blank"><u><font color="#0066cc">Oracle</font></u></a> Version : 8.1.7.4<br /><br />那是不是要調大 max-file的值. 現在是8192 .<br /><br /><br /><strong style="color: #ff0000">echo "xxxxxxx" &gt;/proc/sys/fs/file-max<br /><br />you don't have to reboot box.</strong><br /><br />[root@rhel-vm1 root]# <span style="color: #ff0000"><strong>ulimit -a</strong></span><br />core file size (blocks, -c) 0<br />data seg size (kbytes, -d) unlimited<br />file size (blocks, -f) unlimited<br />max locked memory (kbytes, -l) 4<br />max memory size (kbytes, -m) unlimited<br />open files (-n) 1024<br />pipe size (512 bytes, -p) 8<br />stack size (kbytes, -s) 10240<br />cpu time (seconds, -t) unlimited<br />max user processes (-u) 1600<br />virtual memory (kbytes, -v) unlimited<br />[root@rhel-vm1 root]# ulimit -n 2048<br />[root@rhel-vm1 root]# ulimit -a<br />core file size (blocks, -c) 0<br />data seg size (kbytes, -d) unlimited<br />file size (blocks, -f) unlimited<br />max locked memory (kbytes, -l) 4<br />max memory size (kbytes, -m) unlimited<br />open files (-n) 2048<br />pipe size (512 bytes, -p) 8<br />stack size (kbytes, -s) 10240<br />cpu time (seconds, -t) unlimited<br />max user processes (-u) 1600<br />virtual memory (kbytes, -v) unlimited<br /><br /><br /><span style="color: #ff0000"><strong>检查LINUX的内核参数设置的时候正确</strong></span><br /><br /><span style="color: #ff0000"><strong>Linux有最大打开文件数的限制.发生这个原因是当前这台机器上打开的文件数已经达到了该限制(Unix下文件,Socket,pipe都包括在这个限制中)</strong></span><img src ="http://www.cnitblog.com/xijia0524/aggbug/89640.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xijia0524/" target="_blank">回忆之城</a> 2014-07-02 18:13 <a href="http://www.cnitblog.com/xijia0524/archive/2014/07/02/89640.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转】数据库删除语句 Drop/Delete/Truncate比较</title><link>http://www.cnitblog.com/xijia0524/archive/2014/06/19/89612.html</link><dc:creator>回忆之城</dc:creator><author>回忆之城</author><pubDate>Thu, 19 Jun 2014 07:27:00 GMT</pubDate><guid>http://www.cnitblog.com/xijia0524/archive/2014/06/19/89612.html</guid><wfw:comment>http://www.cnitblog.com/xijia0524/comments/89612.html</wfw:comment><comments>http://www.cnitblog.com/xijia0524/archive/2014/06/19/89612.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xijia0524/comments/commentRss/89612.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xijia0524/services/trackbacks/89612.html</trackback:ping><description><![CDATA[<p style="text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; letter-spacing: normal; font: 14px/25px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px">Delete ：删除数据表中的行（可以删除某一行，也可以在不删除数据表的情况下删除所有行）。</p>
<p style="text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; letter-spacing: normal; font: 14px/25px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px">删除某一行：Delete from 数据表名称 where 列名称=值；</p>
<p style="text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; letter-spacing: normal; font: 14px/25px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px">删除所有行：Delete * from 数据表名称</p>
<p style="text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; letter-spacing: normal; font: 14px/25px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px">Drop ：删除数据表或数据库，或删除数据表字段。</p>
<p style="text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; letter-spacing: normal; font: 14px/25px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px">删除数据库：drop database 数据库名称</p>
<p style="text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; letter-spacing: normal; font: 14px/25px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px">删除数据表：（表的结构、属性、索引也会被删除）</p>
<p style="text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; letter-spacing: normal; font: 14px/25px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;use 数据库名称</p>
<p style="text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; letter-spacing: normal; font: 14px/25px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;drop table 数据表1名称，数据表2名称</p>
<p style="text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; letter-spacing: normal; font: 14px/25px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px">删除数据表字段（列）：</p>
<p style="text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; letter-spacing: normal; font: 14px/25px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;use 数据库名称</p>
<p style="text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; letter-spacing: normal; font: 14px/25px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;alter table 数据表名称</p>
<p style="text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; letter-spacing: normal; font: 14px/25px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;drop column 字段名（列名称）</p>
<p style="text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; letter-spacing: normal; font: 14px/25px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px">Truncate：删除数据表中的数据（仅数据表中的数据，不删除表）。</p>
<p style="text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; letter-spacing: normal; font: 14px/25px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;truncate table 数据表名称</p>
<p style="text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; letter-spacing: normal; font: 14px/25px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &#8220;&nbsp;TRUNCATE TABLE语句是一种快速、无日志记录的方法。TRUNCATE TABLE语句与不含有 WHERE 子句的 DELETE 语句在功能上相同。但是，TRUNCATE TABLE语句速度更快，并且使用更少的系统资源和事务日志资源。&#8221;</p>
<p style="text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; letter-spacing: normal; font: 14px/25px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px">&nbsp;</p>
<p style="text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; letter-spacing: normal; font: 14px/25px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px">删除数据的速度，一般来说: drop&gt; truncate &gt; delete</p>
<p style="text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; letter-spacing: normal; font: 14px/25px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px">&#8220;与 DELETE 语句相比，TRUNCATE TABLE语句具有以下优点：</p>
<p style="text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; letter-spacing: normal; font: 14px/25px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px">所用的事务日志空间较少。</p>
<p style="text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; letter-spacing: normal; font: 14px/25px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px">DELETE 语句每次删除一行，并在事务日志中为所删除的每行记录一项。TRUNCATE TABLE 通过释放用于存储表数据的数据页来删除数据，并且在事务日志中只记录页释放。</p>
<p style="text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; letter-spacing: normal; font: 14px/25px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px">使用的锁通常较少。</p>
<p style="text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; letter-spacing: normal; font: 14px/25px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px">当使用行锁执行 DELETE 语句时，将锁定表中各行以便删除。TRUNCATE TABLE 始终锁定表和页，而不是锁定各行。</p>
<p style="text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; letter-spacing: normal; font: 14px/25px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px">如无例外，在表中不会留有任何页。</p>
<p style="text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; letter-spacing: normal; font: 14px/25px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px">执行 DELETE 语句后，表仍会包含空页。例如，必须至少使用一个排他 (LCK_M_X) 表锁，才能释放堆中的空表。如果执行删除操作时没有使用表锁，表（堆）中将包含许多空页。对于索引，删除操作会留下一些空页，尽管这些页会通过后台清除进程迅速释放。</p>
<p style="text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; letter-spacing: normal; font: 14px/25px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px">与 DELETE 语句相同，使用 TRUNCATE TABLE语句清空的表的定义与其索引和其他关联对象一起保留在数据库中。</p>
<p style="text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; letter-spacing: normal; font: 14px/25px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px">此部分转自http://database.51cto.com/art/201009/226870.htm</p>
<p style="text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; letter-spacing: normal; font: 14px/25px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px">&#8221;</p>
<p style="text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; letter-spacing: normal; font: 14px/25px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px">remove ：删除数据库文件</p>
<p style="text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; letter-spacing: normal; font: 14px/25px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; alter database Mydatabase1</p>
<p style="text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; letter-spacing: normal; font: 14px/25px Verdana, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; remove file Mydatabase1_log &nbsp; &nbsp; &nbsp;<span class="Apple-converted-space">&nbsp;</span></p><img src ="http://www.cnitblog.com/xijia0524/aggbug/89612.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xijia0524/" target="_blank">回忆之城</a> 2014-06-19 15:27 <a href="http://www.cnitblog.com/xijia0524/archive/2014/06/19/89612.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转】mysql查询在一张表不在另外一张表的记录</title><link>http://www.cnitblog.com/xijia0524/archive/2014/06/08/89595.html</link><dc:creator>回忆之城</dc:creator><author>回忆之城</author><pubDate>Sun, 08 Jun 2014 12:57:00 GMT</pubDate><guid>http://www.cnitblog.com/xijia0524/archive/2014/06/08/89595.html</guid><wfw:comment>http://www.cnitblog.com/xijia0524/comments/89595.html</wfw:comment><comments>http://www.cnitblog.com/xijia0524/archive/2014/06/08/89595.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xijia0524/comments/commentRss/89595.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xijia0524/services/trackbacks/89595.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: mysql查询在一张表不在另外一张表的记录&nbsp;问题：&nbsp;&nbsp;查询一个表（tb1）的字段记录不在另一个表（tb2）中 &nbsp;&nbsp;&nbsp; 条件：tb1的字段key的值不在tbl2表中 &nbsp;&nbsp;&nbsp; －－－－－－－－－－－－－－－－－－－－－－ &nbsp; &nbsp;最原始的写法： &nbsp;&nbsp...&nbsp;&nbsp;<a href='http://www.cnitblog.com/xijia0524/archive/2014/06/08/89595.html'>阅读全文</a><img src ="http://www.cnitblog.com/xijia0524/aggbug/89595.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xijia0524/" target="_blank">回忆之城</a> 2014-06-08 20:57 <a href="http://www.cnitblog.com/xijia0524/archive/2014/06/08/89595.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转】求MYSQL中某字段内的重复数据</title><link>http://www.cnitblog.com/xijia0524/archive/2014/06/08/89593.html</link><dc:creator>回忆之城</dc:creator><author>回忆之城</author><pubDate>Sun, 08 Jun 2014 12:54:00 GMT</pubDate><guid>http://www.cnitblog.com/xijia0524/archive/2014/06/08/89593.html</guid><wfw:comment>http://www.cnitblog.com/xijia0524/comments/89593.html</wfw:comment><comments>http://www.cnitblog.com/xijia0524/archive/2014/06/08/89593.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xijia0524/comments/commentRss/89593.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xijia0524/services/trackbacks/89593.html</trackback:ping><description><![CDATA[<pre style="padding-bottom: 0px; widows: 2; text-transform: none; text-indent: 0px; margin: 10px 0px 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/24px arial, 'courier new', courier, 宋体, monospace; word-wrap: break-word; white-space: pre-wrap; orphans: 2; color: rgb(51,51,51); word-break: break-all; word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="line mt-10 q-content" accuse="qContent">数据库: show<br />数据表: tbl_vod<br />字段:  d_name<br />查找字段 d_name 中重复的数据</pre><br /><br /><pre style="padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(241,254,221); text-indent: 0px; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/24px arial, 'courier new', courier, 宋体, monospace; word-wrap: break-word; white-space: pre-wrap; orphans: 2; color: rgb(51,51,51); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" id="best-content-942043570" class="best-text mb-10" accuse="aContent">select d_name,count(d_name) from tbl_vod group by d_name having count(d_name)&gt;1</pre>
<div style="padding-bottom: 5px; widows: 2; text-transform: none; background-color: rgb(241,254,221); text-indent: 0px; letter-spacing: normal; font: 14px/24px arial, 宋体, sans-serif, 'Microsoft YaHei', tahoma; white-space: normal; orphans: 2; color: rgb(51,51,51); word-spacing: 0px; padding-top: 5px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" id="replyask-40927624" class="replyask line pt-5 pb-5">
<div style="display: inline; float: left; color: rgb(94,187,11); font-size: 12px" class="ask f-12 grid">追问</div>
<div style="word-wrap: break-word; margin-left: 40px; word-break: break-all" id="replyask-content-40927624" class="replyask-content line ml-10" accuse="qRA"><pre style="padding-bottom: 0px; margin: 0px 100px 0px 0px; padding-left: 0px; padding-right: 0px; font-family: arial, 'courier new', courier, 宋体, monospace; word-wrap: break-word; white-space: pre-wrap; padding-top: 0px" accuse="qRA">谢谢你,这个语句可以查出来某个数据重复的次数,,我想删除里面的重复保留一个要怎么写呢<br /><br />或让他全部显示我手工删除 ,现在查询出来只能显示某个数据的重复次数 没办法选择删除</pre></div></div>
<div style="padding-bottom: 5px; widows: 2; text-transform: none; background-color: rgb(241,254,221); text-indent: 0px; letter-spacing: normal; font: 14px/24px arial, 宋体, sans-serif, 'Microsoft YaHei', tahoma; white-space: normal; orphans: 2; color: rgb(51,51,51); word-spacing: 0px; padding-top: 5px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" id="replyask-40927798" class="replyask line pt-5 pb-5">
<div style="display: inline; float: left; color: rgb(65,144,227); font-size: 12px" class="reply f-12 grid">回答</div>
<div style="word-wrap: break-word; margin-left: 40px; word-break: break-all" id="replyask-content-40927798" class="replyask-content line ml-10" accuse="aRA"><pre style="padding-bottom: 0px; margin: 0px 100px 0px 0px; padding-left: 0px; padding-right: 0px; font-family: arial, 'courier new', courier, 宋体, monospace; word-wrap: break-word; white-space: pre-wrap; padding-top: 0px" accuse="aRA">//去除重复的数据 如果是重复的只显示1个<br />select distinct d_name from tbl_vod<br />--下面是查出重复的记录<br />select d_name from tbl_vod<br />minus<br />select distinct d_name from tbl_vod</pre></div></div>
<div style="padding-bottom: 5px; widows: 2; text-transform: none; background-color: rgb(241,254,221); text-indent: 0px; letter-spacing: normal; font: 14px/24px arial, 宋体, sans-serif, 'Microsoft YaHei', tahoma; white-space: normal; orphans: 2; color: rgb(51,51,51); word-spacing: 0px; padding-top: 5px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" id="replyask-40928067" class="replyask line pt-5 pb-5">
<div style="display: inline; float: left; color: rgb(94,187,11); font-size: 12px" class="ask f-12 grid">追问</div>
<div style="word-wrap: break-word; margin-left: 40px; word-break: break-all" id="replyask-content-40928067" class="replyask-content line ml-10" accuse="qRA"><pre style="padding-bottom: 0px; margin: 0px 100px 0px 0px; padding-left: 0px; padding-right: 0px; font-family: arial, 'courier new', courier, 宋体, monospace; word-wrap: break-word; white-space: pre-wrap; padding-top: 0px" accuse="qRA">我是想把重复的彻的删除掉呀</pre></div></div>
<div style="padding-bottom: 5px; widows: 2; text-transform: none; background-color: rgb(241,254,221); text-indent: 0px; letter-spacing: normal; font: 14px/24px arial, 宋体, sans-serif, 'Microsoft YaHei', tahoma; white-space: normal; orphans: 2; color: rgb(51,51,51); word-spacing: 0px; padding-top: 5px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" id="replyask-40928167" class="replyask line pt-5 pb-5">
<div style="display: inline; float: left; color: rgb(65,144,227); font-size: 12px" class="reply f-12 grid">回答</div>
<div style="word-wrap: break-word; margin-left: 40px; word-break: break-all" id="replyask-content-40928167" class="replyask-content line ml-10" accuse="aRA"><pre style="padding-bottom: 0px; margin: 0px 100px 0px 0px; padding-left: 0px; padding-right: 0px; font-family: arial, 'courier new', courier, 宋体, monospace; word-wrap: break-word; white-space: pre-wrap; padding-top: 0px" accuse="aRA">有主键字段吗</pre></div></div>
<div style="padding-bottom: 5px; widows: 2; text-transform: none; background-color: rgb(241,254,221); text-indent: 0px; letter-spacing: normal; font: 14px/24px arial, 宋体, sans-serif, 'Microsoft YaHei', tahoma; white-space: normal; orphans: 2; color: rgb(51,51,51); word-spacing: 0px; padding-top: 5px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" id="replyask-40928244" class="replyask line pt-5 pb-5">
<div style="display: inline; float: left; color: rgb(94,187,11); font-size: 12px" class="ask f-12 grid">追问</div>
<div style="word-wrap: break-word; margin-left: 40px; word-break: break-all" id="replyask-content-40928244" class="replyask-content line ml-10" accuse="qRA"><pre style="padding-bottom: 0px; margin: 0px 100px 0px 0px; padding-left: 0px; padding-right: 0px; font-family: arial, 'courier new', courier, 宋体, monospace; word-wrap: break-word; white-space: pre-wrap; padding-top: 0px" accuse="qRA">d_id 这个是主键</pre></div></div>
<div style="padding-bottom: 5px; widows: 2; text-transform: none; background-color: rgb(241,254,221); text-indent: 0px; letter-spacing: normal; font: 14px/24px arial, 宋体, sans-serif, 'Microsoft YaHei', tahoma; white-space: normal; orphans: 2; color: rgb(51,51,51); word-spacing: 0px; padding-top: 5px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" id="replyask-40929033" class="replyask line pt-5 pb-5">
<div style="display: inline; float: left; color: rgb(65,144,227); font-size: 12px" class="reply f-12 grid">回答</div>
<div style="word-wrap: break-word; margin-left: 40px; word-break: break-all" id="replyask-content-40929033" class="replyask-content line ml-10" accuse="aRA"><pre style="padding-bottom: 0px; margin: 0px 100px 0px 0px; padding-left: 0px; padding-right: 0px; font-family: arial, 'courier new', courier, 宋体, monospace; word-wrap: break-word; white-space: pre-wrap; padding-top: 0px" accuse="aRA">delete from tbl_vod where d_id  in (<br />select d_id from tbl_vod<br />minus<br />select max(d_id) from tbl_vod group by d_name<br />)<br />这样应该可以了</pre></div></div>
<div style="padding-bottom: 5px; widows: 2; text-transform: none; background-color: rgb(241,254,221); text-indent: 0px; letter-spacing: normal; font: 14px/24px arial, 宋体, sans-serif, 'Microsoft YaHei', tahoma; white-space: normal; orphans: 2; color: rgb(51,51,51); word-spacing: 0px; padding-top: 5px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" id="replyask-40935149" class="replyask line pt-5 pb-5">
<div style="display: inline; float: left; color: rgb(94,187,11); font-size: 12px" class="ask f-12 grid">追问</div>
<div style="word-wrap: break-word; margin-left: 40px; word-break: break-all" id="replyask-content-40935149" class="replyask-content line ml-10" accuse="qRA"><pre style="padding-bottom: 0px; margin: 0px 100px 0px 0px; padding-left: 0px; padding-right: 0px; font-family: arial, 'courier new', courier, 宋体, monospace; word-wrap: break-word; white-space: pre-wrap; padding-top: 0px" accuse="qRA">#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'select max(d_id) from tbl_vod group by d_name)' at line 1<br /><br />d_id是不重复的</pre></div></div>
<div style="padding-bottom: 5px; widows: 2; text-transform: none; background-color: rgb(241,254,221); text-indent: 0px; letter-spacing: normal; font: 14px/24px arial, 宋体, sans-serif, 'Microsoft YaHei', tahoma; white-space: normal; orphans: 2; color: rgb(51,51,51); word-spacing: 0px; padding-top: 5px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" id="replyask-40937729" class="replyask line pt-5 pb-5">
<div style="display: inline; float: left; color: rgb(65,144,227); font-size: 12px" class="reply f-12 grid">回答</div>
<div style="word-wrap: break-word; margin-left: 40px; word-break: break-all" id="replyask-content-40937729" class="replyask-content line ml-10" accuse="aRA"><pre style="padding-bottom: 0px; margin: 0px 100px 0px 0px; padding-left: 0px; padding-right: 0px; font-family: arial, 'courier new', courier, 宋体, monospace; word-wrap: break-word; white-space: pre-wrap; padding-top: 0px" accuse="aRA">delete from tbl_vod where d_id not in (<br />select max(d_id) from tbl_vod group by d_name<br />)<br />原来mysql不支持minus<br />数据不多的话 用这句<br />意思是先选出不重复d_name对应的d_id <br />然后删除d_id不在这些记录里的数据</pre></div></div>
<div style="padding-bottom: 5px; widows: 2; text-transform: none; background-color: rgb(241,254,221); text-indent: 0px; letter-spacing: normal; font: 14px/24px arial, 宋体, sans-serif, 'Microsoft YaHei', tahoma; white-space: normal; orphans: 2; color: rgb(51,51,51); word-spacing: 0px; padding-top: 5px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" id="replyask-41063407" class="replyask line pt-5 pb-5">
<div style="display: inline; float: left; color: rgb(94,187,11); font-size: 12px" class="ask f-12 grid">追问</div>
<div style="word-wrap: break-word; margin-left: 40px; word-break: break-all" id="replyask-content-41063407" class="replyask-content line ml-10" accuse="qRA"><pre style="padding-bottom: 0px; margin: 0px 100px 0px 0px; padding-left: 0px; padding-right: 0px; font-family: arial, 'courier new', courier, 宋体, monospace; word-wrap: break-word; white-space: pre-wrap; padding-top: 0px" accuse="qRA">#1093 - You can't specify target table 'tbl_vod' for update in FROM clause<br /><br />有5万多数据 有几千条重复吧</pre></div></div>
<div style="padding-bottom: 5px; widows: 2; text-transform: none; background-color: rgb(241,254,221); text-indent: 0px; letter-spacing: normal; font: 14px/24px arial, 宋体, sans-serif, 'Microsoft YaHei', tahoma; white-space: normal; orphans: 2; color: rgb(51,51,51); word-spacing: 0px; padding-top: 5px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" id="replyask-41227010" class="replyask line pt-5 pb-5">
<div style="display: inline; float: left; color: rgb(65,144,227); font-size: 12px" class="reply f-12 grid">回答</div>
<div style="word-wrap: break-word; margin-left: 40px; word-break: break-all" id="replyask-content-41227010" class="replyask-content line ml-10" accuse="aRA"><pre style="padding-bottom: 0px; margin: 0px 100px 0px 0px; padding-left: 0px; padding-right: 0px; font-family: arial, 'courier new', courier, 宋体, monospace; word-wrap: break-word; white-space: pre-wrap; padding-top: 0px" accuse="aRA">delect tbl_vod from tbl_vod a,<br />(select max(d_id) from tbl_vod group by d_name) b<br />where a.d_id&lt;b.d_id and a.d_name=b.d_name</pre></div></div><img src ="http://www.cnitblog.com/xijia0524/aggbug/89593.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xijia0524/" target="_blank">回忆之城</a> 2014-06-08 20:54 <a href="http://www.cnitblog.com/xijia0524/archive/2014/06/08/89593.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转】mysql 一个表中的字段like另一个表中的字段的语句要怎么写</title><link>http://www.cnitblog.com/xijia0524/archive/2014/06/08/89591.html</link><dc:creator>回忆之城</dc:creator><author>回忆之城</author><pubDate>Sun, 08 Jun 2014 12:53:00 GMT</pubDate><guid>http://www.cnitblog.com/xijia0524/archive/2014/06/08/89591.html</guid><wfw:comment>http://www.cnitblog.com/xijia0524/comments/89591.html</wfw:comment><comments>http://www.cnitblog.com/xijia0524/archive/2014/06/08/89591.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xijia0524/comments/commentRss/89591.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xijia0524/services/trackbacks/89591.html</trackback:ping><description><![CDATA[<pre style="padding-bottom: 0px; widows: 2; text-transform: none; text-indent: 0px; margin: 10px 0px 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/24px arial, 'courier new', courier, 宋体, monospace; word-wrap: break-word; white-space: pre-wrap; orphans: 2; color: rgb(51,51,51); word-break: break-all; word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="line mt-10 q-content" accuse="qContent">select a.shuy,b.mingz from a a,b b where a.pfmingc like '%b.mingz%<br /><br />做查询。。想法大概就是像上面的语句这样。。但是要怎么写正确。。</pre><br /><br /><pre style="padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(241,254,221); text-indent: 0px; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/24px arial, 'courier new', courier, 宋体, monospace; word-wrap: break-word; white-space: pre-wrap; orphans: 2; color: rgb(51,51,51); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" id="recommend-content-1595016683" class="recommend-text mb-10" accuse="aContent">select a.shuy,b.mingz from a a,b b where a.pfmingc like '%'||b.mingz||'%'<br />或者使用<br /><strong><span style="color: red">select a.shuy,b.mingz from a a,b b where a.pfmingc like </span><span style="color: red">concat ('%&#8216;,b.mingz,'%')</span></strong></pre><br /><pre style="padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/24px arial, 'courier new', courier, 宋体, monospace; word-wrap: break-word; white-space: pre-wrap; orphans: 2; color: rgb(51,51,51); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" id="answer-content-1595398935" class="answer-text mb-10" accuse="aContent">select a.shuy,b.mingz from a a,b b where a.pfmingc like '%' +b.mingz+'%'</pre><img src ="http://www.cnitblog.com/xijia0524/aggbug/89591.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xijia0524/" target="_blank">回忆之城</a> 2014-06-08 20:53 <a href="http://www.cnitblog.com/xijia0524/archive/2014/06/08/89591.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转】mysql根据两列进行排序</title><link>http://www.cnitblog.com/xijia0524/archive/2014/05/19/89558.html</link><dc:creator>回忆之城</dc:creator><author>回忆之城</author><pubDate>Mon, 19 May 2014 07:03:00 GMT</pubDate><guid>http://www.cnitblog.com/xijia0524/archive/2014/05/19/89558.html</guid><wfw:comment>http://www.cnitblog.com/xijia0524/comments/89558.html</wfw:comment><comments>http://www.cnitblog.com/xijia0524/archive/2014/05/19/89558.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xijia0524/comments/commentRss/89558.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xijia0524/services/trackbacks/89558.html</trackback:ping><description><![CDATA[<span style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; display: inline !important; font: 14px/21px tahoma, helvetica, arial; white-space: normal; orphans: 2; float: none; color: rgb(69,69,69); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">select * from product order by p_total desc,p_id desc;</span><img src ="http://www.cnitblog.com/xijia0524/aggbug/89558.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xijia0524/" target="_blank">回忆之城</a> 2014-05-19 15:03 <a href="http://www.cnitblog.com/xijia0524/archive/2014/05/19/89558.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转】shell 下执行mysql 命令</title><link>http://www.cnitblog.com/xijia0524/archive/2014/04/20/89477.html</link><dc:creator>回忆之城</dc:creator><author>回忆之城</author><pubDate>Sun, 20 Apr 2014 04:54:00 GMT</pubDate><guid>http://www.cnitblog.com/xijia0524/archive/2014/04/20/89477.html</guid><wfw:comment>http://www.cnitblog.com/xijia0524/comments/89477.html</wfw:comment><comments>http://www.cnitblog.com/xijia0524/archive/2014/04/20/89477.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xijia0524/comments/commentRss/89477.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xijia0524/services/trackbacks/89477.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 原文链接在shell开发中，很多时候我们需要操作mysql数据库（比如：查询数据、导出数据等），但是我们又无法进入mysql命令行的环境，就需要在shell环境中模拟mysql的环境，使用mysql相关命令，本文总结几种shell操作mysql的方法，供大家参考。方案1mysql&nbsp;-uuser&nbsp;-ppasswd&nbsp;-e"insert&nbsp;Log...&nbsp;&nbsp;<a href='http://www.cnitblog.com/xijia0524/archive/2014/04/20/89477.html'>阅读全文</a><img src ="http://www.cnitblog.com/xijia0524/aggbug/89477.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xijia0524/" target="_blank">回忆之城</a> 2014-04-20 12:54 <a href="http://www.cnitblog.com/xijia0524/archive/2014/04/20/89477.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转】Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist  </title><link>http://www.cnitblog.com/xijia0524/archive/2014/03/24/89344.html</link><dc:creator>回忆之城</dc:creator><author>回忆之城</author><pubDate>Mon, 24 Mar 2014 06:19:00 GMT</pubDate><guid>http://www.cnitblog.com/xijia0524/archive/2014/03/24/89344.html</guid><wfw:comment>http://www.cnitblog.com/xijia0524/comments/89344.html</wfw:comment><comments>http://www.cnitblog.com/xijia0524/archive/2014/03/24/89344.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xijia0524/comments/commentRss/89344.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xijia0524/services/trackbacks/89344.html</trackback:ping><description><![CDATA[<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(102,102,102); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">启动mysql</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(102,102,102); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">Starting MySQL.Manager of pid-file quit without updating fi[失败]</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(102,102,102); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">查看日志 /var/lib/mysql/localhost.err</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 8px 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 12px/19px Arial, Helvetica, sans-serif; white-space: normal; orphans: 2; color: rgb(85,85,85); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 8px 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 12px/19px Arial, Helvetica, sans-serif; white-space: normal; orphans: 2; color: rgb(85,85,85); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">最终解决方法如下：</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 8px 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 12px/19px Arial, Helvetica, sans-serif; white-space: normal; orphans: 2; color: rgb(85,85,85); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">在mysql的安装目录下，我的是/usr/local/mysql</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 8px 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 12px/19px Arial, Helvetica, sans-serif; white-space: normal; orphans: 2; color: rgb(85,85,85); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px"><span style="color: red"><strong>./usr/bin/mysql/mysql_install_db&nbsp;&nbsp; --usrer=mysql&nbsp; --datadir=/var/lib/mysql</strong><br /><br /></span><strong></p></strong>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 8px 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 12px/19px Arial, Helvetica, sans-serif; white-space: normal; orphans: 2; color: rgb(85,85,85); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">原因是重装的时候数据目录不一致导致</p>
<p style="text-align: left; padding-bottom: 0px; line-height: 19px; widows: 2; text-transform: none; background-color: rgb(255,255,255); font-variant: normal; font-style: normal; text-indent: 0px; margin: 8px 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font-family: Arial, Helvetica, sans-serif; white-space: normal; orphans: 2; color: rgb(85,85,85); font-size: 12px; word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">然后再次启动，OK<br />这样问题同样也会出现 你将自己的数据库的数据文件修改为别的目录的时候，因为你没有在相应的目录下创建数据库权限表，解决办法就是你重新运行mysql_install_db 文件，重新生成数据库权限表，但是相应的你也要重新建里用户，以及设置权限； 第二个办法应该将老的权限表的文件拷贝倒相应数据库表对应的目录先即可，但是第二个办法我没有用过只是根据自己的想象猜的。如果有高手请给确认一下是否正确<br /></p><img src ="http://www.cnitblog.com/xijia0524/aggbug/89344.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xijia0524/" target="_blank">回忆之城</a> 2014-03-24 14:19 <a href="http://www.cnitblog.com/xijia0524/archive/2014/03/24/89344.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转】Got error 28 from storage engine的解决方法</title><link>http://www.cnitblog.com/xijia0524/archive/2014/01/21/89225.html</link><dc:creator>回忆之城</dc:creator><author>回忆之城</author><pubDate>Tue, 21 Jan 2014 05:57:00 GMT</pubDate><guid>http://www.cnitblog.com/xijia0524/archive/2014/01/21/89225.html</guid><wfw:comment>http://www.cnitblog.com/xijia0524/comments/89225.html</wfw:comment><comments>http://www.cnitblog.com/xijia0524/archive/2014/01/21/89225.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xijia0524/comments/commentRss/89225.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xijia0524/services/trackbacks/89225.html</trackback:ping><description><![CDATA[<p style="padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0.6em 0px 1.2em; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 12px/20px Verdana, sans-serif; white-space: normal; orphans: 2; color: rgb(73,73,73); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">&nbsp;<span style="background-color: rgb(251,253,255); font-family: Simsun; color: rgb(54,54,54); font-size: 14px">Got&nbsp;error&nbsp;28&nbsp;from&nbsp;storage&nbsp;engine</span></p>
<p style="padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(251,253,255); text-indent: 0px; margin: 5px 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/26px Simsun; white-space: normal; orphans: 2; color: rgb(54,54,54); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">以下是详细错误代码。<br /><br />mysql&gt;&nbsp;show&nbsp;triggers;<br /><br />ERROR&nbsp;1030&nbsp;(HY000):&nbsp;Got&nbsp;error&nbsp;28&nbsp;from&nbsp;storage&nbsp;engine&nbsp;<br /><br />mysql&gt;&nbsp;show&nbsp;errors;<br /><br />+-------+------+--------------------------------------------------------+<br /><br />|&nbsp;Level&nbsp;|&nbsp;Code&nbsp;|&nbsp;Message&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|<br /><br />+-------+------+--------------------------------------------------------+<br /><br />|&nbsp;Error&nbsp;|&nbsp;1030&nbsp;|&nbsp;Got&nbsp;error&nbsp;28&nbsp;from&nbsp;storage&nbsp;engine&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;<br /><br />|&nbsp;Error&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;6&nbsp;|&nbsp;Error&nbsp;on&nbsp;delete&nbsp;of&nbsp;'/tmp/#sql_1515_0.MYI'&nbsp;(Errcode:&nbsp;2)&nbsp;|&nbsp;<br /><br />+-------+------+--------------------------------------------------------+<br /><br />2&nbsp;rows&nbsp;in&nbsp;set&nbsp;(0.00&nbsp;sec)</p>
<p style="padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(251,253,255); text-indent: 0px; margin: 5px 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/26px Simsun; white-space: normal; orphans: 2; color: rgb(54,54,54); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">解决思路：&nbsp;<br /><br />1.&nbsp;看了下具体错误代码&nbsp;<br /><br />mysql&gt;&nbsp;\!&nbsp;perror&nbsp;6<br /><br />OS&nbsp;error&nbsp;code&nbsp;&nbsp;&nbsp;6:&nbsp;&nbsp;No&nbsp;such&nbsp;device&nbsp;or&nbsp;address&nbsp;<br /><br />那就是/tmp/#sql_1515_0.MYI这个文件没有？&nbsp;这个文件是临时生成的，本来就应该没有啊！<br /><br />那就是创建的时候出错了？<br /><br />2.&nbsp;查看了下磁盘空间，原来我的第一块虚拟盘满了，而我的第二块盘上存放MySQL数据，所有有空间足够！&nbsp;<br /><br />[root@ytt&nbsp;david.yang]#&nbsp;df&nbsp;-h<br /><br />Filesystem&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Size&nbsp;&nbsp;Used&nbsp;Avail&nbsp;Use%&nbsp;Mounted&nbsp;on<br /><br />/dev/sda1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;4.9G&nbsp;&nbsp;4.9G&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0&nbsp;100%&nbsp;/<br /><br />tmpfs&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;252M&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0&nbsp;&nbsp;252M&nbsp;&nbsp;&nbsp;0%&nbsp;/dev/shm<br /><br />/dev/sdb1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;9.9G&nbsp;&nbsp;2.8G&nbsp;&nbsp;6.6G&nbsp;&nbsp;30%&nbsp;/opt/sdb</p>
<p style="padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(251,253,255); text-indent: 0px; margin: 5px 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/26px Simsun; white-space: normal; orphans: 2; color: rgb(54,54,54); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px"><br /><br />删除了一些文件。<br /><br />[root@ytt&nbsp;david.yang]#&nbsp;df&nbsp;-h<br /><br />Filesystem&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Size&nbsp;&nbsp;Used&nbsp;Avail&nbsp;Use%&nbsp;Mounted&nbsp;on<br /><br />/dev/sda1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;4.9G&nbsp;&nbsp;3.5G&nbsp;&nbsp;1.1G&nbsp;&nbsp;77%&nbsp;/<br /><br />tmpfs&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;252M&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0&nbsp;&nbsp;252M&nbsp;&nbsp;&nbsp;0%&nbsp;/dev/shm<br /><br />/dev/sdb1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;9.9G&nbsp;&nbsp;2.8G&nbsp;&nbsp;6.6G&nbsp;&nbsp;30%&nbsp;/opt/sdb</p>
<p style="padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(251,253,255); text-indent: 0px; margin: 5px 0px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/26px Simsun; white-space: normal; orphans: 2; color: rgb(54,54,54); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">分析:&nbsp;因为磁盘空间不足的原因</p><img src ="http://www.cnitblog.com/xijia0524/aggbug/89225.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xijia0524/" target="_blank">回忆之城</a> 2014-01-21 13:57 <a href="http://www.cnitblog.com/xijia0524/archive/2014/01/21/89225.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转】order by 和 group by 的区别？</title><link>http://www.cnitblog.com/xijia0524/archive/2014/01/18/89219.html</link><dc:creator>回忆之城</dc:creator><author>回忆之城</author><pubDate>Sat, 18 Jan 2014 03:48:00 GMT</pubDate><guid>http://www.cnitblog.com/xijia0524/archive/2014/01/18/89219.html</guid><wfw:comment>http://www.cnitblog.com/xijia0524/comments/89219.html</wfw:comment><comments>http://www.cnitblog.com/xijia0524/archive/2014/01/18/89219.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xijia0524/comments/commentRss/89219.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xijia0524/services/trackbacks/89219.html</trackback:ping><description><![CDATA[<pre style="padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(241,254,221); text-indent: 0px; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/24px arial, 'courier new', courier, 宋体, monospace; word-wrap: break-word; white-space: pre-wrap; orphans: 2; color: rgb(51,51,51); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" id="best-content-1092674984" class="best-text mb-10" accuse="aContent">order by 排序查询、asc升序、desc降序<br />示例：<br />select * from 学生表 order by 年龄    查询学生表信息、按年龄的升序(默认、可缺省、从低到高)排列显示<br />也可以多条件排序、 比如 order by 年龄,成绩 desc     按年龄升序排列后、再按成绩降序排列<br /> <br />group by  分组查询、having 只能用于group by子句、作用于组内，having条件子句可以直接跟函数表达式。使用group by 子句的查询语句需要使用<a style="color: rgb(45,100,179); text-decoration: none" class="inner-link decor-none" href="http://zhidao.baidu.com/search?word=%E8%81%9A%E5%90%88%E5%87%BD%E6%95%B0&amp;fr=qb_search_exp&amp;ie=utf8" rel="nofollow" target="_blank" log="pos:innerLink" data-word="0">聚合函数</a>。<br />示例：<br />select 学号,SUM(成绩) from 选课表 group by 学号  按学号分组、查询每个学号的总成绩<br /> <br />select 学号,AVG(成绩) from 选课表  <br />group by 学号<br />having AVG(成绩)&gt;(select AVG(成绩) from 选课表 where 课程号='001')<br />order by AVG(成绩) desc<br />查询平均成绩大于001课程平均成绩的学号、并按平均成绩的降序排列</pre><pre style="padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(241,254,221); text-indent: 0px; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/24px arial, 'courier new', courier, 宋体, monospace; word-wrap: break-word; white-space: pre-wrap; orphans: 2; color: rgb(51,51,51); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="best-text mb-10" accuse="aContent">&nbsp;</pre><pre style="padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(241,254,221); text-indent: 0px; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/24px arial, 'courier new', courier, 宋体, monospace; word-wrap: break-word; white-space: pre-wrap; orphans: 2; color: rgb(51,51,51); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="best-text mb-10" accuse="aContent"><pre style="padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/24px arial, 'courier new', courier, 宋体, monospace; word-wrap: break-word; white-space: pre-wrap; orphans: 2; color: rgb(51,51,51); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" id="answer-content-1092676480" class="answer-text mb-10" accuse="aContent">Order By 排序，按指定的字段排序<br />Group BY 聚合，按指定的字段分组，是某个字段相同的放在一组进行分组,应MAX(),SUM()等聚合函数</pre></pre><img src ="http://www.cnitblog.com/xijia0524/aggbug/89219.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xijia0524/" target="_blank">回忆之城</a> 2014-01-18 11:48 <a href="http://www.cnitblog.com/xijia0524/archive/2014/01/18/89219.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转】MySQL my.cnf参数配置优化详解</title><link>http://www.cnitblog.com/xijia0524/archive/2014/01/09/89184.html</link><dc:creator>回忆之城</dc:creator><author>回忆之城</author><pubDate>Thu, 09 Jan 2014 04:02:00 GMT</pubDate><guid>http://www.cnitblog.com/xijia0524/archive/2014/01/09/89184.html</guid><wfw:comment>http://www.cnitblog.com/xijia0524/comments/89184.html</wfw:comment><comments>http://www.cnitblog.com/xijia0524/archive/2014/01/09/89184.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xijia0524/comments/commentRss/89184.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xijia0524/services/trackbacks/89184.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: PS：本配置文件针对Dell R710，双至强E5620、16G内存的硬件配置。CentOS 5.6 64位系统，MySQL&nbsp;5.5.x 稳定版。适用于日IP 50-100w，PV 100-300w的站点，主要使用InnoDB存储引擎。其他应用环境请根据实际情况来设置优化。# 以下选项会被MySQL客户端应用读取。# 注意只有MySQL附带的客户端应用程序保证可以读取这段内容。# 如...&nbsp;&nbsp;<a href='http://www.cnitblog.com/xijia0524/archive/2014/01/09/89184.html'>阅读全文</a><img src ="http://www.cnitblog.com/xijia0524/aggbug/89184.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xijia0524/" target="_blank">回忆之城</a> 2014-01-09 12:02 <a href="http://www.cnitblog.com/xijia0524/archive/2014/01/09/89184.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转】Linux MySQL 4G内存my.cnf配置表</title><link>http://www.cnitblog.com/xijia0524/archive/2014/01/09/89185.html</link><dc:creator>回忆之城</dc:creator><author>回忆之城</author><pubDate>Thu, 09 Jan 2014 04:02:00 GMT</pubDate><guid>http://www.cnitblog.com/xijia0524/archive/2014/01/09/89185.html</guid><wfw:comment>http://www.cnitblog.com/xijia0524/comments/89185.html</wfw:comment><comments>http://www.cnitblog.com/xijia0524/archive/2014/01/09/89185.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xijia0524/comments/commentRss/89185.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xijia0524/services/trackbacks/89185.html</trackback:ping><description><![CDATA[<p style="widows: 2; text-transform: none; background-color: rgb(239,239,239); text-indent: 0px; letter-spacing: normal; font: 14px/22px tahoma, 宋体; white-space: normal; orphans: 2; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px"># The following options will be passed to all MySQL clients<br />[client]<br />character-set-server = utf8&nbsp; #####客户端默认连接字集集,若编译安装时已指定则不用填写<br />port&nbsp; = 3306&nbsp;&nbsp;&nbsp; ###客户端连接通信端口<br />socket&nbsp; = /tmp/mysql.sock&nbsp;&nbsp; #客户端通信的用户密码端口等信息保存文件</p>
<p style="widows: 2; text-transform: none; background-color: rgb(239,239,239); text-indent: 0px; letter-spacing: normal; font: 14px/22px tahoma, 宋体; white-space: normal; orphans: 2; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px"># Here follows entries for some specific programs</p>
<p style="widows: 2; text-transform: none; background-color: rgb(239,239,239); text-indent: 0px; letter-spacing: normal; font: 14px/22px tahoma, 宋体; white-space: normal; orphans: 2; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px"># The MySQL server<br />[mysqld]<br />port&nbsp; = 3306&nbsp;&nbsp;&nbsp;&nbsp; #mysql服务端监听端口</p>
<p style="widows: 2; text-transform: none; background-color: rgb(239,239,239); text-indent: 0px; letter-spacing: normal; font: 14px/22px tahoma, 宋体; white-space: normal; orphans: 2; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">basedir = /usr/local/mysql&nbsp; ###Mysql软件目录<span class="Apple-converted-space">&nbsp;</span><br />datadir = /usr/local/mysql/var ###mysql数据库存放目录<br />socket&nbsp; = /tmp/mysql.sock&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ##服务端通信文件,若丢失则重启Mysql重新生成,若重启失败,则可能由于mysqld进程未杀死,用pkill mysql后则能重启成功Mysql<br />pid-file =/usr/local/mysql/var/mysql.pid ##服务端pid进程文件,若丢失则重启Mysql重新生成,若重启失败,则可能由于mysqld进程未杀死,用pkill mysql后则能重启成功Mysql<br />skip-external-locking&nbsp;&nbsp; ###防止外部锁定表<br />skip-name-resolve&nbsp;&nbsp;&nbsp; ###禁止Mysqlr的DNS解析,只能通过IP连接数据库<br />key_buffer_size = 384M&nbsp;&nbsp; ###仅针对Myisam表引擎缓存优化<br />max_allowed_packet = 32M&nbsp; ###客户端最大查询表使用的内存<br />table_open_cache = 1024&nbsp;&nbsp; ###服务器最大缓存表数量<br />sort_buffer_size = 2M&nbsp;&nbsp; ##每个连接的最大排序内存<br />join_buffer_size = 1M&nbsp;&nbsp; ##每个连接使用join查询语句的最大内存<br />net_buffer_length = 1M<br />read_buffer_size = 2M<br />read_rnd_buffer_size = 16M<br />myisam_sort_buffer_size = 128M<br />thread_cache_size = 300<br />query_cache_size = 256M<br />query_cache_limit = 2M<br />thread_concurrency = 4&nbsp; ##CPU*2<br />wait_timeout = 120&nbsp;&nbsp; ###SQL语句最大执行时间<br />max_connections = 5000&nbsp;&nbsp; ###允许数据库最大连接数<br />max_connect_errors = 6000&nbsp; ##允许客户端连接数据库出错次数,能防止暴力破解数据库密码</p>
<p style="widows: 2; text-transform: none; background-color: rgb(239,239,239); text-indent: 0px; letter-spacing: normal; font: 14px/22px tahoma, 宋体; white-space: normal; orphans: 2; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">character-set-server = utf8&nbsp;&nbsp; ##服务器和数据库默认字符集<br />collation-server = utf8_general_ci&nbsp; ###客户端校正字符集<br />log_slow_queries = slowquery.log&nbsp; ##慢查询日志文件<br />long_query_time = 3&nbsp; ###慢查询时间<br />myisam_recover&nbsp; ###mysql重启自动修复MYisam表<br />replicate-ignore-db = mysql&nbsp;&nbsp; ###数据同步时不需要同步的数据库名称<br />replicate-ignore-db = information_schema<br />bind-address = 121.14.145.96&nbsp;&nbsp; ##服务器多个IP时写上比较重要</p>
<p style="widows: 2; text-transform: none; background-color: rgb(239,239,239); text-indent: 0px; letter-spacing: normal; font: 14px/22px tahoma, 宋体; white-space: normal; orphans: 2; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px"><br /># Don't listen on a TCP/IP port at all. This can be a security enhancement,<br /># if all processes that need to connect to mysqld run on the same host.<br /># All interaction with mysqld must be made via Unix sockets or named pipes.<br /># Note that using this option without enabling named pipes on Windows<br /># (via the "enable-named-pipe" option) will render mysqld useless!<br />#<span class="Apple-converted-space">&nbsp;</span><br />#skip-networking</p>
<p style="widows: 2; text-transform: none; background-color: rgb(239,239,239); text-indent: 0px; letter-spacing: normal; font: 14px/22px tahoma, 宋体; white-space: normal; orphans: 2; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px"># Replication Master Server (default)<br /># binary logging is required for replication<br />log-bin=mysql-bin</p>
<p style="widows: 2; text-transform: none; background-color: rgb(239,239,239); text-indent: 0px; letter-spacing: normal; font: 14px/22px tahoma, 宋体; white-space: normal; orphans: 2; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px"># binary logging format - mixed recommended<br />binlog_format=mixed</p>
<p style="widows: 2; text-transform: none; background-color: rgb(239,239,239); text-indent: 0px; letter-spacing: normal; font: 14px/22px tahoma, 宋体; white-space: normal; orphans: 2; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px"># required unique id between 1 and 2^32 - 1<br /># defaults to 1 if master-host is not set<br /># but will not function as a master if omitted<br />server-id = 1</p>
<p style="widows: 2; text-transform: none; background-color: rgb(239,239,239); text-indent: 0px; letter-spacing: normal; font: 14px/22px tahoma, 宋体; white-space: normal; orphans: 2; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px"># Uncomment the following if you are using InnoDB tables<br />#innodb_data_home_dir = /usr/local/mysql/var<br />#innodb_data_file_path = ibdata1:10M:autoextend<br />#innodb_log_group_home_dir = /usr/local/mysql/var<br /># You can set .._buffer_pool_size up to 50 - 80 %<br /># of RAM but beware of setting memory usage too high<br />#innodb_buffer_pool_size = 16M<br />#innodb_additional_mem_pool_size = 2M<br /># Set .._log_file_size to 25 % of buffer pool size<br />#innodb_log_file_size = 5M<br />#innodb_log_buffer_size = 8M<br />#innodb_flush_log_at_trx_commit = 1<br />#innodb_lock_wait_timeout = 50</p>
<p style="widows: 2; text-transform: none; background-color: rgb(239,239,239); text-indent: 0px; letter-spacing: normal; font: 14px/22px tahoma, 宋体; white-space: normal; orphans: 2; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">[mysqldump]<br />quick<br />max_allowed_packet = 32M</p>
<p style="widows: 2; text-transform: none; background-color: rgb(239,239,239); text-indent: 0px; letter-spacing: normal; font: 14px/22px tahoma, 宋体; white-space: normal; orphans: 2; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">[mysql]<br />no-auto-rehash<br /># Remove the next comment character if you are not familiar with SQL<br />#safe-updates</p>
<p style="widows: 2; text-transform: none; background-color: rgb(239,239,239); text-indent: 0px; letter-spacing: normal; font: 14px/22px tahoma, 宋体; white-space: normal; orphans: 2; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">[myisamchk]<br />key_buffer_size = 256M<br />sort_buffer_size = 256M<br />read_buffer = 2M<br />write_buffer = 2M</p>
<p style="widows: 2; text-transform: none; background-color: rgb(239,239,239); text-indent: 0px; letter-spacing: normal; font: 14px/22px tahoma, 宋体; white-space: normal; orphans: 2; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">[mysqlhotcopy]<br />interactive-timeout</p><img src ="http://www.cnitblog.com/xijia0524/aggbug/89185.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xijia0524/" target="_blank">回忆之城</a> 2014-01-09 12:02 <a href="http://www.cnitblog.com/xijia0524/archive/2014/01/09/89185.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转】浅谈MySql的存储引擎（表类型）</title><link>http://www.cnitblog.com/xijia0524/archive/2013/12/26/89135.html</link><dc:creator>回忆之城</dc:creator><author>回忆之城</author><pubDate>Thu, 26 Dec 2013 08:55:00 GMT</pubDate><guid>http://www.cnitblog.com/xijia0524/archive/2013/12/26/89135.html</guid><wfw:comment>http://www.cnitblog.com/xijia0524/comments/89135.html</wfw:comment><comments>http://www.cnitblog.com/xijia0524/archive/2013/12/26/89135.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xijia0524/comments/commentRss/89135.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xijia0524/services/trackbacks/89135.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 什么是MySql数据库&nbsp;&nbsp;&nbsp; 通常意义上，数据库也就是数据的集合，具体到计算机上数据库可以是存储器上一些文件的集合或者一些内存数据的集合。&nbsp;&nbsp;&nbsp; 我们通常说的MySql数据库，sql server数据库等等其实是数据库管理系统，它们可以存储数据，并提供查询和更新数据库中的数据的功能等等。根据数据库如何存储数据和如何操作数据的实现机制不同，...&nbsp;&nbsp;<a href='http://www.cnitblog.com/xijia0524/archive/2013/12/26/89135.html'>阅读全文</a><img src ="http://www.cnitblog.com/xijia0524/aggbug/89135.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xijia0524/" target="_blank">回忆之城</a> 2013-12-26 16:55 <a href="http://www.cnitblog.com/xijia0524/archive/2013/12/26/89135.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转】mySQL占用虚拟内存达8百多兆问题解决思路</title><link>http://www.cnitblog.com/xijia0524/archive/2013/12/16/89036.html</link><dc:creator>回忆之城</dc:creator><author>回忆之城</author><pubDate>Mon, 16 Dec 2013 01:22:00 GMT</pubDate><guid>http://www.cnitblog.com/xijia0524/archive/2013/12/16/89036.html</guid><wfw:comment>http://www.cnitblog.com/xijia0524/comments/89036.html</wfw:comment><comments>http://www.cnitblog.com/xijia0524/archive/2013/12/16/89036.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xijia0524/comments/commentRss/89036.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xijia0524/services/trackbacks/89036.html</trackback:ping><description><![CDATA[<p style="padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 2em; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Verdana, Arial, Tahoma; word-wrap: break-word; white-space: normal; orphans: 2; color: rgb(51,51,51); word-break: break-all; word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">为了装mysql环境测试，装上后发现启动后mysql占用了很大的虚拟内存，达8百多兆。网上搜索了一下，得到高人指点my.ini。再也没见再详细的了..只好打开my.ini逐行的啃，虽然英文差了点，不过多少M还是看得明的^-^</p>
<p style="padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 2em; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Verdana, Arial, Tahoma; word-wrap: break-word; white-space: normal; orphans: 2; color: rgb(51,51,51); word-break: break-all; word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">更改后如下：<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />innodb_buffer_pool_size=576M -&gt;256M InnoDB引擎缓冲区占了大头，首要就是拿它开刀<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />query_cache_size=100M -&gt;16M 查询缓存<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />tmp_table_size=102M -&gt;64M 临时表大小<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />key_buffer_size=256m -&gt;32M</p>
<p style="padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 2em; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Verdana, Arial, Tahoma; word-wrap: break-word; white-space: normal; orphans: 2; color: rgb(51,51,51); word-break: break-all; word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">重启mysql服务后，虚拟内存降到200以下．<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />另外mysql安装目录下有几个文件：my-huge.ini 、my-large.ini、my-medium.ini...这几个是根据内存大小作的建议配置，新手在设置的时候也可以参考一下。<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />2G内存的MYSQL数据库服务器 my.ini优化 (my.ini)<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />2G内存,针对站少,优质型的设置,试验特：<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />table_cache=1024 物理内存越大,设置就越大.默认为2402,调到512-1024最佳<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />innodb_additional_mem_pool_size=8M 默认为2M<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />innodb_flush_log_at_trx_commit=0 等到innodb_log_buffer_size列队满后再统一储存,默认为1<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />innodb_log_buffer_size=4M 默认为1M<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />innodb_thread_concurrency=8 你的服务器CPU有几个就设置为几,默认为8<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />key_buffer_size=256M 默认为218 调到128最佳<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />tmp_table_size=64M 默认为16M 调到64-256最挂<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />read_buffer_size=4M 默认为64K<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />read_rnd_buffer_size=16M 默认为256K<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />sort_buffer_size=32M 默认为256K<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />max_connections=1024 默认为1210</p>
<p style="padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 2em; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Verdana, Arial, Tahoma; word-wrap: break-word; white-space: normal; orphans: 2; color: rgb(51,51,51); word-break: break-all; word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">试验一：<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />table_cache=512或1024<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />innodb_additional_mem_pool_size=2M<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />innodb_flush_log_at_trx_commit=0<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />innodb_log_buffer_size=1M<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />innodb_thread_concurrency=8 你的服务器CPU有几个就设置为几,默认为8<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />key_buffer_size=128M<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />tmp_table_size=128M<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />read_buffer_size=64K或128K<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />read_rnd_buffer_size=256K<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />sort_buffer_size=512K<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />max_connections=1024</p>
<p style="padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 2em; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Verdana, Arial, Tahoma; word-wrap: break-word; white-space: normal; orphans: 2; color: rgb(51,51,51); word-break: break-all; word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">试验二：<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />table_cache=512或1024<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />innodb_additional_mem_pool_size=8M<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />innodb_flush_log_at_trx_commit=0<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />innodb_log_buffer_size=4M<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />innodb_thread_concurrency=8<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />key_buffer_size=128M<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />tmp_table_size=128M<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />read_buffer_size=4M<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />read_rnd_buffer_size=16M<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />sort_buffer_size=32M<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />max_connections=1024</p>
<p style="padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 2em; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Verdana, Arial, Tahoma; word-wrap: break-word; white-space: normal; orphans: 2; color: rgb(51,51,51); word-break: break-all; word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">一般：<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />table_cache=512<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />innodb_additional_mem_pool_size=8M<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />innodb_flush_log_at_trx_commit=0<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />innodb_log_buffer_size=4M<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />innodb_thread_concurrency=8<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />key_buffer_size=128M<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />tmp_table_size=128M<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />read_buffer_size=4M<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />read_rnd_buffer_size=16M<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />sort_buffer_size=32M<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />max_connections=1024</p>
<p style="padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 2em; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Verdana, Arial, Tahoma; word-wrap: break-word; white-space: normal; orphans: 2; color: rgb(51,51,51); word-break: break-all; word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">经过测试.没有特殊情况,最好还是用默认的.<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />2G内存,针对站多,抗压型的设置,最佳：<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />table_cache=1024 物理内存越大,设置就越大.默认为2402,调到512-1024最佳<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />innodb_additional_mem_pool_size=4M 默认为2M<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />innodb_flush_log_at_trx_commit=1<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />(设置为0就是等到innodb_log_buffer_size列队满后再统一储存,默认为1)<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />innodb_log_buffer_size=2M 默认为1M<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />innodb_thread_concurrency=8 你的服务器CPU有几个就设置为几,建议用默认一般为8<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />key_buffer_size=256M 默认为218 调到128最佳<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />tmp_table_size=64M 默认为16M 调到64-256最挂<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />read_buffer_size=4M 默认为64K<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />read_rnd_buffer_size=16M 默认为256K<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />sort_buffer_size=32M 默认为256K<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />max_connections=1024 默认为1210<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />thread_cache_size=120 默认为60<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />query_cache_size=64M</p>
<p style="padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 2em; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Verdana, Arial, Tahoma; word-wrap: break-word; white-space: normal; orphans: 2; color: rgb(51,51,51); word-break: break-all; word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">优化mysql数据库性能的十个参数<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />(1)、max_connections：<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />允许的同时客户的数量。增加该值增加 mysqld 要求的文件描述符的数量。这个数字应该增加，否则，你将经常看到 too many connections 错误。 默认数值是100，我把它改为1024 。<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />(2)、record_buffer：<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />每个进行一个顺序扫描的线程为其扫描的每张表分配这个大小的一个缓冲区。如果你做很多顺序扫描，你可能想要增加该值。默认数值是131072(128k)，我把它改为16773120 (16m)<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />(3)、key_buffer_size：<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />索引块是缓冲的并且被所有的线程共享。key_buffer_size是用于索引块的缓冲区大小，增加它可得到更好处理的索引(对所有读和多重写)，到你能负担得起那样多。如果你使它太大，系统将开始换页并且真的变慢了。默认数值是8388600(8m)，我的mysql主机有2gb内存，所以我把它改为 402649088(400mb)。<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />4)、back_log：<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />要求 mysql 能有的连接数量。当主要mysql线程在一个很短时间内得到非常多的连接请求，这就起作用，然后主线程花些时间(尽管很短)检查连接并且启动一个新线程。<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />back_log 值指出在mysql暂时停止回答新请求之前的短时间内多少个请求可以被存在堆栈中。只有如果期望在一个短时间内有很多连接，你需要增加它，换句话说，这值对到来的tcp/ip连接的侦听队列的大小。你的操作系统在这个队列大小上有它自己的限制。试图设定back_log高于你的操作系统的限制将是无效的。<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />当你观察你的主机进程列表，发现大量 264084 | unauthenticated user | xxx.xxx.xxx.xxx | null | connect | null | login | null 的待连接进程时，就要加大 back_log 的值了。默认数值是50，我把它改为500。<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />(5)、interactive_timeout：<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />服务器在关闭它前在一个交互连接上等待行动的秒数。一个交互的客户被定义为对 mysql_real_connect()使用 client_interactive 选项的客户。 默认数值是28800，我把它改为7200。<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />(6)、sort_buffer：<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />每个需要进行排序的线程分配该大小的一个缓冲区。增加这值加速order by或group by操作。默认数值是2097144(2m)，我把它改为 16777208 (16m)。<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />(7)、table_cache：<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />为所有线程打开表的数量。增加该值能增加mysqld要求的文件描述符的数量。mysql对每个唯一打开的表需要2个文件描述符。默认数值是64，我把它改为512。<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />(8)、thread_cache_size：<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />可以复用的保存在中的线程的数量。如果有，新的线程从缓存中取得，当断开连接的时候如果有空间，客户的线置在缓存中。如果有很多新的线程，为了提高性能可以这个变量值。通过比较 connections 和 threads_created 状态的变量，可以看到这个变量的作用。我把它设置为 80。<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />(9)mysql的搜索功能<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />用mysql进行搜索，目的是能不分大小写，又能用中文进行搜索<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />只需起动mysqld时指定 --default-character-set=gb2312<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />(10)、wait_timeout：<br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" />服务器在关闭它之前在一个连接上等待行动的秒数。 默认数值是28800，我把它改为7200。</p>
<p style="padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 2em; margin: 10px auto; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/25px Verdana, Arial, Tahoma; word-wrap: break-word; white-space: normal; orphans: 2; color: rgb(51,51,51); word-break: break-all; word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">注：参数的调整可以通过修改 /etc/my.cnf 文件并重启 mysql 实现。这是一个比较谨慎的工作，上面的结果也仅仅是我的一些看法，你可以根据你自己主机的硬件情况（特别是内存大小）进一步修改。</p><img src ="http://www.cnitblog.com/xijia0524/aggbug/89036.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xijia0524/" target="_blank">回忆之城</a> 2013-12-16 09:22 <a href="http://www.cnitblog.com/xijia0524/archive/2013/12/16/89036.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转】MySQL查询重复字段,及删除重复记录的方法  </title><link>http://www.cnitblog.com/xijia0524/archive/2013/12/13/89004.html</link><dc:creator>回忆之城</dc:creator><author>回忆之城</author><pubDate>Fri, 13 Dec 2013 10:01:00 GMT</pubDate><guid>http://www.cnitblog.com/xijia0524/archive/2013/12/13/89004.html</guid><wfw:comment>http://www.cnitblog.com/xijia0524/comments/89004.html</wfw:comment><comments>http://www.cnitblog.com/xijia0524/archive/2013/12/13/89004.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xijia0524/comments/commentRss/89004.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xijia0524/services/trackbacks/89004.html</trackback:ping><description><![CDATA[<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">MySQL查询重复字段,及删除重复记录的方法（转）</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px"></p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">Submitted by wiley on Thu, 09/03/2009 - 21:36</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">[教学] MySQL查询重复字段,及删除重复记录的方法</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">MySQL, 数据库, 数据库, 字段, 服务器</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">数据库中有个大表，需要查找其中的名字有重复的记录id，以便比较。如果仅仅是查找数据库中name不重复的字段，很容易:</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">SELECT min(`id`),`name` FROM `table` GROUP BY `name`;</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">但是这样并不能得到说有重复字段的id值。（只得到了最小的一个id值）查询哪些字段是重复的也容易:</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">SELECT `name`,count(`name`) as count FROM `table` GROUP BY `name` HAVING count(`name`) &gt;1 ORDER BY count DESC;</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">但是要一次查询到重复字段的id值，就必须使用子查询了，于是使用下面的语句。</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">SELECT `id`,`name` FROM `table` WHERE `name` in (</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">SELECT `name`</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">FROM `table`</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">GROUP BY `name` HAVING count(`name`) &gt;1);</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">但是这条语句在mysql中效率太差，感觉mysql并没有为子查询生成零时表。于是使用先建立零时表:</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">create table `tmptable` as (</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">SELECT `name`</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">FROM `table`</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">GROUP BY `name` HAVING count(`name`) &gt;1);</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">然后使用多表连接查询：</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">SELECT a.`id`, a.`name` FROM `table` a, `tmptable` t WHERE a.`name` = t.`name`;</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">结果这次结果很快就出来了。</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">查询及删除重复记录的方法</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">(一)</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">1、查找表中多余的重复记录，重复记录是根据单个字段（peopleId）来判断</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">select * from people</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">where peopleId in (select peopleId from people group by peopleId having count(peopleId) &gt; 1)</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">2、删除表中多余的重复记录，重复记录是根据单个字段（peopleId）来判断，只留有rowid最小的记录</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">delete from people</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">where peopleId in (select peopleId from people group by peopleId having count(peopleId) &gt; 1)</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">and rowid not in (select min(rowid) from people group by peopleId having count(peopleId )&gt;1)</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">3、查找表中多余的重复记录（多个字段）</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">select * from vitae a</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">where (a.peopleId,a.seq) in (select peopleId,seq from vitae group by peopleId,seq having count(*) &gt; 1)</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">4、删除表中多余的重复记录（多个字段），只留有rowid最小的记录</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">delete from vitae a</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">where (a.peopleId,a.seq) in (select peopleId,seq from vitae group by peopleId,seq having count(*) &gt; 1)</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">and rowid not in (select min(rowid) from vitae group by peopleId,seq having count(*)&gt;1)</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">5、查找表中多余的重复记录（多个字段），不包含rowid最小的记录</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">select * from vitae a</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">where (a.peopleId,a.seq) in (select peopleId,seq from vitae group by peopleId,seq having count(*) &gt; 1)</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">and rowid not in (select min(rowid) from vitae group by peopleId,seq having count(*)&gt;1)</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">(二)</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">比方说</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">在A表中存在一个字段「name」，</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">而且不同记录之间的「name」值有可能会相同，</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">现在就是需要查询出在该表中的各记录之间，「name」值存在重复的项；</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">Select Name,Count(*) From A Group By Name Having Count(*) &gt; 1</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">如果还查性别也相同大则如下:</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">Select Name,sex,Count(*) From A Group By Name,sex Having Count(*) &gt; 1</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">(三)</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">方法一</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">declare @max integer,@id integer</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">declare cur_rows cursor local for select 主字段,count(*) from 表名 group by 主字段 having count(*) &gt;； 1</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">open cur_rows</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">fetch cur_rows into @id,@max</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">while @@fetch_status=0</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">begin</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">select @max = @max -1</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">set rowcount @max</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">delete from 表名 where 主字段 = @id</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">fetch cur_rows into @id,@max</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">end</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">close cur_rows</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">set rowcount 0</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">　　方法二</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">　　有两个意义上的重复记录，一是完全重复的记录，也即所有字段均重复的记录，二是部分关键词段重复的记录，比如Name字段重复，而其它字段不一定重复或都重复可以忽略。</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">　　1、对于第一种重复，比较容易解决，使用</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">select distinct * from tableName</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">　　就可以得到无重复记录的结果集。</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">　　如果该表需要删除重复的记录（重复记录保留1条），可以按以下方法删除</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">select distinct * into #Tmp from tableName</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">drop table tableName</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">select * into tableName from #Tmp</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">drop table #Tmp</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">　　发生这种重复的原因是表设计不周产生的，增加唯一索引列即可解决。</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">　　2、这类重复问题通常要求保留重复记录中的第一条记录，操作方法如下</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">　　假设有重复的字段为Name,Address，要求得到这两个字段唯一的结果集</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">select identity(int,1,1) as autoID, * into #Tmp from tableName</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">select min(autoID) as autoID into #Tmp2 from #Tmp group by Name,autoID</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">select * from #Tmp where autoID in(select autoID from #tmp2)</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">　　最后一个select即得到了Name，Address不重复的结果集（但多了一个autoID字段，实际写时可以写在select子句中省去此列）</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">(四)</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">查询重复</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">select * from tablename where id in (</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">select id from tablename</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">group by id</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">having count(id) &gt; 1</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(225,219,211); text-indent: 2em; margin: 0px 0px 10px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 16px/28px 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53; white-space: normal; orphans: 2; color: rgb(55,42,24); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">)</p><img src ="http://www.cnitblog.com/xijia0524/aggbug/89004.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xijia0524/" target="_blank">回忆之城</a> 2013-12-13 18:01 <a href="http://www.cnitblog.com/xijia0524/archive/2013/12/13/89004.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转】innodb_flush_log_at_trx_commit参数性能的测试</title><link>http://www.cnitblog.com/xijia0524/archive/2013/12/13/89001.html</link><dc:creator>回忆之城</dc:creator><author>回忆之城</author><pubDate>Fri, 13 Dec 2013 06:44:00 GMT</pubDate><guid>http://www.cnitblog.com/xijia0524/archive/2013/12/13/89001.html</guid><wfw:comment>http://www.cnitblog.com/xijia0524/comments/89001.html</wfw:comment><comments>http://www.cnitblog.com/xijia0524/archive/2013/12/13/89001.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xijia0524/comments/commentRss/89001.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xijia0524/services/trackbacks/89001.html</trackback:ping><description><![CDATA[<p style="border-bottom: 0px; text-align: left; border-left: 0px; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(226,226,226); list-style-type: none; text-indent: 0px; margin: 0px 0px 5px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/21px simsun; word-wrap: normal; white-space: normal; orphans: 2; color: rgb(73,73,73); word-break: normal; border-top: 0px; border-right: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">innodb_flush_log_at_trx_commit = 0，Innodb 中的Log Thread 没隔1 秒钟会将log buffer中的数据写入到文件，同时还会通知文件系统进行文件同步的flush 操作，保证数据确实已经写入到磁盘上面的物理文件。但是，每次事务的结束（commit 或者是rollback）并不会触发Log Thread 将log<span class="Apple-converted-space">&nbsp;</span>buffer 中的数据写入文件。所以，当设置为0 的时候，当MySQL Crash 和OS Crash 或者主机断电之后，最极端的情况是丢失1 秒时间的数据变更。</p>
<p style="border-bottom: 0px; text-align: left; border-left: 0px; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(226,226,226); list-style-type: none; text-indent: 0px; margin: 0px 0px 5px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/21px simsun; word-wrap: normal; white-space: normal; orphans: 2; color: rgb(73,73,73); word-break: normal; border-top: 0px; border-right: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">innodb_flush_log_at_trx_commit = 1，这也是Innodb 的默认设置。我们每次事务的结束都会触发Log Thread 将log buffer 中的数据写入文件并通知文件系统同步文件。这个设置是最安全的设置，能够保证不论是MySQL Crash 还是OS Crash 或者是主机断电都不会丢失任何已经提交的数据。</p>
<p style="border-bottom: 0px; text-align: left; border-left: 0px; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(226,226,226); list-style-type: none; text-indent: 0px; margin: 0px 0px 5px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/21px simsun; word-wrap: normal; white-space: normal; orphans: 2; color: rgb(73,73,73); word-break: normal; border-top: 0px; border-right: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">innodb_flush_log_at_trx_commit = 2，当我们设置为2 的时候，Log Thread 会在我们每次事务结束的时候将数据写入事务日志，但是这里的写入仅仅是调用了文件系统的文件写入操作。而我们的文件系统都是有缓存机制的，所以Log Thread 的这个写入并不能保证内容真的已经写入到物理磁盘上面完成持久化的动作。文件系统什么时候会将缓存中的这个数据同步到物理磁盘文件Log Thread 就完全不知道了。所以，当设置为2 的时候，MySQL Crash 并不会造成数据的丢失，但是OS Crash 或者是主机断电后可能丢失的数据量就完全控制在文件系统上了。各种文件系统对于自己缓存的刷新机制各不一样，大家可以自行参阅相关的手册。<br />根据上面三种参数值的说明，0的时候，如果mysql crash可能会丢失数据，可靠性不高。我们着重测试1和2两种情况。</p>
<p style="border-bottom: 0px; text-align: left; border-left: 0px; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(226,226,226); list-style-type: none; text-indent: 0px; margin: 0px 0px 5px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/21px simsun; word-wrap: normal; white-space: normal; orphans: 2; color: rgb(73,73,73); word-break: normal; border-top: 0px; border-right: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">操作：从一个客户端执行sql语句到数据库服务器<br />主机：服务器，硬盘RAID 1<br />innodb_flush_log_at_trx_commit：1<br />线程数：20<br />插入记录数：20W<br />执行语句：/usr/local/mysql/bin/mysqlslap --query="INSERT INTO wp_home(post_id,cat_id,post_title,score,TYPE) VALUES (2093329,4295,'abcdfdadcvda32daaabc',1,0);" --number-of-queries=200000 --concurrency=20 --port=3308 --host="10.0.0.100" --user="abc" --password="abc" --create-schema="test"</p>
<p style="border-bottom: 0px; text-align: left; border-left: 0px; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(226,226,226); list-style-type: none; text-indent: 0px; margin: 0px 0px 5px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/21px simsun; word-wrap: normal; white-space: normal; orphans: 2; color: rgb(73,73,73); word-break: normal; border-top: 0px; border-right: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">Benchmark<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Average number of seconds to run all queries: 16.386 seconds<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Minimum number of seconds to run all queries: 16.386 seconds<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Maximum number of seconds to run all queries: 16.386 seconds<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Number of clients running queries: 20<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Average number of queries per client: 10000<br />Benchmark<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Average number of seconds to run all queries: 17.508 seconds<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Minimum number of seconds to run all queries: 17.508 seconds<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Maximum number of seconds to run all queries: 17.508 seconds<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Number of clients running queries: 20<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Average number of queries per client: 10000<br />Benchmark<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Average number of seconds to run all queries: 17.042 seconds<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Minimum number of seconds to run all queries: 17.042 seconds<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Maximum number of seconds to run all queries: 17.042 seconds<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Number of clients running queries: 20<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Average number of queries per client: 10000</p>
<p style="border-bottom: 0px; text-align: left; border-left: 0px; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(226,226,226); list-style-type: none; text-indent: 0px; margin: 0px 0px 5px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/21px simsun; word-wrap: normal; white-space: normal; orphans: 2; color: rgb(73,73,73); word-break: normal; border-top: 0px; border-right: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px"><br />操作：从一个客户端执行sql语句到数据库服务器<br />主机：服务器，硬盘RAID 1<br />innodb_flush_log_at_trx_commit：2<br />线程数：20<br />插入记录数：20W<br />执行语句：/usr/local/mysql/bin/mysqlslap --query="INSERT INTO wp_home(post_id,cat_id,post_title,score,TYPE) VALUES (2093329,4295,'abcdfdadcvda32daaabc',1,0);" --number-of-queries=200000 --concurrency=20 --port=3308 --host="10.0.0.100" --user="abc" --password="abc" --create-schema="test"<br />Benchmark<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Average number of seconds to run all queries: 15.566 seconds<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Minimum number of seconds to run all queries: 15.566 seconds<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Maximum number of seconds to run all queries: 15.566 seconds<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Number of clients running queries: 20<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Average number of queries per client: 10000<br />Benchmark<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Average number of seconds to run all queries: 12.886 seconds<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Minimum number of seconds to run all queries: 12.886 seconds<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Maximum number of seconds to run all queries: 12.886 seconds<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Number of clients running queries: 20<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Average number of queries per client: 10000<br />Benchmark<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Average number of seconds to run all queries: 14.502 seconds<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Minimum number of seconds to run all queries: 14.502 seconds<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Maximum number of seconds to run all queries: 14.502 seconds<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Number of clients running queries: 20<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Average number of queries per client: 10000</p>
<p style="border-bottom: 0px; text-align: left; border-left: 0px; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(226,226,226); list-style-type: none; text-indent: 0px; margin: 0px 0px 5px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/21px simsun; word-wrap: normal; white-space: normal; orphans: 2; color: rgb(73,73,73); word-break: normal; border-top: 0px; border-right: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">&nbsp;<wbr></p>
<p style="border-bottom: 0px; text-align: left; border-left: 0px; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(226,226,226); list-style-type: none; text-indent: 0px; margin: 0px 0px 5px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/21px simsun; word-wrap: normal; white-space: normal; orphans: 2; color: rgb(73,73,73); word-break: normal; border-top: 0px; border-right: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">操作：数据库服务器端操作<br />主机：普通pc，普通硬盘<br />innodb_flush_log_at_trx_commit：1<br />线程数：20<br />插入记录数：20W<br />执行语句：/usr/local/mysql/bin/mysqlslap --query="INSERT INTO wp_home(post_id,cat_id,post_title,score,TYPE) VALUES (2093329,4295,'abcdfdadcvda32daaabc',1,0);" --number-of-queries=200000 --concurrency=20 --port=3307 --host="10.0.0.28" --user="abc" --password="abc" --create-schema="test"<br />Benchmark<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Average number of seconds to run all queries: 183.998 seconds<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Minimum number of seconds to run all queries: 183.998 seconds<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Maximum number of seconds to run all queries: 183.998 seconds<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Number of clients running queries: 20<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Average number of queries per client: 10000<br />Benchmark<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Average number of seconds to run all queries: 176.250 seconds<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Minimum number of seconds to run all queries: 176.250 seconds<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Maximum number of seconds to run all queries: 176.250 seconds<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Number of clients running queries: 20<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Average number of queries per client: 10000<br />Benchmark<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Average number of seconds to run all queries: 182.423 seconds<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Minimum number of seconds to run all queries: 182.423 seconds<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Maximum number of seconds to run all queries: 182.423 seconds<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Number of clients running queries: 20<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Average number of queries per client: 10000</p>
<p style="border-bottom: 0px; text-align: left; border-left: 0px; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(226,226,226); list-style-type: none; text-indent: 0px; margin: 0px 0px 5px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/21px simsun; word-wrap: normal; white-space: normal; orphans: 2; color: rgb(73,73,73); word-break: normal; border-top: 0px; border-right: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">操作：数据库服务器端操作<br />主机：普通pc，普通硬盘<br />innodb_flush_log_at_trx_commit：2<br />线程数：20<br />插入记录数：20W<br />执行语句：usr/local/mysql/bin/mysqlslap --query="INSERT INTO wp_home(post_id,cat_id,post_title,score,TYPE) VALUES (2093329,4295,'abcdfdadcvda32daaabc',1,0);" --number-of-queries=200000 --concurrency=20 --port=3307 --host="10.0.0.28" --user="abc" --password="abc" --create-schema="test"<br />Benchmark<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Average number of seconds to run all queries: 20.191 seconds<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Minimum number of seconds to run all queries: 20.191 seconds<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Maximum number of seconds to run all queries: 20.191 seconds<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Number of clients running queries: 20<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Average number of queries per client: 10000<br />Benchmark<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Average number of seconds to run all queries: 25.374 seconds<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Minimum number of seconds to run all queries: 25.374 seconds<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Maximum number of seconds to run all queries: 25.374 seconds<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Number of clients running queries: 20<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Average number of queries per client: 10000<br />Benchmark<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Average number of seconds to run all queries: 19.065 seconds<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Minimum number of seconds to run all queries: 19.065 seconds<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Maximum number of seconds to run all queries: 19.065 seconds<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Number of clients running queries: 20<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><span class="Apple-converted-space">&nbsp;</span>Average number of queries per client: 10000</p>
<p style="border-bottom: 0px; text-align: left; border-left: 0px; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(226,226,226); list-style-type: none; text-indent: 0px; margin: 0px 0px 5px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/21px simsun; word-wrap: normal; white-space: normal; orphans: 2; color: rgb(73,73,73); word-break: normal; border-top: 0px; border-right: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">从测试结果看出：<br />1：普通硬盘情况下，innodb_flush_log_at_trx_commit参数分别是1和2的情况，两者差别巨大，差异几乎到了9倍。<br />2：在做了raid的情况下，innodb_flush_log_at_trx_commit参数分别是1和2的情况，两者有10%左右的差异。<br />3：硬盘的IO性能对性能的影响是巨大的。</p>
<p style="border-bottom: 0px; text-align: left; border-left: 0px; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(226,226,226); list-style-type: none; text-indent: 0px; margin: 0px 0px 5px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/21px simsun; word-wrap: normal; white-space: normal; orphans: 2; color: rgb(73,73,73); word-break: normal; border-top: 0px; border-right: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">&nbsp;<wbr></p>
<p style="border-bottom: 0px; text-align: left; border-left: 0px; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(226,226,226); list-style-type: none; text-indent: 0px; margin: 0px 0px 5px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/21px simsun; word-wrap: normal; white-space: normal; orphans: 2; color: rgb(73,73,73); word-break: normal; border-top: 0px; border-right: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">&nbsp;<wbr></p>
<p style="border-bottom: 0px; text-align: left; border-left: 0px; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(226,226,226); list-style-type: none; text-indent: 0px; margin: 0px 0px 5px; padding-left: 0px; letter-spacing: normal; padding-right: 0px; font: 14px/21px simsun; word-wrap: normal; white-space: normal; orphans: 2; color: rgb(73,73,73); word-break: normal; border-top: 0px; border-right: 0px; word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">因为我的测试环境是在公司的测试服务器上面测试的，有时候测试会有一些误差，今天我又在raid服务器机器上测试了一遍，两者性能大约有20%-30%的差异。</p><img src ="http://www.cnitblog.com/xijia0524/aggbug/89001.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xijia0524/" target="_blank">回忆之城</a> 2013-12-13 14:44 <a href="http://www.cnitblog.com/xijia0524/archive/2013/12/13/89001.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转】innodb_flush_log_at_trx_commit</title><link>http://www.cnitblog.com/xijia0524/archive/2013/12/13/89000.html</link><dc:creator>回忆之城</dc:creator><author>回忆之城</author><pubDate>Fri, 13 Dec 2013 06:43:00 GMT</pubDate><guid>http://www.cnitblog.com/xijia0524/archive/2013/12/13/89000.html</guid><wfw:comment>http://www.cnitblog.com/xijia0524/comments/89000.html</wfw:comment><comments>http://www.cnitblog.com/xijia0524/archive/2013/12/13/89000.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xijia0524/comments/commentRss/89000.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xijia0524/services/trackbacks/89000.html</trackback:ping><description><![CDATA[<h2 style="line-height: 19px; widows: 2; text-transform: none; background-color: rgb(255,255,255); font-variant: normal; font-style: normal; margin-top: 10px; text-indent: 0px; letter-spacing: normal; font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; white-space: normal; orphans: 2; color: rgb(0,0,0); font-size: 1em; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px"><a style="color: rgb(0,102,170); text-decoration: none" id="cb_post_title_url" href="http://www.cnblogs.com/whiteyun/archive/2011/12/01/2270132.html">innodb_flush_log_at_trx_commit</a></h2>
<div style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 13px/1.8 Verdana, Geneva, Arial, Helvetica, sans-serif; white-space: normal; orphans: 2; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="postText">
<div id="cnblogs_post_body"><span style="line-height: 25px; background-color: rgb(204,206,208); font-family: Arial, Helvetica, simsun, u5b8bu4f53" class="Apple-style-span">
<p style="padding-bottom: 0px; line-height: 25px; text-indent: 0px; margin: 0px 0px 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px"><strong style="line-height: 25px">innodb_buffer_pool_size<br style="line-height: 25px" /></strong>如 果用Innodb，那么这是一个重要变量。相对于MyISAM来说，Innodb对于buffer size更敏感。MySIAM可能对于大数据量使用默认的key_buffer_size也还好，但Innodb在大数据量时用默认值就感觉在爬了。 Innodb的缓冲池会缓存数据和索引，所以不需要给系统的缓存留空间，如果只用Innodb，可以把这个值设为内存的70%-80%。和 key_buffer相同，如果数据量比较小也不怎么增加，那么不要把这个值设太高也可以提高内存的使用率。</p>
<p style="padding-bottom: 0px; line-height: 25px; text-indent: 0px; margin: 0px 0px 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px"><strong style="line-height: 25px">innodb_additional_pool_size</strong>&nbsp;<br style="line-height: 25px" />这个的效果不是很明显，至少是当操作系统能合理分配内存时。但你可能仍需要设成20M或更多一点以看Innodb会分配多少内存做其他用途。</p>
<p style="padding-bottom: 0px; line-height: 25px; text-indent: 0px; margin: 0px 0px 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px"><strong style="line-height: 25px">innodb_log_file_size<br style="line-height: 25px" /></strong>对于写很多尤其是大数据量时非常重要。要注意，大的文件提供更高的性能，但数据库恢复时会用更多的时间。我一般用64M-512M，具体取决于服务器的空间。</p>
<p style="padding-bottom: 0px; line-height: 25px; text-indent: 0px; margin: 0px 0px 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px"><strong style="line-height: 25px">innodb_log_buffer_size</strong>&nbsp;<br style="line-height: 25px" />默认值对于多数中等写操作和事务短的运用都是可以的。如 果经常做更新或者使用了很多blob数据，应该增大这个值。但太大了也是浪费内存，因为1秒钟总会 flush（这个词的中文怎么说呢？）一次，所以不需要设到超过1秒的需求。8M-16M一般应该够了。小的运用可以设更小一点。</p>
<p style="padding-bottom: 0px; line-height: 25px; text-indent: 0px; margin: 0px 0px 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px"><span style="line-height: 25px; color: rgb(255,0,0)"><strong style="line-height: 25px">innodb_flush_log_at_trx_commit&nbsp; （这个很管用）</strong>&nbsp;</span><br style="line-height: 25px" />抱怨Innodb比MyISAM慢 100倍？那么你大概是忘了调整这个值。默认值1的意思是每一次事务提交或事务外的指令都需要把日志写入（flush）硬盘，这是很费时的。特别是使用电 池供电缓存（Battery backed up cache）时。设成2对于很多运用，特别是从MyISAM表转过来的是可以的，它的意思是不写入硬盘而是写入系统缓存。日志仍然会每秒flush到硬 盘，所以你一般不会丢失超过1-2秒的更新。设成0会更快一点，但安全方面比较差，即使MySQL挂了也可能会丢失事务的数据。而值2只会在整个操作系统 挂了时才可能丢数据。&nbsp;<br style="line-height: 25px" /><br style="line-height: 25px" /><a style="line-height: 25px; color: rgb(76,76,76); text-decoration: none" href="http://dev.mysql.com/doc/refman/4.1/en/innodb-parameters.html#sysvar_innodb_flush_log_at_trx_commit" rel="nofollow"><code style="line-height: 25px">innodb_flush_log_at_trx_commit</code></a></p>
<p style="padding-bottom: 0px; line-height: 25px; text-indent: 0px; margin: 0px 0px 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px">If the value of&nbsp;<a style="line-height: 25px; color: rgb(76,76,76); text-decoration: none" href="http://dev.mysql.com/doc/refman/4.1/en/innodb-parameters.html#sysvar_innodb_flush_log_at_trx_commit" rel="nofollow"><code style="line-height: 25px">innodb_flush_log_at_trx_commit</code></a>&nbsp;is 0, the log buffer is written out to the log file once per second and the flush to disk operation is performed on the log file, but nothing is done at a transaction commit. When the value is 1, the log buffer is written out to the log file at each transaction commit and the flush to disk operation is performed on the log file. When the value is 2, the log buffer is written out to the file at each commit, but the flush to disk operation is not performed on it. However, the flushing on the log file takes place once per second also when the value is 2. Note that the once-per-second flushing is not 100% guaranteed to happen every second, due to process scheduling issues.</p>
<p style="padding-bottom: 0px; line-height: 25px; text-indent: 0px; margin: 0px 0px 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px">The default value of this variable is 1 (prior to MySQL 4.0.13, the default is 0).</p>
<p style="padding-bottom: 0px; line-height: 25px; text-indent: 0px; margin: 0px 0px 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px">A value of 1 is required for ACID compliance. You can achieve better performance by setting the value different from 1, but then you can lose at most one second worth of transactions in a crash. With a value of 0, any&nbsp;<a style="line-height: 25px; color: rgb(76,76,76); text-decoration: none" title="4.3.1. mysqld &#8212; The MySQL Server" href="http://dev.mysql.com/doc/refman/4.1/en/mysqld.html" rel="nofollow"><span style="line-height: 25px"><strong style="line-height: 25px">mysqld</strong></span></a>process crash can erase the last second of transactions. With a value of 2, then only an operating system crash or a power outage can erase the last second of transactions. However,&nbsp;<code style="line-height: 25px">InnoDB</code>'s crash recovery is not affected and thus crash recovery does work regardless of the value.</p>
<div style="line-height: 25px; margin-left: 0.5in; margin-right: 0.5in">
<div style="line-height: 25px">Note</div>
<p style="padding-bottom: 0px; line-height: 25px; text-indent: 0px; margin: 0px 0px 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px">For the greatest possible durability and consistency in a replication setup using&nbsp;<code style="line-height: 25px">InnoDB</code>&nbsp;with transactions, use&nbsp;<code style="line-height: 25px">innodb_flush_log_at_trx_commit=1</code>,&nbsp;<code style="line-height: 25px">sync_binlog=1</code>, and&nbsp;<code style="line-height: 25px">innodb-safe-binlog</code>&nbsp;in your master server&nbsp;<code style="line-height: 25px">my.cnf</code>&nbsp;file.</p></div>
<div style="line-height: 25px; margin-left: 0.5in; margin-right: 0.5in">
<div style="line-height: 25px">Caution</div>
<p style="padding-bottom: 0px; line-height: 25px; text-indent: 0px; margin: 0px 0px 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px">Many operating systems and some disk hardware fool the flush-to-disk operation. They may tell<a style="line-height: 25px; color: rgb(76,76,76); text-decoration: none" title="4.3.1. mysqld &#8212; The MySQL Server" href="http://dev.mysql.com/doc/refman/4.1/en/mysqld.html" rel="nofollow"><span style="line-height: 25px"><strong style="line-height: 25px">mysqld</strong></span></a>&nbsp;that the flush has taken place, even though it has not. Then the durability of transactions is not guaranteed even with the setting 1, and in the worst case a power outage can even corrupt the<code style="line-height: 25px">InnoDB</code>&nbsp;database. Using a battery-backed disk cache in the SCSI disk controller or in the disk itself speeds up file flushes, and makes the operation safer. You can also try using the Unix command<span style="line-height: 25px"><strong style="line-height: 25px">hdparm</strong></span>&nbsp;to disable the caching of disk writes in hardware caches, or use some other command specific to the hardware vendor.</p></div></span></div></div><img src ="http://www.cnitblog.com/xijia0524/aggbug/89000.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xijia0524/" target="_blank">回忆之城</a> 2013-12-13 14:43 <a href="http://www.cnitblog.com/xijia0524/archive/2013/12/13/89000.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转】MySQL大表中重复字段的高效率查询方法</title><link>http://www.cnitblog.com/xijia0524/archive/2013/12/11/88969.html</link><dc:creator>回忆之城</dc:creator><author>回忆之城</author><pubDate>Wed, 11 Dec 2013 09:33:00 GMT</pubDate><guid>http://www.cnitblog.com/xijia0524/archive/2013/12/11/88969.html</guid><wfw:comment>http://www.cnitblog.com/xijia0524/comments/88969.html</wfw:comment><comments>http://www.cnitblog.com/xijia0524/archive/2013/12/11/88969.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xijia0524/comments/commentRss/88969.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xijia0524/services/trackbacks/88969.html</trackback:ping><description><![CDATA[<p>MySQL大表重复字段应该如何查询到呢?这是很多人都遇到的问题，下面就教您一个MySQL大表重复字段的查询方法，供您参考<br />-<br />MySQL大表重复字段应该如何查询到呢?这是很多人都遇到的问题，下面就教您一个MySQL大表重复字段的查询方法，供您参考。 <br />数据库中有个大表，需要查找其中的名字有重复的记录id，以便比较。<br />如果仅仅是查找数据库中name不重复的字段，很容易</p>
<p><br />复制代码 代码如下:<br />SELECT min(`id`),`name` <br />FROM `table` <br />GROUP BY `name`; <br />&nbsp; <br />但是这样并不能得到说有重复字段的id值。(只得到了最小的一个id值)<br />查询哪些字段是重复的也容易 <br />复制代码 代码如下:<br />SELECT `name`,count(`name`) as count <br />FROM `table` <br />GROUP BY `name` HAVING count(`name`) &gt;1 <br />ORDER BY count DESC; </p>
<p>但是要一次查询到重复字段的id值，就必须使用子查询了，于是使用下面的语句来实现MySQL大表重复字段查询。 <br />复制代码 代码如下:<br />SELECT `id`,`name` <br />FROM `table` <br />WHERE `name` in ( <br />SELECT `name` <br />FROM `table` <br />GROUP BY `name` HAVING count(`name`) &gt;1 <br />); </p>
<p>但是这条语句在mysql中效率太差，感觉mysql并没有为子查询生成临时表。<br />于是使用先建立临时表 <br />复制代码 代码如下:<br />create table `tmptable` as ( <br />SELECT `name` <br />FROM `table` <br />GROUP BY `name` HAVING count(`name`) &gt;1 <br />); </p>
<p>然后使用多表连接查询<br />复制代码 代码如下:<br />SELECT a.`id`, a.`name` <br />FROM `table` a, `tmptable` t <br />WHERE a.`name` = t.`name`; </p>
<p>结果这次结果很快就出来了。</p>
<p>用 distinct去重复<br />复制代码 代码如下:<br />SELECT distinct a.`id`, a.`name` <br />FROM `table` a, `tmptable` t <br />WHERE a.`name` = t.`name`; <br />详细出处参考：<a href="http://www.jb51.net/article/32751.htm">http://www.jb51.net/article/32751.htm</a></p><img src ="http://www.cnitblog.com/xijia0524/aggbug/88969.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xijia0524/" target="_blank">回忆之城</a> 2013-12-11 17:33 <a href="http://www.cnitblog.com/xijia0524/archive/2013/12/11/88969.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转】MySQL 性能优化的最佳20多条经验分享</title><link>http://www.cnitblog.com/xijia0524/archive/2013/12/11/88967.html</link><dc:creator>回忆之城</dc:creator><author>回忆之城</author><pubDate>Wed, 11 Dec 2013 06:38:00 GMT</pubDate><guid>http://www.cnitblog.com/xijia0524/archive/2013/12/11/88967.html</guid><wfw:comment>http://www.cnitblog.com/xijia0524/comments/88967.html</wfw:comment><comments>http://www.cnitblog.com/xijia0524/archive/2013/12/11/88967.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xijia0524/comments/commentRss/88967.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xijia0524/services/trackbacks/88967.html</trackback:ping><description><![CDATA[<p>今天，数据库的操作越来越成为整个应用的性能瓶颈了，这点对于Web应用尤其明显。关于数据库的性能，这并不只是DBA才需要担心的事，而这更是我们程序员需要去关注的事情。<br />-<br />当我们去设计数据库表结构，对操作数据库时（尤其是查表时的SQL语句），我们都需要注意数据操作的性能。这里，我们不会讲过多的SQL语句的优化，而只是针对MySQL这一Web应用最多的数据库。希望下面的这些优化技巧对你有用。 <br />1. 为查询缓存优化你的查询 </p>
<p>大多数的MySQL服务器都开启了查询缓存。这是提高性最有效的方法之一，而且这是被MySQL的数据库引擎处理的。当有很多相同的查询被执行了多次的时候，这些查询结果会被放到一个缓存中，这样，后续的相同的查询就不用操作表而直接访问缓存结果了。 </p>
<p>这里最主要的问题是，对于程序员来说，这个事情是很容易被忽略的。因为，我们某些查询语句会让MySQL不使用缓存。请看下面的示例： <br />复制代码 代码如下:<br />// 查询缓存不开启 <br />$r = mysql_query("SELECT username FROM user WHERE signup_date &gt;= CURDATE()"); </p>
<p>// 开启查询缓存 <br />$today = date("Y-m-d"); <br />$r = mysql_query("SELECT username FROM user WHERE signup_date &gt;= '$today'"); </p>
<p>上面两条SQL语句的差别就是 CURDATE() ，MySQL的查询缓存对这个函数不起作用。所以，像 NOW() 和 RAND() 或是其它的诸如此类的SQL函数都不会开启查询缓存，因为这些函数的返回是会不定的易变的。所以，你所需要的就是用一个变量来代替MySQL的函数，从而开启缓存。 </p>
<p>2. EXPLAIN 你的 SELECT 查询 </p>
<p>使用 EXPLAIN 关键字可以让你知道MySQL是如何处理你的SQL语句的。这可以帮你分析你的查询语句或是表结构的性能瓶颈。 </p>
<p>EXPLAIN 的查询结果还会告诉你你的索引主键被如何利用的，你的数据表是如何被搜索和排序的&#8230;&#8230;等等，等等。 </p>
<p>挑一个你的SELECT语句（推荐挑选那个最复杂的，有多表联接的），把关键字EXPLAIN加到前面。你可以使用phpmyadmin来做这个事。然后，你会看到一张表格。下面的这个示例中，我们忘记加上了group_id索引，并且有表联接：</p>
<p>当我们为 group_id 字段加上索引后：</p>
<p>我们可以看到，前一个结果显示搜索了 7883 行，而后一个只是搜索了两个表的 9 和 16 行。查看rows列可以让我们找到潜在的性能问题。 </p>
<p>3. 当只要一行数据时使用 LIMIT 1 </p>
<p>当你查询表的有些时候，你已经知道结果只会有一条结果，但因为你可能需要去fetch游标，或是你也许会去检查返回的记录数。 </p>
<p>在这种情况下，加上 LIMIT 1 可以增加性能。这样一样，MySQL数据库引擎会在找到一条数据后停止搜索，而不是继续往后查少下一条符合记录的数据。 </p>
<p>下面的示例，只是为了找一下是否有&#8220;中国&#8221;的用户，很明显，后面的会比前面的更有效率。（请注意，第一条中是Select *，第二条是Select 1） <br />复制代码 代码如下:<br />// 没有效率的： <br />$r = mysql_query("SELECT * FROM user WHERE country = 'China'"); <br />if (mysql_num_rows($r) &gt; 0) { <br />// ... <br />} </p>
<p>// 有效率的： <br />$r = mysql_query("SELECT 1 FROM user WHERE country = 'China' LIMIT 1"); <br />if (mysql_num_rows($r) &gt; 0) { <br />// ... <br />}</p>
<p><br />4. 为搜索字段建索引 </p>
<p>索引并不一定就是给主键或是唯一的字段。如果在你的表中，有某个字段你总要会经常用来做搜索，那么，请为其建立索引吧。</p>
<p>从上图你可以看到那个搜索字串 &#8220;last_name LIKE &#8216;a%'&#8221;，一个是建了索引，一个是没有索引，性能差了4倍左右。 </p>
<p>另外，你应该也需要知道什么样的搜索是不能使用正常的索引的。例如，当你需要在一篇大的文章中搜索一个词时，如： &#8220;WHERE post_content LIKE &#8216;%apple%'&#8221;，索引可能是没有意义的。你可能需要使用MySQL全文索引 或是自己做一个索引（比如说：搜索关键词或是Tag什么的） </p>
<p>5. 在Join表的时候使用相当类型的例，并将其索引 </p>
<p>如果你的应用程序有很多 JOIN 查询，你应该确认两个表中Join的字段是被建过索引的。这样，MySQL内部会启动为你优化Join的SQL语句的机制。 </p>
<p>而且，这些被用来Join的字段，应该是相同的类型的。例如：如果你要把 DECIMAL 字段和一个 INT 字段Join在一起，MySQL就无法使用它们的索引。对于那些STRING类型，还需要有相同的字符集才行。（两个表的字符集有可能不一样） <br />复制代码 代码如下:<br />// 在state中查找company <br />$r = mysql_query("SELECT company_name FROM users <br />LEFT JOIN companies ON (users.state = companies.state) <br />WHERE users.id = $user_id"); </p>
<p>// 两个 state 字段应该是被建过索引的，而且应该是相当的类型，相同的字符集。</p>
<p><br />6. 千万不要 ORDER BY RAND() </p>
<p>想打乱返回的数据行？随机挑一个数据？真不知道谁发明了这种用法，但很多新手很喜欢这样用。但你确不了解这样做有多么可怕的性能问题。 </p>
<p>如果你真的想把返回的数据行打乱了，你有N种方法可以达到这个目的。这样使用只让你的数据库的性能呈指数级的下降。这里的问题是：MySQL会不得不去执行RAND()函数（很耗CPU时间），而且这是为了每一行记录去记行，然后再对其排序。就算是你用了Limit 1也无济于事（因为要排序） </p>
<p>下面的示例是随机挑一条记录 <br />复制代码 代码如下:<br />// 千万不要这样做： <br />$r = mysql_query("SELECT username FROM user ORDER BY RAND() LIMIT 1"); </p>
<p>// 这要会更好： <br />$r = mysql_query("SELECT count(*) FROM user"); <br />$d = mysql_fetch_row($r); <br />$rand = mt_rand(0,$d[0] - 1); </p>
<p>$r = mysql_query("SELECT username FROM user LIMIT $rand, 1");</p>
<p><br />7. 避免 SELECT * </p>
<p>从数据库里读出越多的数据，那么查询就会变得越慢。并且，如果你的数据库服务器和WEB服务器是两台独立的服务器的话，这还会增加网络传输的负载。 </p>
<p>所以，你应该养成一个需要什么就取什么的好的习惯。 <br />复制代码 代码如下:<br />// 不推荐 <br />$r = mysql_query("SELECT * FROM user WHERE user_id = 1"); <br />$d = mysql_fetch_assoc($r); <br />echo "Welcome {$d['username']}"; </p>
<p>// 推荐 <br />$r = mysql_query("SELECT username FROM user WHERE user_id = 1"); <br />$d = mysql_fetch_assoc($r); <br />echo "Welcome {$d['username']}";</p>
<p>8. 永远为每张表设置一个ID </p>
<p>我们应该为数据库里的每张表都设置一个ID做为其主键，而且最好的是一个INT型的（推荐使用UNSIGNED），并设置上自动增加的 AUTO_INCREMENT标志。 </p>
<p>就算是你 users 表有一个主键叫 &#8220;email&#8221;的字段，你也别让它成为主键。使用 VARCHAR 类型来当主键会使用得性能下降。另外，在你的程序中，你应该使用表的ID来构造你的数据结构。 </p>
<p>而且，在MySQL数据引擎下，还有一些操作需要使用主键，在这些情况下，主键的性能和设置变得非常重要，比如，集群，分区&#8230;&#8230; </p>
<p>在这里，只有一个情况是例外，那就是&#8220;关联表&#8221;的&#8220;外键&#8221;，也就是说，这个表的主键，通过若干个别的表的主键构成。我们把这个情况叫做&#8220;外键&#8221;。比如：有一个&#8220;学生表&#8221;有学生的ID，有一个&#8220;课程表&#8221;有课程ID，那么，&#8220;成绩表&#8221;就是&#8220;关联表&#8221;了，其关联了学生表和课程表，在成绩表中，学生ID和课程ID叫&#8220;外键&#8221;其共同组成主键。 <br />9. 使用 ENUM 而不是 VARCHAR </p>
<p>ENUM 类型是非常快和紧凑的。在实际上，其保存的是 TINYINT，但其外表上显示为字符串。这样一来，用这个字段来做一些选项列表变得相当的完美。 </p>
<p>如果你有一个字段，比如&#8220;性别&#8221;，&#8220;国家&#8221;，&#8220;民族&#8221;，&#8220;状态&#8221;或&#8220;部门&#8221;，你知道这些字段的取值是有限而且固定的，那么，你应该使用 ENUM 而不是 VARCHAR。 </p>
<p>MySQL也有一个&#8220;建议&#8221;（见第十条）告诉你怎么去重新组织你的表结构。当你有一个 VARCHAR 字段时，这个建议会告诉你把其改成 ENUM 类型。使用 PROCEDURE ANALYSE() 你可以得到相关的建议。 <br />10. 从 PROCEDURE ANALYSE() 取得建议 </p>
<p>PROCEDURE ANALYSE() 会让 MySQL 帮你去分析你的字段和其实际的数据，并会给你一些有用的建议。只有表中有实际的数据，这些建议才会变得有用，因为要做一些大的决定是需要有数据作为基础的。 </p>
<p>例如，如果你创建了一个 INT 字段作为你的主键，然而并没有太多的数据，那么，PROCEDURE ANALYSE()会建议你把这个字段的类型改成 MEDIUMINT 。或是你使用了一个 VARCHAR 字段，因为数据不多，你可能会得到一个让你把它改成 ENUM 的建议。这些建议，都是可能因为数据不够多，所以决策做得就不够准。 </p>
<p>在phpmyadmin里，你可以在查看表时，点击 &#8220;Propose table structure&#8221; 来查看这些建议</p>
<p>一定要注意，这些只是建议，只有当你的表里的数据越来越多时，这些建议才会变得准确。一定要记住，你才是最终做决定的人。 <br />11. 尽可能的使用 NOT NULL </p>
<p>除非你有一个很特别的原因去使用 NULL 值，你应该总是让你的字段保持 NOT NULL。这看起来好像有点争议，请往下看。 </p>
<p>首先，问问你自己&#8220;Empty&#8221;和&#8220;NULL&#8221;有多大的区别（如果是INT，那就是0和NULL）？如果你觉得它们之间没有什么区别，那么你就不要使用NULL。（你知道吗？在 Oracle 里，NULL 和 Empty 的字符串是一样的！) </p>
<p>不要以为 NULL 不需要空间，其需要额外的空间，并且，在你进行比较的时候，你的程序会更复杂。 当然，这里并不是说你就不能使用NULL了，现实情况是很复杂的，依然会有些情况下，你需要使用NULL值。 </p>
<p>下面摘自MySQL自己的文档： </p>
<p>&#8220;NULL columns require additional space in the row to record whether their values are NULL. For MyISAM tables, each NULL column takes one bit extra, rounded up to the nearest byte.&#8221; </p>
<p>12. Prepared Statements </p>
<p>Prepared Statements很像存储过程，是一种运行在后台的SQL语句集合，我们可以从使用 prepared statements 获得很多好处，无论是性能问题还是安全问题。 </p>
<p>Prepared Statements 可以检查一些你绑定好的变量，这样可以保护你的程序不会受到&#8220;SQL注入式&#8221;攻击。当然，你也可以手动地检查你的这些变量，然而，手动的检查容易出问题，而且很经常会被程序员忘了。当我们使用一些framework或是ORM的时候，这样的问题会好一些。 </p>
<p>在性能方面，当一个相同的查询被使用多次的时候，这会为你带来可观的性能优势。你可以给这些Prepared Statements定义一些参数，而MySQL只会解析一次。 </p>
<p>虽然最新版本的MySQL在传输Prepared Statements是使用二进制形势，所以这会使得网络传输非常有效率。 </p>
<p>当然，也有一些情况下，我们需要避免使用Prepared Statements，因为其不支持查询缓存。但据说版本5.1后支持了。 </p>
<p>在PHP中要使用prepared statements，你可以查看其使用手册：mysqli 扩展 或是使用数据库抽象层，如： PDO. <br />复制代码 代码如下:<br />// 创建 prepared statement <br />if ($stmt = $mysqli-&gt;prepare("SELECT username FROM user WHERE state=?")) { </p>
<p>// 绑定参数 <br />$stmt-&gt;bind_param("s", $state); </p>
<p>// 执行 <br />$stmt-&gt;execute(); </p>
<p>// 绑定结果 <br />$stmt-&gt;bind_result($username); </p>
<p>// 移动游标 <br />$stmt-&gt;fetch(); </p>
<p>printf("%s is from %s\n", $username, $state); </p>
<p>$stmt-&gt;close(); <br />}</p>
<p>13. 无缓冲的查询 </p>
<p>正常的情况下，当你在当你在你的脚本中执行一个SQL语句的时候，你的程序会停在那里直到没这个SQL语句返回，然后你的程序再往下继续执行。你可以使用无缓冲查询来改变这个行为。 </p>
<p>关于这个事情，在PHP的文档中有一个非常不错的说明： mysql_unbuffered_query() 函数： </p>
<p>&#8220;mysql_unbuffered_query() sends the SQL query query to MySQL without automatically fetching and buffering the result rows as mysql_query() does. This saves a considerable amount of memory with SQL queries that produce large result sets, and you can start working on the result set immediately after the first row has been retrieved as you don't have to wait until the complete SQL query has been performed.&#8221; </p>
<p>上面那句话翻译过来是说，mysql_unbuffered_query() 发送一个SQL语句到MySQL而并不像mysql_query()一样去自动fethch和缓存结果。这会相当节约很多可观的内存，尤其是那些会产生大量结果的查询语句，并且，你不需要等到所有的结果都返回，只需要第一行数据返回的时候，你就可以开始马上开始工作于查询结果了。 </p>
<p>然而，这会有一些限制。因为你要么把所有行都读走，或是你要在进行下一次的查询前调用 mysql_free_result() 清除结果。而且， mysql_num_rows() 或 mysql_data_seek() 将无法使用。所以，是否使用无缓冲的查询你需要仔细考虑。 <br />14. 把IP地址存成 UNSIGNED INT </p>
<p>很多程序员都会创建一个 VARCHAR(15) 字段来存放字符串形式的IP而不是整形的IP。如果你用整形来存放，只需要4个字节，并且你可以有定长的字段。而且，这会为你带来查询上的优势，尤其是当你需要使用这样的WHERE条件：IP between ip1 and ip2。 </p>
<p>我们必需要使用UNSIGNED INT，因为 IP地址会使用整个32位的无符号整形。 </p>
<p>而你的查询，你可以使用 INET_ATON() 来把一个字符串IP转成一个整形，并使用 INET_NTOA() 把一个整形转成一个字符串IP。在PHP中，也有这样的函数 ip2long() 和 long2ip()。 <br />1 $r = "UPDATE users SET ip = INET_ATON('{$_SERVER['REMOTE_ADDR']}') WHERE user_id = $user_id"; <br />15. 固定长度的表会更快 </p>
<p>如果表中的所有字段都是&#8220;固定长度&#8221;的，整个表会被认为是 &#8220;static&#8221; 或 &#8220;fixed-length&#8221;。 例如，表中没有如下类型的字段： VARCHAR，TEXT，BLOB。只要你包括了其中一个这些字段，那么这个表就不是&#8220;固定长度静态表&#8221;了，这样，MySQL 引擎会用另一种方法来处理。 </p>
<p>固定长度的表会提高性能，因为MySQL搜寻得会更快一些，因为这些固定的长度是很容易计算下一个数据的偏移量的，所以读取的自然也会很快。而如果字段不是定长的，那么，每一次要找下一条的话，需要程序找到主键。 </p>
<p>并且，固定长度的表也更容易被缓存和重建。不过，唯一的副作用是，固定长度的字段会浪费一些空间，因为定长的字段无论你用不用，他都是要分配那么多的空间。 </p>
<p>使用&#8220;垂直分割&#8221;技术（见下一条），你可以分割你的表成为两个一个是定长的，一个则是不定长的。 <br />16. 垂直分割 </p>
<p>&#8220;垂直分割&#8221;是一种把数据库中的表按列变成几张表的方法，这样可以降低表的复杂度和字段的数目，从而达到优化的目的。（以前，在银行做过项目，见过一张表有100多个字段，很恐怖） </p>
<p>示例一：在Users表中有一个字段是家庭地址，这个字段是可选字段，相比起，而且你在数据库操作的时候除了个人信息外，你并不需要经常读取或是改写这个字段。那么，为什么不把他放到另外一张表中呢？ 这样会让你的表有更好的性能，大家想想是不是，大量的时候，我对于用户表来说，只有用户ID，用户名，口令，用户角色等会被经常使用。小一点的表总是会有好的性能。 </p>
<p>示例二： 你有一个叫 &#8220;last_login&#8221; 的字段，它会在每次用户登录时被更新。但是，每次更新时会导致该表的查询缓存被清空。所以，你可以把这个字段放到另一个表中，这样就不会影响你对用户 ID，用户名，用户角色的不停地读取了，因为查询缓存会帮你增加很多性能。 </p>
<p>另外，你需要注意的是，这些被分出去的字段所形成的表，你不会经常性地去Join他们，不然的话，这样的性能会比不分割时还要差，而且，会是极数级的下降。 <br />17. 拆分大的 DELETE 或 INSERT 语句 </p>
<p>如果你需要在一个在线的网站上去执行一个大的 DELETE 或 INSERT 查询，你需要非常小心，要避免你的操作让你的整个网站停止相应。因为这两个操作是会锁表的，表一锁住了，别的操作都进不来了。 </p>
<p>Apache 会有很多的子进程或线程。所以，其工作起来相当有效率，而我们的服务器也不希望有太多的子进程，线程和数据库链接，这是极大的占服务器资源的事情，尤其是内存。 </p>
<p>如果你把你的表锁上一段时间，比如30秒钟，那么对于一个有很高访问量的站点来说，这30秒所积累的访问进程/线程，数据库链接，打开的文件数，可能不仅仅会让你泊WEB服务Crash，还可能会让你的整台服务器马上掛了。 </p>
<p>所以，如果你有一个大的处理，你定你一定把其拆分，使用 LIMIT 条件是一个好的方法。下面是一个示例：<br />复制代码 代码如下:<br />while (1) { <br />//每次只做1000条 <br />mysql_query("DELETE FROM logs WHERE log_date &lt;= '2009-11-01' LIMIT 1000"); <br />if (mysql_affected_rows() == 0) { <br />// 没得可删了，退出！ <br />break; <br />} <br />// 每次都要休息一会儿 <br />usleep(50000); <br />}</p>
<p>18. 越小的列会越快 </p>
<p>对于大多数的数据库引擎来说，硬盘操作可能是最重大的瓶颈。所以，把你的数据变得紧凑会对这种情况非常有帮助，因为这减少了对硬盘的访问。 </p>
<p>参看 MySQL 的文档 Storage Requirements 查看所有的数据类型。 </p>
<p>如果一个表只会有几列罢了（比如说字典表，配置表），那么，我们就没有理由使用 INT 来做主键，使用 MEDIUMINT, SMALLINT 或是更小的 TINYINT 会更经济一些。如果你不需要记录时间，使用 DATE 要比 DATETIME 好得多。 </p>
<p>当然，你也需要留够足够的扩展空间，不然，你日后来干这个事，你会死的很难看，参看Slashdot的例子（2009年11月06 日），一个简单的ALTER TABLE语句花了3个多小时，因为里面有一千六百万条数据。 <br />19. 选择正确的存储引擎 </p>
<p>在 MySQL 中有两个存储引擎 MyISAM 和 InnoDB，每个引擎都有利有弊。酷壳以前文章《MySQL: InnoDB 还是 MyISAM?》讨论和这个事情。 </p>
<p>MyISAM 适合于一些需要大量查询的应用，但其对于有大量写操作并不是很好。甚至你只是需要update一个字段，整个表都会被锁起来，而别的进程，就算是读进程都无法操作直到读操作完成。另外，MyISAM 对于 SELECT COUNT(*) 这类的计算是超快无比的。 </p>
<p>InnoDB 的趋势会是一个非常复杂的存储引擎，对于一些小的应用，它会比 MyISAM 还慢。他是它支持&#8220;行锁&#8221; ，于是在写操作比较多的时候，会更优秀。并且，他还支持更多的高级应用，比如：事务。 </p>
<p>下面是MySQL的手册 </p>
<p>* target=&#8221;_blank&#8221;MyISAM Storage Engine <br />* InnoDB Storage Engine </p>
<p>20. 使用一个对象关系映射器（Object Relational Mapper） </p>
<p>使用 ORM (Object Relational Mapper)，你能够获得可靠的性能增涨。一个ORM可以做的所有事情，也能被手动的编写出来。但是，这需要一个高级专家。 </p>
<p>ORM 的最重要的是&#8220;Lazy Loading&#8221;，也就是说，只有在需要的去取值的时候才会去真正的去做。但你也需要小心这种机制的副作用，因为这很有可能会因为要去创建很多很多小的查询反而会降低性能。 </p>
<p>ORM 还可以把你的SQL语句打包成一个事务，这会比单独执行他们快得多得多。 </p>
<p>目前，个人最喜欢的PHP的ORM是：Doctrine。 <br />21. 小心&#8220;永久链接&#8221; </p>
<p>&#8220;永久链接&#8221;的目的是用来减少重新创建MySQL链接的次数。当一个链接被创建了，它会永远处在连接的状态，就算是数据库操作已经结束了。而且，自从我们的Apache开始重用它的子进程后&#8212;&#8212;也就是说，下一次的HTTP请求会重用Apache的子进程，并重用相同的 MySQL 链接。 </p>
<p>* PHP手册：mysql_pconnect() </p>
<p>在理论上来说，这听起来非常的不错。但是从个人经验（也是大多数人的）上来说，这个功能制造出来的麻烦事更多。因为，你只有有限的链接数，内存问题，文件句柄数，等等。 </p>
<p>而且，Apache 运行在极端并行的环境中，会创建很多很多的了进程。这就是为什么这种&#8220;永久链接&#8221;的机制工作地不好的原因。在你决定要使用&#8220;永久链接&#8221;之前，你需要好好地考虑一下你的整个系统的架构。<br />详细出处参考：<a href="http://www.jb51.net/article/24392.htm">http://www.jb51.net/article/24392.htm</a></p><img src ="http://www.cnitblog.com/xijia0524/aggbug/88967.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xijia0524/" target="_blank">回忆之城</a> 2013-12-11 14:38 <a href="http://www.cnitblog.com/xijia0524/archive/2013/12/11/88967.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>