
{"id":1217,"date":"2022-01-13T21:26:40","date_gmt":"2022-01-13T13:26:40","guid":{"rendered":"http:\/\/dba.qishuo.xin\/?p=1217"},"modified":"2022-10-31T10:17:37","modified_gmt":"2022-10-31T02:17:37","slug":"mariadb-lock-wait-timeout-exceeded-%e9%94%81%e9%98%bb%e5%a1%9e%e5%88%86%e6%9e%90","status":"publish","type":"post","link":"http:\/\/dba.qishuo.xin\/?p=1217","title":{"rendered":"MariaDB Lock wait timeout exceeded \u9501\u963b\u585e\u5206\u6790"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_76 ez-toc-wrap-right counter-hierarchy ez-toc-counter ez-toc-light-blue ez-toc-container-direction\">\n<label for=\"ez-toc-cssicon-toggle-item-6a01ec117ba34\" class=\"ez-toc-cssicon-toggle-label\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/label><input type=\"checkbox\"  id=\"ez-toc-cssicon-toggle-item-6a01ec117ba34\" checked aria-label=\"Toggle\" \/><nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"http:\/\/dba.qishuo.xin\/?p=1217\/#1_%E5%9C%BA%E6%99%AF%E6%8F%8F%E8%BF%B0\" >1. \u573a\u666f\u63cf\u8ff0<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"http:\/\/dba.qishuo.xin\/?p=1217\/#11_%E9%97%AE%E9%A2%98\" >1.1. \u95ee\u9898<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"http:\/\/dba.qishuo.xin\/?p=1217\/#12_%E5%8E%9F%E5%9B%A0\" >1.2. \u539f\u56e0<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"http:\/\/dba.qishuo.xin\/?p=1217\/#2innodb_lock_wait_timeout\" >2.innodb_lock_wait_timeout<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"http:\/\/dba.qishuo.xin\/?p=1217\/#21_%E5%8F%82%E6%95%B0%E4%BB%8B%E7%BB%8D\" >2.1. \u53c2\u6570\u4ecb\u7ecd<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"http:\/\/dba.qishuo.xin\/?p=1217\/#22_%E5%8F%82%E6%95%B0%E8%AE%BE%E7%BD%AE%E4%B8%8E%E6%9F%A5%E8%AF%A2\" >2.2. \u53c2\u6570\u8bbe\u7f6e\u4e0e\u67e5\u8be2<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"http:\/\/dba.qishuo.xin\/?p=1217\/#23_%E5%85%B3%E9%94%AE%E7%9A%84%E5%9B%9B%E5%BC%A0%E8%A1%A8\" >2.3. \u5173\u952e\u7684\u56db\u5f20\u8868<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"http:\/\/dba.qishuo.xin\/?p=1217\/#3_%E6%8F%92%E4%BB%B6_metadata_lock_info\" >3. \u63d2\u4ef6 metadata_lock_info<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"http:\/\/dba.qishuo.xin\/?p=1217\/#4_%E5%88%86%E6%9E%90%E8%BF%87%E7%A8%8B\" >4. \u5206\u6790\u8fc7\u7a0b<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"http:\/\/dba.qishuo.xin\/?p=1217\/#41_%E6%9F%A5%E8%AF%A2%E6%95%B0%E6%8D%AE%E5%BA%93%E8%BF%90%E8%A1%8C%E6%83%85%E5%86%B5\" >4.1. \u67e5\u8be2\u6570\u636e\u5e93\u8fd0\u884c\u60c5\u51b5<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"http:\/\/dba.qishuo.xin\/?p=1217\/#42_%E6%9F%A5%E8%AF%A2%E5%BD%93%E5%89%8D%E6%AD%A3%E5%9C%A8%E6%89%A7%E8%A1%8C%E7%9A%84%E4%BA%8B%E5%8A%A1%E7%9A%84sql\" >4.2. \u67e5\u8be2\u5f53\u524d\u6b63\u5728\u6267\u884c\u7684\u4e8b\u52a1\u7684sql<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-12\" href=\"http:\/\/dba.qishuo.xin\/?p=1217\/#43_%E6%9F%A5%E8%AF%A2%E5%BD%93%E5%89%8D%E5%87%BA%E7%8E%B0%E7%9A%84%E9%94%81\" >4.3. \u67e5\u8be2\u5f53\u524d\u51fa\u73b0\u7684\u9501<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-13\" href=\"http:\/\/dba.qishuo.xin\/?p=1217\/#44_%E6%9F%A5%E7%9C%8B%E6%89%80%E6%9C%89%E5%85%83%E6%95%B0%E6%8D%AE%E9%94%81\" >4.4. \u67e5\u770b\u6240\u6709\u5143\u6570\u636e\u9501<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-14\" href=\"http:\/\/dba.qishuo.xin\/?p=1217\/#45_%E6%9F%A5%E7%9C%8B%E6%9C%AA%E6%8F%90%E4%BA%A4%E7%9A%84%E4%BA%8B%E5%8A%A13%E7%A7%92%E6%9C%AA%E6%93%8D%E4%BD%9C%E7%9A%84%E4%BA%8B%E5%8A%A1\" >4.5. \u67e5\u770b\u672a\u63d0\u4ea4\u7684\u4e8b\u52a1(3\u79d2\u672a\u64cd\u4f5c\u7684\u4e8b\u52a1)<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-15\" href=\"http:\/\/dba.qishuo.xin\/?p=1217\/#46_%E6%9F%A5%E8%AF%A2%E9%98%BB%E5%A1%9E%E4%BA%8B%E5%8A%A1%E4%B8%8E%E8%A2%AB%E9%98%BB%E5%A1%9E%E4%BA%8B%E5%8A%A1%E7%9A%84%E5%85%B3%E7%B3%BB\" >4.6. \u67e5\u8be2\u963b\u585e\u4e8b\u52a1\u4e0e\u88ab\u963b\u585e\u4e8b\u52a1\u7684\u5173\u7cfb<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-16\" href=\"http:\/\/dba.qishuo.xin\/?p=1217\/#47_%E6%9F%A5%E8%AF%A2%E9%98%BB%E5%A1%9E%E7%9A%84%E6%BA%90%E5%A4%B4\" >4.7. \u67e5\u8be2\u963b\u585e\u7684\u6e90\u5934<\/a><\/li><\/ul><\/li><\/ul><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-1'><a class=\"ez-toc-link ez-toc-heading-17\" href=\"http:\/\/dba.qishuo.xin\/?p=1217\/#Windows%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F\" >Windows\u64cd\u4f5c\u7cfb\u7edf<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-18\" href=\"http:\/\/dba.qishuo.xin\/?p=1217\/#5_%E6%80%BB%E7%BB%93\" >5. \u603b\u7ed3<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-19\" href=\"http:\/\/dba.qishuo.xin\/?p=1217\/#51_%E5%A6%82%E4%BD%95%E4%BC%98%E5%8C%96%E4%B8%8E%E9%81%BF%E5%85%8DMDL%E9%94%81\" >5.1. \u5982\u4f55\u4f18\u5316\u4e0e\u907f\u514dMDL\u9501<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-20\" href=\"http:\/\/dba.qishuo.xin\/?p=1217\/#52_%E6%9B%B4%E6%B7%B1%E5%85%A5%E7%9A%84%E5%88%86%E6%9E%90%E9%94%81\" >5.2. \u66f4\u6df1\u5165\u7684\u5206\u6790\u9501<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-21\" href=\"http:\/\/dba.qishuo.xin\/?p=1217\/#6%E6%B5%8B%E8%AF%95%E7%9A%84%E8%84%9A%E6%9C%AC\" >6.\u6d4b\u8bd5\u7684\u811a\u672c<\/a><\/li><\/ul><\/li><\/ul><\/li><\/ul><\/nav><\/div>\n<h3><span class=\"ez-toc-section\" id=\"1_%E5%9C%BA%E6%99%AF%E6%8F%8F%E8%BF%B0\"><\/span>1. \u573a\u666f\u63cf\u8ff0<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<h4><span class=\"ez-toc-section\" id=\"11_%E9%97%AE%E9%A2%98\"><\/span>1.1. \u95ee\u9898<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Lock wait timeout exceeded; try restarting transaction<\/p>\n<h4><span class=\"ez-toc-section\" id=\"12_%E5%8E%9F%E5%9B%A0\"><\/span>1.2. \u539f\u56e0<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>InnoDB\u5728\u9501\u7b49\u5f85\u8d85\u65f6\u8fc7\u671f\u65f6\u62a5\u544a\u6b64\u9519\u8bef\u3002<span style='color:red'>\u7b49\u5f85\u65f6\u95f4\u8fc7\u957f\u7684\u8bed\u53e5\u88ab\u56de\u6eda\uff08\u800c\u4e0d\u662f\u6574\u4e2a\u4e8b\u52a1\uff09<\/span>\u3002\u5982\u679cSQL\u8bed\u53e5\u9700\u8981\u7b49\u5f85\u5176\u4ed6\u4e8b\u52a1\u5b8c\u6210\u7684\u65f6\u95f4\u66f4\u957f\uff0c\u5219\u53ef\u4ee5\u589e\u52a0 innodb_lock_wait_timeout \u914d\u7f6e\u9009\u9879\u7684\u503c\uff1b\u5982\u679c\u592a\u591a\u957f\u65f6\u95f4\u8fd0\u884c\u7684\u4e8b\u52a1\u5bfc\u81f4\u9501\u5b9a\u95ee\u9898\u5e76\u964d\u4f4e\u7e41\u5fd9\u7cfb\u7edf\u4e0a\u7684\u5e76\u53d1\u6027\uff0c\u5219\u53ef\u4ee5\u51cf\u5c11\u8be5\u9009\u9879\u7684\u503c\u3002<\/p>\n<h3><span class=\"ez-toc-section\" id=\"2innodb_lock_wait_timeout\"><\/span>2.innodb_lock_wait_timeout<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<h4><span class=\"ez-toc-section\" id=\"21_%E5%8F%82%E6%95%B0%E4%BB%8B%E7%BB%8D\"><\/span>2.1. \u53c2\u6570\u4ecb\u7ecd<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>innodb_lock_wait_timeout\u662fInnoDB\u4e8b\u52a1\u5728\u653e\u5f03\u524d\u7b49\u5f85\u884c\u9501\u7684\u65f6\u95f4\uff08\u79d2\uff09\u3002<strong>innodb_lock_wait_timeout\u9ed8\u8ba4\u503c\u4e3a20\u79d2<\/strong>\u3002\u5f53\u6709\u8bd5\u56fe\u8bbf\u95ee\u88ab\u53e6\u4e00\u884c\u9501\u5b9a\u7684\u884c\u7684\u4e8b\u52a1InnoDB\u4e8b\u52a1\u5728\u53d1\u51fa\u4ee5\u4e0b\u9519\u8bef\uff1a<\/p>\n<pre><code>ERROR 1205 (HY000): Lock wait timeout exceeded; try restarting transaction<\/code><\/pre>\n<p>\u5f53\u53d1\u751f\u9501\u7b49\u5f85\u8d85\u65f6\u65f6\uff0c\u5c06\u56de\u6eda\u5f53\u524d\u8bed\u53e5 (\u800c\u4e0d\u662f\u6574\u4e2a\u4e8b\u52a1)\u3002\u8981\u56de\u6eda\u6574\u4e2a\u4e8b\u52a1\uff0c\u8bf7\u4f7f\u7528<code>innodb_rollback_on_timeout<\/code> \u5f00\u542f\u503c\u4e3a\uff1aON<br \/>\n\u5bf9\u4e8e\u9ad8\u5ea6\u4ea4\u4e92\u5f0f\u7684\u5e94\u7528\u7a0b\u5e8f\u6216 OLTP \u7cfb\u7edf\uff0c\u60a8\u53ef\u80fd\u4f1a\u964d\u4f4e\u8be5\u503c\uff0c\u4ee5\u4fbf\u5feb\u901f\u663e\u793a\u7528\u6237\u53cd\u9988\uff0c\u6216\u8005\u5c06\u66f4\u65b0\u653e\u5165\u961f\u5217\u4e2d\u4ee5\u4fbf\u7a0d\u540e\u5904\u7406\u3002\u5bf9\u4e8e\u957f\u65f6\u95f4\u8fd0\u884c\u7684\u540e\u7aef\u64cd\u4f5c\uff0c\u4f8b\u5982\u7b49\u5f85\u5176\u4ed6\u5927\u578b\u63d2\u5165\u6216\u66f4\u65b0\u64cd\u4f5c\u5b8c\u6210\u7684\u6570\u636e\u4ed3\u5e93\u4e2d\u7684\u8f6c\u6362\u6b65\u9aa4\uff0c\u60a8\u53ef\u80fd\u4f1a\u589e\u52a0\u6b64\u503c\u3002<strong>innodb_lock_wait_timeout \u4ec5\u9002\u7528\u4e8e InnoDB \u884c\u9501\u3002MySQL \u8868\u9501\u4e0d\u4f1a\u53d1\u751f\u5728 InnoDB \u5185\u90e8\uff0c\u5e76\u4e14\u6b64\u8d85\u65f6\u4e0d\u9002\u7528\u4e8e\u7b49\u5f85\u8868\u9501\u3002\u9501\u7b49\u5f85\u8d85\u65f6\u503c\u4e0d\u9002\u7528\u4e8e\u6b7b\u9501\uff0c\u56e0\u4e3a InnoDB \u4f1a\u7acb\u5373\u68c0\u6d4b\u5230\u5b83\u4eec\uff0c\u5e76\u56de\u6eda\u5176\u4e2d\u4e00\u4e2a\u6b7b\u9501\u4e8b\u52a1<\/strong>\u3002innodb_lock_wait_timeout \u53ef\u4ee5\u5728\u8fd0\u884c\u65f6\u4f7f\u7528 SET GLOBAL \u6216 SET SESSION \u8bed\u53e5\u8bbe\u7f6e\u3002\u66f4\u6539\u5168\u5c40\u8bbe\u7f6e\u9700\u8981\u8d85\u7ea7\u6743\u9650\uff0c\u5e76\u5f71\u54cd\u968f\u540e\u8fde\u63a5\u7684\u6240\u6709\u5ba2\u6237\u7aef\u7684\u64cd\u4f5c\u3002\u4efb\u4f55\u5ba2\u6237\u7aef\u90fd\u53ef\u4ee5\u66f4\u6539 innodb_lock_wait_timeout \u8d85\u65f6\u7684\u4f1a\u8bdd\u8bbe\u7f6e\uff0c\u8fd9\u53ea\u5f71\u54cd\u8be5\u5ba2\u6237\u7aef\u3002<\/p>\n<h4><span class=\"ez-toc-section\" id=\"22_%E5%8F%82%E6%95%B0%E8%AE%BE%E7%BD%AE%E4%B8%8E%E6%9F%A5%E8%AF%A2\"><\/span>2.2. \u53c2\u6570\u8bbe\u7f6e\u4e0e\u67e5\u8be2<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<pre><code class=\"language-mysql\">MariaDB&gt;\nSET GLOBAL innodb_lock_wait_timeout=600;<\/code><\/pre>\n<p><span style='color:red'>\u8bbe\u7f6e\u8be5\u503c\u540e\uff0c\u4ec5\u5bf9\u65b0\u521b\u5efa\u7684\u4f1a\u8bdd\u751f\u6548\uff0c\u5df2\u8fde\u63a5\u7684\u4f1a\u8bdd\u4ecd\u7136\u4f7f\u7528\u4fee\u6539\u4e4b\u524d\u7684\u503c\u3002<\/span><\/p>\n<h4><span class=\"ez-toc-section\" id=\"23_%E5%85%B3%E9%94%AE%E7%9A%84%E5%9B%9B%E5%BC%A0%E8%A1%A8\"><\/span>2.3. \u5173\u952e\u7684\u56db\u5f20\u8868<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<ul>\n<li>INNODB_TRX\uff1a\u5f53\u524d\u8fd0\u884c\u7684\u6240\u6709\u4e8b\u52a1<br \/>\n\u63d0\u4f9b\u6709\u5173\u5f53\u524d\u6b63\u5728\u5185\u90e8\u6267\u884c\u7684\u6bcf\u4e2a\u4e8b\u52a1\u7684\u4fe1\u606f InnoDB\uff0c\u5305\u62ec\u4e8b\u52a1\u662f\u5426\u5728\u7b49\u5f85\u9501\u5b9a\uff0c\u4e8b\u52a1\u4f55\u65f6\u542f\u52a8\u4ee5\u53ca\u4e8b\u52a1\u6b63\u5728\u6267\u884c\u7684SQL\u8bed\u53e5\uff08\u5982\u679c\u6709\uff09<\/li>\n<li>INNODB_LOCKS\uff1a\u5f53\u524d\u51fa\u73b0\u7684\u9501<br \/>\n\u63d0\u4f9b\u6709\u5173InnoDB \u4e8b\u52a1\u5df2\u8bf7\u6c42\u4f46\u5c1a\u672a\u83b7\u53d6\u7684\u6bcf\u4e2a\u9501\u7684\u4fe1\u606f\uff0c\u4ee5\u53ca\u4e8b\u52a1\u6301\u6709\u7684\u963b\u6b62\u53e6\u4e00\u4e2a\u4e8b\u52a1\u7684\u6bcf\u4e2a\u9501\u3002<\/li>\n<li>INNODB_LOCK_WAITS\uff1a\u9501\u7b49\u5f85\u5bf9\u5e94\u7684\u5173\u7cfb<br \/>\n\u5305\u542b\u6bcf\u4e2a\u88ab\u963b\u6b62InnoDB \u4e8b\u52a1\u7684\u4e00\u4e2a\u6216\u591a\u4e2a\u884c\uff0c\u6307\u793a\u5b83\u5df2\u8bf7\u6c42\u7684\u9501\u4ee5\u53ca\u963b\u6b62\u8be5\u8bf7\u6c42\u7684\u4efb\u4f55\u9501\u3002<\/li>\n<li>processlist\uff1a\u5f53\u524d\u8fdb\u7a0b\u4fe1\u606f<\/li>\n<\/ul>\n<h3><span class=\"ez-toc-section\" id=\"3_%E6%8F%92%E4%BB%B6_metadata_lock_info\"><\/span>3. \u63d2\u4ef6 metadata_lock_info<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<ul>\n<li>\n<p>\u5b98\u65b9\u8bf4\u660e\uff1a<a target=\"_blank\" href=\"https:\/\/mariadb.com\/kb\/en\/metadata-lock-info-plugin\/\">https:\/\/mariadb.com\/kb\/en\/metadata-lock-info-plugin\/<\/a><\/p>\n<\/li>\n<li>\n<p>\u5b89\u88c5\u65b9\u6cd5\uff1a<\/p>\n<pre><code class=\"language-sql\">INSTALL SONAME &#039;metadata_lock_info&#039;;<\/code><\/pre>\n<\/li>\n<li>\n<p>\u4f5c\u7528\uff1aMETADATA_LOCK_INFO \u63d2\u4ef6\u5728 INFORMATION_SCHEMA \u6570\u636e\u5e93\u4e2d\u521b\u5efa METADATA_LOCK_INFO \u8868\u3002 \u6b64\u8868\u663e\u793a\u6d3b\u52a8\u7684\u5143\u6570\u636e\u9501\u3002 \u5982\u679c\u6ca1\u6709\u6d3b\u52a8\u7684\u5143\u6570\u636e\u9501\uff0c\u8be5\u8868\u5c06\u4e3a\u7a7a\u3002<\/p>\n<\/li>\n<li>\n<p>\u7528\u6cd5\uff1a<\/p>\n<pre><code class=\"language-sql\">SELECT * FROM information_schema.metadata_lock_info;<\/code><\/pre>\n<\/li>\n<li>\n<p>\u5173\u4e8elock_mode\u7684\u89e3\u91ca<\/p>\n<\/li>\n<\/ul>\n<table>\n<thead>\n<tr>\n<th style=\"text-align: left;\">\u9501\u540d\u79f0<\/th>\n<th style=\"text-align: left;\">\u9501\u7c7b\u578b------------<\/th>\n<th style=\"text-align: left;\">\u8bf4\u660e<\/th>\n<th style=\"text-align: left;\">\u9002\u7528\u8bed\u53e5<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td style=\"text-align: left;\">MDL_INTENTION_EXCLUSIVE<\/td>\n<td style=\"text-align: left;\">\u5171\u4eab\u9501<\/td>\n<td style=\"text-align: left;\">\u610f\u5411\u9501\uff0c\u9501\u4f4f\u4e00\u4e2a\u8303\u56f4<\/td>\n<td style=\"text-align: left;\">\u4efb\u4f55\u8bed\u53e5\u90fd\u4f1a\u83b7\u53d6MDL\u610f\u5411\u9501\uff0c\u7136\u540e\u518d\u83b7\u53d6\u66f4\u9ad8\u7ea7\u522b\u7684MDL\u9501\u3002<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">MDL_SHARED<\/td>\n<td style=\"text-align: left;\">\u5171\u4eab\u9501<\/td>\n<td style=\"text-align: left;\">\u5171\u4eab\u9501\uff0c\u8868\u793a\u53ea\u8bbf\u95ee\u8868\u7ed3\u6784<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">MDL_SHARED_HIGH_PRIO<\/td>\n<td style=\"text-align: left;\">\u5171\u4eab\u9501<\/td>\n<td style=\"text-align: left;\">\u5171\u4eab\u9501\uff0c\u53ea\u8bbf\u95ee\u8868\u7ed3\u6784<\/td>\n<td style=\"text-align: left;\">show create table \u7b49\uff0c\u53ea\u8bbf\u95eeINFORMATION_SCHEMA\u7684\u8bed\u53e5<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">MDL_SHARED_READ<\/td>\n<td style=\"text-align: left;\">\u5171\u4eab\u9501<\/td>\n<td style=\"text-align: left;\">\u8bbf\u95ee\u8868\u7ed3\u6784\u5e76\u4e14\u8bfb\u8868\u6570\u636e<\/td>\n<td style=\"text-align: left;\">select\u8bed\u53e5\uff0cLOCK TABLE ...  READ<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">MDL_SHARED_WRITE<\/td>\n<td style=\"text-align: left;\">\u5171\u4eab\u9501<\/td>\n<td style=\"text-align: left;\">\u8bbf\u95ee\u8868\u7ed3\u6784\u5e76\u4e14\u5199\u8868\u6570\u636e<\/td>\n<td style=\"text-align: left;\">SELECT ... FOR UPDATE\uff0cDML\u8bed\u53e5<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">MDL_SHARED_UPGRADABLE<\/td>\n<td style=\"text-align: left;\">\u5171\u4eab\u9501<\/td>\n<td style=\"text-align: left;\">\u53ef\u5347\u7ea7\u9501\uff0c\u8bbf\u95ee\u8868\u7ed3\u6784\u5e76\u4e14\u8bfb\u5199\u8868\u6570\u636e<\/td>\n<td style=\"text-align: left;\">Alter\u8bed\u53e5\u4e2d\u95f4\u8fc7\u7a0b\u4f1a\u4f7f\u7528<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">MDL_SHARED_NO_WRITE<\/td>\n<td style=\"text-align: left;\">\u5171\u4eab\u9501<\/td>\n<td style=\"text-align: left;\">\u53ef\u5347\u7ea7\u9501\uff0c\u8bbf\u95ee\u8868\u7ed3\u6784\u5e76\u4e14\u8bfb\u5199\u8868\u6570\u636e\uff0c\u5e76\u4e14\u7981\u6b62\u5176\u5b83\u4e8b\u52a1\u5199\u3002<\/td>\n<td style=\"text-align: left;\">Alter\u8bed\u53e5\u4e2d\u95f4\u8fc7\u7a0b\u4f1a\u4f7f\u7528<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">MDL_SHARED_NO_READ_WRITE<\/td>\n<td style=\"text-align: left;\">\u5171\u4eab\u9501<\/td>\n<td style=\"text-align: left;\">\u53ef\u5347\u7ea7\u9501\uff0c\u8bbf\u95ee\u8868\u7ed3\u6784\u5e76\u4e14\u8bfb\u5199\u8868\u6570\u636e\uff0c\u5e76\u4e14\u7981\u6b62\u5176\u5b83\u4e8b\u52a1\u8bfb\u5199\u3002<\/td>\n<td style=\"text-align: left;\">LOCK TABLES ... WRITE<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">MDL_EXCLUSIVE<\/td>\n<td style=\"text-align: left;\">\u5199\u9501<\/td>\n<td style=\"text-align: left;\">\u7981\u6b62\u5176\u5b83\u4e8b\u52a1\u8bfb\u5199\u3002<\/td>\n<td style=\"text-align: left;\">CREATE\/DROP\/RENAME TABLE\u7b49DDL\u8bed\u53e5\u3002<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3><span class=\"ez-toc-section\" id=\"4_%E5%88%86%E6%9E%90%E8%BF%87%E7%A8%8B\"><\/span>4. \u5206\u6790\u8fc7\u7a0b<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<h4><span class=\"ez-toc-section\" id=\"41_%E6%9F%A5%E8%AF%A2%E6%95%B0%E6%8D%AE%E5%BA%93%E8%BF%90%E8%A1%8C%E6%83%85%E5%86%B5\"><\/span>4.1. \u67e5\u8be2\u6570\u636e\u5e93\u8fd0\u884c\u60c5\u51b5<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<pre><code class=\"language-sql\">MariaDB&gt;\nshow engine innodb status\\G<\/code><\/pre>\n<p><a href=\"http:\/\/dba.qishuo.xin\/wp-content\/uploads\/2022\/01\/wp_editor_md_cb03cd8e5e2c11ec021345fb35e6ce70.jpg\" data-fancybox=\"images\" data-fancybox=\"images\"><img decoding=\"async\" src=\"http:\/\/dba.qishuo.xin\/wp-content\/uploads\/2022\/01\/wp_editor_md_cb03cd8e5e2c11ec021345fb35e6ce70.jpg\" alt=\"\" \/><\/a><\/p>\n<p>\u5177\u4f53\u542b\u4e49\uff1a<\/p>\n<h4><span class=\"ez-toc-section\" id=\"42_%E6%9F%A5%E8%AF%A2%E5%BD%93%E5%89%8D%E6%AD%A3%E5%9C%A8%E6%89%A7%E8%A1%8C%E7%9A%84%E4%BA%8B%E5%8A%A1%E7%9A%84sql\"><\/span>4.2. \u67e5\u8be2\u5f53\u524d\u6b63\u5728\u6267\u884c\u7684\u4e8b\u52a1\u7684sql<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<pre><code class=\"language-sql\">SELECT * FROM information_schema.INNODB_TRX;<\/code><\/pre>\n<p><a href=\"http:\/\/dba.qishuo.xin\/wp-content\/uploads\/2022\/01\/wp_editor_md_70ec31d975714cfd97d6192aa337fb76.jpg\" data-fancybox=\"images\" data-fancybox=\"images\"><img decoding=\"async\" src=\"http:\/\/dba.qishuo.xin\/wp-content\/uploads\/2022\/01\/wp_editor_md_70ec31d975714cfd97d6192aa337fb76.jpg\" alt=\"\" \/><\/a><\/p>\n<h4><span class=\"ez-toc-section\" id=\"43_%E6%9F%A5%E8%AF%A2%E5%BD%93%E5%89%8D%E5%87%BA%E7%8E%B0%E7%9A%84%E9%94%81\"><\/span>4.3. \u67e5\u8be2\u5f53\u524d\u51fa\u73b0\u7684\u9501<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<pre><code class=\"language-sql\">SELECT * FROM information_schema.INNODB_LOCKS x ;<\/code><\/pre>\n<p><a href=\"http:\/\/dba.qishuo.xin\/wp-content\/uploads\/2022\/01\/wp_editor_md_8babc4ca1e0ee268ce099386a564a83c.jpg\" data-fancybox=\"images\" data-fancybox=\"images\"><img decoding=\"async\" src=\"http:\/\/dba.qishuo.xin\/wp-content\/uploads\/2022\/01\/wp_editor_md_8babc4ca1e0ee268ce099386a564a83c.jpg\" alt=\"\" \/><\/a><\/p>\n<p><strong>\u8fd9\u91cc\u7684\u9501\u4ec5\u4ec5\u662f\u963b\u585e\u540e\u5448\u73b0\u7684\u9501\uff0c\u5e76\u4e0d\u5305\u542b\u4e8b\u52a1\u4e2d\u66f4\u65b0\u8fc7\u7684\u8868\u4e14\u672a\u63d0\u4ea4\u7684\u9501\u3002\u5177\u4f53\u7684\u9501\u8fd8\u5e94\u5728 metadata_lock_info \u4e2d\u67e5\u770b <\/strong><\/p>\n<h4><span class=\"ez-toc-section\" id=\"44_%E6%9F%A5%E7%9C%8B%E6%89%80%E6%9C%89%E5%85%83%E6%95%B0%E6%8D%AE%E9%94%81\"><\/span>4.4. \u67e5\u770b\u6240\u6709\u5143\u6570\u636e\u9501<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<pre><code class=\"language-sql\">SELECT * FROM information_schema.metadata_lock_info;<\/code><\/pre>\n<p><a href=\"http:\/\/dba.qishuo.xin\/wp-content\/uploads\/2022\/01\/wp_editor_md_5be5106f57fa86e17fb3086d7bca5355.jpg\" data-fancybox=\"images\" data-fancybox=\"images\"><img decoding=\"async\" src=\"http:\/\/dba.qishuo.xin\/wp-content\/uploads\/2022\/01\/wp_editor_md_5be5106f57fa86e17fb3086d7bca5355.jpg\" alt=\"\" \/><\/a><\/p>\n<p><strong>\u5bf9\u4e8e\u540c\u4e2a\u8868\u51fa\u73b0\u5728\u4e24\u4e2a\u4f1a\u8bdd\u5f53\u4e2d\uff0c\u4e14 lock_mode \u4e3a MDL_SHARED_WRITE \u6a21\u5f0f\u65f6\u8bf4\u660e\u4e00\u5b9a\u6709\u963b\u585e\u4e0e\u7b49\u5f85\u3002<\/strong><\/p>\n<h4><span class=\"ez-toc-section\" id=\"45_%E6%9F%A5%E7%9C%8B%E6%9C%AA%E6%8F%90%E4%BA%A4%E7%9A%84%E4%BA%8B%E5%8A%A13%E7%A7%92%E6%9C%AA%E6%93%8D%E4%BD%9C%E7%9A%84%E4%BA%8B%E5%8A%A1\"><\/span>4.5. \u67e5\u770b\u672a\u63d0\u4ea4\u7684\u4e8b\u52a1(3\u79d2\u672a\u64cd\u4f5c\u7684\u4e8b\u52a1)<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p><strong>\u672a\u63d0\u4ea4\u7684\u4e8b\u52a1\u4e5f\u5373\u6b63\u5728\u8fd0\u884c\u7684\u4e8b\u52a1\uff0c\u5305\u542b\u4e86\u963b\u585e\u7684\u4e8b\u52a1\u4e0e\u88ab\u963b\u585e\u7684\u4e8b\u52a1\u3002<\/strong><\/p>\n<pre><code class=\"language-sql\">SELECT\n       p.id                                       AS conn_id,             -- mysql\u5185\u90e8\u7ebf\u7a0b\u7684\u552f\u4e00\u6807\u8bc6,connection_id\u53ef\u4ee5\u67e5\u8be2,\u53ef\u4ee5 kill\u7ebf\u7a0b\u53f7\n       t.trx_id                                   AS trx_id,              -- \u4e8b\u52a1\u7684ID\n       t.trx_state                                AS trx_state,           -- \u4e8b\u52a1\u7684\u72b6\u6001\n       p.user                                     AS login_user,          -- \u542f\u52a8\u8fd9\u4e2a\u7ebf\u7a0b\u7684\u7528\u6237\n       p.host                                     AS login_host,          -- \u53d1\u9001\u8bf7\u6c42\u7684\u5ba2\u6237\u7aef\u7684 IP \u548c \u7aef\u53e3\u53f7\n       p.db                                       AS database_name,       -- \u8be5\u7ebf\u7a0b\u8fde\u63a5\u7684\u662f\u54ea\u4e2a\u6570\u636e\u5e93\n       p.time                                     AS trx_sleep_seconds,   -- \u8fd9\u4e2a\u72b6\u6001\u6301\u7eed\u7684\u65f6\u95f4\uff0c\u5355\u4f4d\u662f\u79d2\n       t.trx_started                              AS trx_started,         -- \u4e8b\u52a1\u5f00\u59cb\u65f6\u95f4\n       t.trx_wait_started                         AS trx_wait_started,    -- \u4e8b\u52a1\u5f00\u59cb\u7b49\u5f85\u7684\u65f6\u95f4\n       t.trx_isolation_level                      AS trx_isolation_level, -- \u4e8b\u52a1\u9694\u79bb\u7ea7\u522b\n       t.trx_tables_in_use                        AS trx_tables_in_use,   -- \u4e8b\u52a1\u4e2d\u6709\u591a\u5c11\u4e2a\u8868\u88ab\u4f7f\u7528\n       t.trx_tables_locked                        AS trx_tables_locked,   -- \u4e8b\u52a1\u62e5\u6709\u591a\u5c11\u4e2a\u9501\n       t.trx_rows_locked                          AS trx_rows_locked,     -- \u4e8b\u52a1\u9501\u4f4f\u7684\u884c\u6570\n       t.trx_rows_modified                        AS trx_rows_modified,   -- \u4e8b\u52a1\u66f4\u6539\u7684\u884c\u6570\n       t.trx_state                                AS trx_state,           -- \u4e8b\u52a1\u72b6\u6001\n       t.trx_query                                AS trx_query,           -- \u5177\u4f53SQL\u8bed\u53e5\n       t.trx_lock_memory_bytes                    AS trx_lock_memory_bytes, -- \u4e8b\u52a1\u9501\u4f4f\u7684\u5185\u5b58\u5927\u5c0f,\u5355\u4f4d\u4e3aByte\n       p.COMMAND                                  AS process_state,         -- \u6b64\u523b\u8be5\u7ebf\u7a0b\u6b63\u5728\u6267\u884c\u7684\u547d\u4ee4\n       (SELECT GROUP_CONCAT(REPLACE(REPLACE(REPLACE(t1.sql_text,&#039;\\n&#039;,&#039; &#039;),&#039;\\r&#039;,&#039; &#039;),&#039;\\t&#039;,&#039; &#039;) SEPARATOR &#039;;&#039;)\n          FROM performance_schema.events_statements_history t1\n         INNER JOIN performance_schema.threads t2 ON t1.thread_id = t2.thread_id\n         WHERE t2.processlist_id = p.id\n       ) AS trx_sql_text\n  FROM information_schema.innodb_trx t\n INNER JOIN information_schema.processlist p ON t.trx_mysql_thread_id = p.id\n WHERE P.time &gt; 3\n\/* AND t.trx_state = &#039;RUNNING&#039;\n   AND p.command = &#039;Sleep&#039; *\/\n ;<\/code><\/pre>\n<p><a href=\"http:\/\/dba.qishuo.xin\/wp-content\/uploads\/2022\/01\/wp_editor_md_9b43b01aabba0a745db45f6365ecc9a7.jpg\" data-fancybox=\"images\" data-fancybox=\"images\"><img decoding=\"async\" src=\"http:\/\/dba.qishuo.xin\/wp-content\/uploads\/2022\/01\/wp_editor_md_9b43b01aabba0a745db45f6365ecc9a7.jpg\" alt=\"\" \/><\/a><\/p>\n<h4><span class=\"ez-toc-section\" id=\"46_%E6%9F%A5%E8%AF%A2%E9%98%BB%E5%A1%9E%E4%BA%8B%E5%8A%A1%E4%B8%8E%E8%A2%AB%E9%98%BB%E5%A1%9E%E4%BA%8B%E5%8A%A1%E7%9A%84%E5%85%B3%E7%B3%BB\"><\/span>4.6. \u67e5\u8be2\u963b\u585e\u4e8b\u52a1\u4e0e\u88ab\u963b\u585e\u4e8b\u52a1\u7684\u5173\u7cfb<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<pre><code class=\"language-sql\">SELECT  p.host                 AS \u963b\u585e\u65b9\u4e3b\u673a,\n        p.user                 AS \u963b\u585e\u65b9\u7528\u6237,\n        b.trx_id               AS \u963b\u585e\u65b9\u4e8b\u52a1id,\n        b.trx_mysql_thread_id  AS \u963b\u585e\u65b9\u7ebf\u7a0b\u53f7,    -- \u4e0eshow processlist\u4e2d\u7684ID\u503c\u76f8\u5bf9\u5e94\n        b.trx_state            AS \u963b\u585e\u65b9\u7684\u72b6\u6001,\n        b.trx_query            AS \u963b\u585e\u65b9\u67e5\u8be2,\n        l.lock_mode            AS \u963b\u585e\u65b9\u7684\u9501\u6a21\u5f0f,\n        l.lock_type            AS &quot;\u963b\u585e\u65b9\u7684\u9501\u7c7b\u578b(\u8868\u9501\u8fd8\u662f\u884c\u9501)&quot;,\n        l.lock_table           AS \u963b\u585e\u65b9\u9501\u4f4f\u7684\u8868,\n        l.lock_index           AS \u963b\u585e\u65b9\u9501\u4f4f\u7684\u7d22\u5f15,\n        l.lock_space           AS \u963b\u585e\u65b9\u9501\u5bf9\u8c61\u7684space_id,\n        l.lock_page            AS \u963b\u585e\u65b9\u4e8b\u52a1\u9501\u5b9a\u9875\u7684\u6570\u91cf,\n        l.lock_rec             AS \u963b\u585e\u65b9\u4e8b\u52a1\u9501\u5b9a\u884c\u7684\u6570\u91cf,\n        l.lock_data            AS \u963b\u585e\u65b9\u4e8b\u52a1\u9501\u5b9a\u8bb0\u5f55\u7684\u4e3b\u952e\u503c,\n        IF (p.COMMAND = &#039;Sleep&#039;, CONCAT(p.TIME,&#039; \u79d2&#039;), 0) AS \u963b\u585e\u65b9\u4e8b\u52a1\u7a7a\u95f2\u7684\u65f6\u95f4,\n        p2.host                AS \u88ab\u963b\u585e\u65b9host,\n        p2.user                AS \u88ab\u963b\u585e\u65b9\u7528\u6237,\n        r.trx_id               AS \u88ab\u963b\u585e\u65b9\u4e8b\u52a1id,\n        r.trx_mysql_thread_id  AS \u88ab\u963b\u585e\u65b9\u7ebf\u7a0b\u53f7,   -- \u4e0eshow processlist\u4e2d\u7684ID\u503c\u76f8\u5bf9\u5e94\n        TIMESTAMPDIFF(SECOND,\n                      r.trx_wait_started,\n                      CURRENT_TIMESTAMP\n                      )        AS \u7b49\u5f85\u65f6\u95f4,\n        r.trx_state            AS \u88ab\u963b\u585e\u65b9\u7684\u72b6\u6001,\n        r.trx_query            AS \u88ab\u963b\u585e\u7684\u67e5\u8be2,\n        m.lock_mode            AS \u88ab\u963b\u585e\u65b9\u7684\u9501\u6a21\u5f0f,\n        m.lock_type            AS &quot;\u88ab\u963b\u585e\u65b9\u7684\u9501\u7c7b\u578b(\u8868\u9501\u8fd8\u662f\u884c\u9501)&quot;,\n        m.lock_index           AS \u88ab\u963b\u585e\u65b9\u9501\u4f4f\u7684\u7d22\u5f15,\n        m.lock_space           AS \u88ab\u963b\u585e\u65b9\u9501\u5bf9\u8c61\u7684space_id,\n        m.lock_page            AS \u88ab\u963b\u585e\u65b9\u4e8b\u52a1\u9501\u5b9a\u9875\u7684\u6570\u91cf,\n        m.lock_rec             AS \u88ab\u963b\u585e\u65b9\u4e8b\u52a1\u9501\u5b9a\u884c\u7684\u6570\u91cf,\n        m.lock_data            AS \u88ab\u963b\u585e\u65b9\u4e8b\u52a1\u9501\u5b9a\u8bb0\u5f55\u7684\u4e3b\u952e\u503c\n  FROM information_schema.INNODB_LOCK_WAITS w    -- \u9501\u7b49\u5f85\u7684\u5bf9\u5e94\u5173\u7cfb\u8868\n INNER JOIN information_schema.INNODB_TRX b ON b.trx_id = w.blocking_trx_id   -- \u5f53\u524d\u8fd0\u884c\u7684\u6240\u6709\u4e8b\u52a1,\u963b\u585e\u65b9\n INNER JOIN information_schema.INNODB_TRX r ON r.trx_id = w.requesting_trx_id -- \u5f53\u524d\u8fd0\u884c\u7684\u6240\u6709\u4e8b\u52a1,\u88ab\u963b\u585e\u65b9\n INNER JOIN information_schema.INNODB_LOCKS l ON w.blocking_lock_id = l.lock_id  AND l.lock_trx_id=b.trx_id -- \u5f53\u524d\u51fa\u73b0\u7684\u9501,\u963b\u585e\u65b9\n INNER JOIN information_schema.INNODB_LOCKS m ON m.lock_id=w.requested_lock_id AND m.lock_trx_id=r.trx_id   -- \u5f53\u524d\u51fa\u73b0\u7684\u9501,\u88ab\u963b\u585e\u65b9\n INNER JOIN information_schema.PROCESSLIST p ON p.ID = b.trx_mysql_thread_id   -- \u7ebf\u7a0b\u4fe1\u606f,\u963b\u585e\u65b9\n INNER JOIN information_schema.PROCESSLIST p2 ON p2.ID = r.trx_mysql_thread_id -- \u7ebf\u7a0b\u4fe1\u606f,\u88ab\u963b\u585e\u65b9\n ORDER BY \u7b49\u5f85\u65f6\u95f4 DESC;<\/code><\/pre>\n<p><a href=\"http:\/\/dba.qishuo.xin\/wp-content\/uploads\/2022\/01\/wp_editor_md_5f1dbd6827e8fd2ee1756fcc422501c7.jpg\" data-fancybox=\"images\" data-fancybox=\"images\"><img decoding=\"async\" src=\"http:\/\/dba.qishuo.xin\/wp-content\/uploads\/2022\/01\/wp_editor_md_5f1dbd6827e8fd2ee1756fcc422501c7.jpg\" alt=\"\" \/><\/a><\/p>\n<p><a href=\"http:\/\/dba.qishuo.xin\/wp-content\/uploads\/2022\/01\/wp_editor_md_20c54d903005ddffded41cfa4b987897.jpg\" data-fancybox=\"images\" data-fancybox=\"images\"><img decoding=\"async\" src=\"http:\/\/dba.qishuo.xin\/wp-content\/uploads\/2022\/01\/wp_editor_md_20c54d903005ddffded41cfa4b987897.jpg\" alt=\"\" \/><\/a><\/p>\n<p><a href=\"http:\/\/dba.qishuo.xin\/wp-content\/uploads\/2022\/01\/wp_editor_md_156db2825a99460a9508579946c5d3d7.jpg\" data-fancybox=\"images\" data-fancybox=\"images\"><img decoding=\"async\" src=\"http:\/\/dba.qishuo.xin\/wp-content\/uploads\/2022\/01\/wp_editor_md_156db2825a99460a9508579946c5d3d7.jpg\" alt=\"\" \/><\/a><\/p>\n<p><a href=\"http:\/\/dba.qishuo.xin\/wp-content\/uploads\/2022\/01\/wp_editor_md_eb1ef31444775c831bd1440984c03d4f.jpg\" data-fancybox=\"images\" data-fancybox=\"images\"><img decoding=\"async\" src=\"http:\/\/dba.qishuo.xin\/wp-content\/uploads\/2022\/01\/wp_editor_md_eb1ef31444775c831bd1440984c03d4f.jpg\" alt=\"\" \/><\/a><\/p>\n<p><span style='color:red'>\u963b\u585e\u65b9\u7684\u72b6\u6001\u4e00\u822c\u4e3a RUNNING \uff0c\u800c\u88ab\u963b\u585e\u65b9\u7684\u72b6\u6001\u4e3a LOCK WAIT \u3002<\/span><\/p>\n<p><strong>\u8fd9\u91cc\u4e0d\u8981\u592a\u5929\u771f\u7684\u8ba4\u4e3a\u7b2c\u4e8c\u4e2aSQL\u8bed\u53e5\u80fd\u591f\u83b7\u53d6\u6240\u6709\u573a\u666f\u4e0b\u7684\u963b\u585e\u6e90\u5934SQL\u8bed\u53e5\uff0c\u5b9e\u9645\u4e1a\u52a1\u573a\u666f\uff0c\u4f1a\u8bdd\u53ef\u80fd\u5728\u6267\u884c\u4e00\u4e2a\u5b58\u50a8\u8fc7\u7a0b\u6216\u590d\u6742\u7684\u4e1a\u52a1\uff0c\u6709\u53ef\u80fd\u5b83\u6267\u884c\u5b8c\u963b\u585e\u6e90\u5934SQL\u540e\uff0c\u7ee7\u7eed\u5728\u6267\u884c\u5176\u5b83SQL\u8bed\u53e5\uff0c\u6b64\u65f6\uff0c\u4f60\u6293\u53d6\u7684\u662f\u8fd9\u4e2a\u8fde\u63a5\u4f1a\u8bdd\u6700\u540e\u6267\u884c\u7684SQL\u8bed\u53e5\u3002<\/strong><\/p>\n<h4><span class=\"ez-toc-section\" id=\"47_%E6%9F%A5%E8%AF%A2%E9%98%BB%E5%A1%9E%E7%9A%84%E6%BA%90%E5%A4%B4\"><\/span>4.7. \u67e5\u8be2\u963b\u585e\u7684\u6e90\u5934<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<pre><code class=\"language-sql\">SELECT distinct\n       b.trx_id                                       AS blocking_trx_id,\n       b.trx_mysql_thread_id                          AS blocking_thread_id,\n       SUBSTRING(p. HOST, 1, INSTR(p. HOST, &#039;:&#039;) - 1) AS blocking_host,\n       SUBSTRING(p. HOST, INSTR(p. HOST, &#039;:&#039;) + 1)    AS blocking_port,\n       IF(p.COMMAND = &#039;Sleep&#039;, p.TIME, 0)             AS idel_in_trx,\n       b.trx_query                                    AS blocking_query,\n       r.trx_id                                       AS waiting_trx_id,\n       r.trx_mysql_thread_id                          AS waiting_thread,\n       TIMESTAMPDIFF(SECOND,\n                     r.trx_wait_started,\n                     CURRENT_TIMESTAMP)               AS wait_time,\n       r.trx_query                                    AS waiting_query,\n       l.lock_table                                   AS waiting_table_lock\n  FROM information_schema.INNODB_LOCKS l\n  LEFT JOIN information_schema.INNODB_LOCK_WAITS w ON w.requested_lock_id = l.lock_id\n  LEFT JOIN information_schema.INNODB_TRX b ON b.trx_id = w.blocking_trx_id\n  LEFT JOIN information_schema.INNODB_TRX r ON r.trx_id = w.requesting_trx_id\n  LEFT JOIN information_schema.PROCESSLIST p ON p.ID = b.trx_mysql_thread_id\nJOIN (SELECT blocking_trx_id -- \u67e5\u627e\u6700\u6e90\u5934\u7684trx_id\n        FROM information_schema.INNODB_LOCK_WAITS ilw\n       WHERE blocking_trx_id NOT IN (SELECT requesting_trx_id\n                                       FROM information_schema.INNODB_LOCK_WAITS)) c\n     ON c.blocking_trx_id = b.trx_id\n ORDER BY wait_time DESC;<\/code><\/pre>\n<p><a href=\"http:\/\/dba.qishuo.xin\/wp-content\/uploads\/2022\/01\/wp_editor_md_f05961d700ec607a5f7000c414f3c9f3.jpg\" data-fancybox=\"images\" data-fancybox=\"images\"><img decoding=\"async\" src=\"http:\/\/dba.qishuo.xin\/wp-content\/uploads\/2022\/01\/wp_editor_md_f05961d700ec607a5f7000c414f3c9f3.jpg\" alt=\"\" \/><\/a><\/p>\n<p><a href=\"http:\/\/dba.qishuo.xin\/wp-content\/uploads\/2022\/01\/wp_editor_md_565d6ceb2bb59def7b41cc5bb50a8a1f.jpg\" data-fancybox=\"images\" data-fancybox=\"images\"><img decoding=\"async\" src=\"http:\/\/dba.qishuo.xin\/wp-content\/uploads\/2022\/01\/wp_editor_md_565d6ceb2bb59def7b41cc5bb50a8a1f.jpg\" alt=\"\" \/><\/a><\/p>\n<ul>\n<li>\u6839\u636e\u7ebf\u7a0b\u53f7\u5728\u6570\u636e\u5e93\u670d\u52a1\u5668\u4e0a\u627e\u5230\u76f8\u5173\u7684\u7ebf\u7a0b\u4fe1\u606f\uff0c\u5e76\u901a\u8fc7 metadata_lock_info \u8868\u4e2d\u67e5\u8be2\u5230\u5728\u8be5\u7ebf\u7a0b\u4e0a\u88ab\u9501\u7684\u8868\u6709\u54ea\u4e9b\u3002\n<pre><code class=\"language-sql\">SELECT * FROM information_schema.processlist WHERE id = ?;\nSELECT * FROM information_schema.metadata_lock_info x WHERE x.thread_id = ?;<\/code><\/pre>\n<p><a href=\"http:\/\/dba.qishuo.xin\/wp-content\/uploads\/2022\/01\/wp_editor_md_ecfcc9fb290988d264cbcc14b89a500c.jpg\" data-fancybox=\"images\" data-fancybox=\"images\"><img decoding=\"async\" src=\"http:\/\/dba.qishuo.xin\/wp-content\/uploads\/2022\/01\/wp_editor_md_ecfcc9fb290988d264cbcc14b89a500c.jpg\" alt=\"\" \/><\/a><\/p>\n<\/li>\n<\/ul>\n<p><a href=\"http:\/\/dba.qishuo.xin\/wp-content\/uploads\/2022\/01\/wp_editor_md_98798d2cb78d47ee40d6c7543d9e7f16.jpg\" data-fancybox=\"images\" data-fancybox=\"images\"><img decoding=\"async\" src=\"http:\/\/dba.qishuo.xin\/wp-content\/uploads\/2022\/01\/wp_editor_md_98798d2cb78d47ee40d6c7543d9e7f16.jpg\" alt=\"\" \/><\/a><\/p>\n<ul>\n<li>\u6839\u636e\u963b\u585e\u65b9\u7684IP\u5730\u5740\u4e0e\u7aef\u53e3\u53f7\uff0c\u6211\u4eec\u5728\u5ba2\u6237\u7aef\u67e5\u8be2\u5230\u6267\u884c\u7a0b\u5e8f\u7684\u8fdb\u7a0b\u53f7\u548c\u8fd0\u884c\u7684\u8f6f\u4ef6\u3002\n<pre><code class=\"language-shell\">\n# Linux\u64cd\u4f5c\u7cfb\u7edf\nnetstat -nlatp | grep port\nps -eaf | grep pid<\/code><\/pre>\n<\/li>\n<\/ul>\n<h1><span class=\"ez-toc-section\" id=\"Windows%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F\"><\/span>Windows\u64cd\u4f5c\u7cfb\u7edf<span class=\"ez-toc-section-end\"><\/span><\/h1>\n<p>netstat -ano | findstr &quot;port&quot;<br \/>\ntasklist | findstr &quot;pid&quot;<\/p>\n<pre><code>![](http:\/\/dba.qishuo.xin\/wp-content\/uploads\/2022\/01\/wp_editor_md_73019768e729c8691d78f3fced63edb8.jpg)\n\n#### 4.8. \u4e2d\u6b62\u963b\u585e\u7684\u7ebf\u7a0b\n```sql\nMariaDB&gt;\nkill thread_id;<\/code><\/pre>\n<h3><span class=\"ez-toc-section\" id=\"5_%E6%80%BB%E7%BB%93\"><\/span>5. \u603b\u7ed3<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<h4><span class=\"ez-toc-section\" id=\"51_%E5%A6%82%E4%BD%95%E4%BC%98%E5%8C%96%E4%B8%8E%E9%81%BF%E5%85%8DMDL%E9%94%81\"><\/span>5.1. \u5982\u4f55\u4f18\u5316\u4e0e\u907f\u514dMDL\u9501<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>MDL\u9501\u4e00\u65e6\u53d1\u751f\u4f1a\u5bf9\u4e1a\u52a1\u9020\u6210\u6781\u5927\u5f71\u54cd\uff0c\u56e0\u4e3a\u540e\u7eed\u6240\u6709\u5bf9\u8be5\u8868\u7684\u8bbf\u95ee\u90fd\u4f1a\u88ab\u963b\u585e\uff0c\u9020\u6210\u8fde\u63a5\u79ef\u538b\u3002\u6211\u4eec\u65e5\u5e38\u8981\u5c3d\u91cf\u907f\u514dMDL\u9501\u7684\u53d1\u751f\uff0c\u4e0b\u9762\u7ed9\u51fa\u51e0\u70b9\u4f18\u5316\u5efa\u8bae\u53ef\u4f9b\u53c2\u8003\uff1a<\/p>\n<ul>\n<li>\u5f00\u542fmetadata_locks\u8868\u8bb0\u5f55MDL\u9501\u3002<\/li>\n<li>\u8bbe\u7f6e\u53c2\u6570lock_wait_timeout\u4e3a\u8f83\u5c0f\u503c\uff0c\u4f7f\u88ab\u963b\u585e\u7aef\u4e3b\u52a8\u505c\u6b62\u3002<\/li>\n<li>\u8bbe\u7f6e\u53c2\u6570innodb_rollback_on_timeout\u4e3aON\uff0c\u4f7f<\/li>\n<li>\u89c4\u8303\u4f7f\u7528\u4e8b\u52a1\uff0c\u53ca\u65f6\u63d0\u4ea4\u4e8b\u52a1\uff0c\u907f\u514d\u4f7f\u7528\u5927\u4e8b\u52a1\u3002<\/li>\n<li>\u589e\u5f3a\u76d1\u63a7\u544a\u8b66\uff0c\u53ca\u65f6\u53d1\u73b0MDL\u9501\u3002<\/li>\n<li>DDL\u64cd\u4f5c\u53ca\u5907\u4efd\u64cd\u4f5c\u653e\u5728\u4e1a\u52a1\u4f4e\u5cf0\u671f\u6267\u884c\u3002<\/li>\n<li>\u5c11\u7528\u5de5\u5177\u5f00\u542f\u4e8b\u52a1\u8fdb\u884c\u67e5\u8be2\uff0c\u56fe\u5f62\u5316\u5de5\u5177\u8981\u53ca\u65f6\u5173\u95ed\u3002<\/li>\n<\/ul>\n<h4><span class=\"ez-toc-section\" id=\"52_%E6%9B%B4%E6%B7%B1%E5%85%A5%E7%9A%84%E5%88%86%E6%9E%90%E9%94%81\"><\/span>5.2. \u66f4\u6df1\u5165\u7684\u5206\u6790\u9501<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p><a href=\"http:\/\/dba.qishuo.xin\/wp-content\/uploads\/2022\/01\/wp_editor_md_17ec44d9c04c8346fa78f64587e750e3.jpg\" data-fancybox=\"images\" data-fancybox=\"images\"><img decoding=\"async\" src=\"http:\/\/dba.qishuo.xin\/wp-content\/uploads\/2022\/01\/wp_editor_md_17ec44d9c04c8346fa78f64587e750e3.jpg\" alt=\"\" \/><\/a><\/p>\n<h3><span class=\"ez-toc-section\" id=\"6%E6%B5%8B%E8%AF%95%E7%9A%84%E8%84%9A%E6%9C%AC\"><\/span>6.\u6d4b\u8bd5\u7684\u811a\u672c<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<pre><code class=\"language-sql\">DROP TABLE IF EXISTS tb01;\nDROP TABLE IF EXISTS tb02;\nDROP TABLE IF EXISTS tb03;\n\nCREATE TABLE tb01 (\n  order_id NUMERIC(11) NOT NULL,\n  order_time datetime DEFAULT NULL,\n  remark varchar(64),\n  CONSTRAINT pk_tb01 PRIMARY KEY (order_id)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;\n\nCREATE TABLE tb02 (\n  order_id NUMERIC(11) NOT NULL,\n  order_time datetime DEFAULT NULL,\n  remark varchar(64),\n  CONSTRAINT pk_tb02 PRIMARY KEY (order_id)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;\n\nCREATE TABLE tb03 (\n  order_id NUMERIC(11) NOT NULL,\n  order_time datetime DEFAULT NULL,\n  remark varchar(64),\n  CONSTRAINT pk_tb02 PRIMARY KEY (order_id)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;\n\nINSERT INTO tb01(order_id,order_time)\nVALUES (11,now()),(12,now());\nSELECT * FROM tb01;\n\nINSERT INTO tb02(order_id,order_time)\nVALUES (21,now()),(22,now());\nSELECT * FROM tb02;\n\nINSERT INTO tb03(order_id,order_time)\nVALUES (31,now()),(32,now());\nSELECT * FROM tb03;\n\n-- SESSION1:\nSTART TRANSACTION;\n  SET @dt_time1 = STR_TO_DATE(&#039;2022-01-01 01:01:01&#039;,&#039;%Y-%m-%d&#039;);\n  SET @dt_time2 = str_to_date(&#039;2022-12-31 23:59:59&#039;,&#039;%Y-%m-%d&#039;);\n\n  UPDATE tb01\n     SET order_time = @dt_time1,\n         remark = &#039;session1-update-tb01-11&#039;\n   WHERE order_id = 11;\n\n  SELECT * FROM tb01 WHERE tb01.order_id = 11;\n\n  UPDATE tb02\n     SET order_time = @dt_time2,\n         remark = &#039;session1-update-tb02-21&#039;\n   WHERE order_id = 21;\n\n  SELECT connection_id();\n\nROLLBACK;\n\n-- SESSION2:\nSTART TRANSACTION;\n  SET @dt_time1 = STR_TO_DATE(&#039;2022-01-01 01:01:01&#039;,&#039;%Y-%m-%d&#039;);\n  SET @dt_time2 = str_to_date(&#039;2022-12-31 23:59:59&#039;,&#039;%Y-%m-%d&#039;);\n\n  UPDATE tb03\n     SET order_time = @dt_time1,\n         remark = &#039;session2-update-tb03-31&#039;\n   WHERE order_id = 31;\n\n  UPDATE tb01\n     SET order_time = @dt_time2,\n         remark = &#039;session2-update-tb01-11&#039;\n   WHERE order_id = 11;\n\n   SELECT * FROM tb01 WHERE tb01.order_id = 11;\n   SELECT connection_id();\n\nROLLBACK;<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>1. \u573a\u666f\u63cf\u8ff0 1.1. \u95ee\u9898 Lock wait&hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[28,3],"tags":[173,12,175,174],"class_list":["post-1217","post","type-post","status-publish","format-standard","hentry","category-mariadb","category-mariadbmysql","tag-lock","tag-mariadb","tag-175","tag-174"],"_links":{"self":[{"href":"http:\/\/dba.qishuo.xin\/index.php?rest_route=\/wp\/v2\/posts\/1217","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/dba.qishuo.xin\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/dba.qishuo.xin\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/dba.qishuo.xin\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/dba.qishuo.xin\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1217"}],"version-history":[{"count":14,"href":"http:\/\/dba.qishuo.xin\/index.php?rest_route=\/wp\/v2\/posts\/1217\/revisions"}],"predecessor-version":[{"id":2095,"href":"http:\/\/dba.qishuo.xin\/index.php?rest_route=\/wp\/v2\/posts\/1217\/revisions\/2095"}],"wp:attachment":[{"href":"http:\/\/dba.qishuo.xin\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1217"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/dba.qishuo.xin\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1217"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/dba.qishuo.xin\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1217"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}