<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Mysql on Shellj的博客</title>
    <link>https://im.shellj.com/tags/mysql/</link>
    <description>Recent content in Mysql on Shellj的博客</description>
    <generator>Hugo</generator>
    <language>en</language>
    <lastBuildDate>Wed, 20 Dec 2023 15:53:25 +0800</lastBuildDate>
    <atom:link href="https://im.shellj.com/tags/mysql/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Windows Rust 编译 mysqlclient 缺失或者 libpq 缺失解决方法</title>
      <link>https://im.shellj.com/posts/2021/11/windows-rust-compile-missing-mysqlclient/</link>
      <pubDate>Sat, 20 Nov 2021 21:29:00 +0800</pubDate>
      <guid>https://im.shellj.com/posts/2021/11/windows-rust-compile-missing-mysqlclient/</guid>
      <description>&lt;p&gt;在 Windows 上使用 Rust 编译带有 Mysql 或者 Postgresql 的项目会报 &lt;code&gt;mysqlclient&lt;/code&gt; 或者 &lt;code&gt;libpq&lt;/code&gt; 缺失，使用下面的方法可以解决。&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;下载 &lt;a href=&#34;https://cdn.mysql.com/archives/mysql-connector-c/mysql-connector-c-6.1.11-winx64.zip&#34;&gt;mysql-connector-c&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;配置 CARGO_HOME\config，新增配置&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&#xA;&lt;div class=&#34;code-block&#34;&gt;&#xA;  &#xA;  &lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;[target.x86_64-pc-windows-msvc.mysqlclient]&#xA;rustc-link-search = [&amp;#34;E:\\Env\\mysql\\mysql-connector-c-6.1.11-winx64\\lib\\vs14&amp;#34;]&#xA;rustc-link-lib = [&amp;#34;mysqlclient&amp;#34;]&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;如果是 posqgresql 则新增:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Mysql Communications link failure 的几种情况</title>
      <link>https://im.shellj.com/posts/2019/06/mysql-communications-link-failure/</link>
      <pubDate>Fri, 14 Jun 2019 22:54:00 +0800</pubDate>
      <guid>https://im.shellj.com/posts/2019/06/mysql-communications-link-failure/</guid>
      <description>&lt;h2 id=&#34;问题&#34;&gt;问题&lt;/h2&gt;&#xA;&lt;p&gt;一个批量导数据的程序，加了一张表的导入后，有时会出现 &lt;strong&gt;com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure&lt;/strong&gt; 错误，这个错误在网上非常常见。&lt;/p&gt;&#xA;&lt;h2 id=&#34;问题排查&#34;&gt;问题排查&lt;/h2&gt;&#xA;&lt;p&gt;在网上搜索了一遍后，大多数方案说的原因都是一个数据库链接空闲时间太长了，导致被关闭掉了，而我的这个程序不是这种情况，因为导数据都是不断的在执行，链接不太可能会空闲，这个解决方案明显不符合我的情况，然后在网上看到一篇博客，说是因为批量插入的数据太多，导致超时，这个应该差不多，然后写了代码测试了一下，几万条数据批量插入的时候就会超时报错了。&lt;/p&gt;</description>
    </item>
    <item>
      <title>mycat事务超时</title>
      <link>https://im.shellj.com/posts/2017/05/mycat-transation-timeout/</link>
      <pubDate>Wed, 03 May 2017 23:30:00 +0800</pubDate>
      <guid>https://im.shellj.com/posts/2017/05/mycat-transation-timeout/</guid>
      <description>&lt;h4 id=&#34;问题&#34;&gt;问题&lt;/h4&gt;&#xA;&lt;p&gt;项目里面使用的是&lt;a href=&#34;http://mycat.io/&#34;&gt;mycat&lt;/a&gt;进行分库分表，但在最近一个系统更新后出现数据库事务锁超时的问题，如下面的错误:&lt;/p&gt;&#xA;&#xA;&lt;div class=&#34;code-block&#34;&gt;&#xA;  &#xA;  &lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;Caused by: java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;/div&gt;&#xA;&lt;h4 id=&#34;分析&#34;&gt;分析&lt;/h4&gt;&#xA;&lt;p&gt;先在网上搜索了一下之后，发现大多数说的都不是什么好的解决方案，手动kill掉事务，把事务超时时间加长，这些对我现在这个项目都不实际，还是自己分析吧。&lt;br&gt;&#xA;对数据库的配置检查了一番，没什么问题，并没有什么更新，然后就对程序进行分析，这个错误是在一次系统更新后才出现的，对这次更新进行了分析，发现频繁超时的那个更新操作去掉了一个分片id参数，比如之前是这样：&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
