<?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 魔都水滴</title>
    <link>https://blog.margrop.net/tag/mysql/</link>
    <description>Recent content in MySQL on 魔都水滴</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>zh-CN</language>
    <lastBuildDate>Sat, 11 Jul 2026 08:30:00 +0800</lastBuildDate>
    <atom:link href="https://blog.margrop.net/tag/mysql/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>别再让 AI 猜故障了：MySQL &#43; Prometheus &#43; Loki &#43; Grafana 四件套接入 Agent 全自动实战</title>
      <link>https://blog.margrop.net/post/mysql-prometheus-loki-grafana-ai-agent-hands-on/</link>
      <pubDate>Sat, 11 Jul 2026 08:30:00 +0800</pubDate>
      <guid>https://blog.margrop.net/post/mysql-prometheus-loki-grafana-ai-agent-hands-on/</guid>
      <description>很多团队已经把 MySQL、Prometheus、Loki 和 Grafana 装起来了，但线上报警之后，值班人员仍然要在四个窗口之间来回切换：先看仪表盘，再写 PromQL，然后去日志里搜索 trace_id，最后登录数据库核对业务记录。&#xA;这就像医院明明有体温计、病历、化验单和监护大屏，医生却仍要自己跑四个房间抄数据。AI Agent 真正有价值的地方，不是替医生“猜病”，而是拿着受限制的工具，自动把四处证据取回来，再把“现象、证据、根因和建议”分开说明。&#xA;本文不是概念拼贴。我实际启动了一套隔离环境，使用 MySQL 8.4、Prometheus 3.13、mysqld_exporter 0.19、Loki 3.7 和 Grafana 13.1，注入了一次带统一 trace_id 的慢查询故障，然后通过自建只读 MCP Bridge 完成协议初始化、工具发现、PromQL 查询、LogQL 查询、MySQL 只读查询和 Grafana 数据源审计。&#xA;先说结论：四件套接入 Agent，不等于把四套管理员密码交给 AI 正确的架构应该满足下面几条：&#xA;MySQL 仍然保存业务事实，Agent 只能使用专门的只读账号； Prometheus 负责保存数字随时间的变化，例如连接数、QPS 和缓存命中率； Loki 保存“发生了什么”的日志，并通过标签、时间和 trace_id 关联事件； Grafana 继续承担人工观察、仪表盘、数据源管理和结果复核； MCP Bridge 把查询包装成边界明确的工具，而不是开放任意 Shell； Agent 先调用工具取证，再总结答案，不能把语言模型的推测冒充事实。 换句话说，Agent 拿到的应该是一串“只能打开指定抽屉的钥匙”，而不是整栋楼的万能钥匙。&#xA;四件套分别是什么？用小学生也能懂的方式解释 MySQL：学校老师手里的成绩册 MySQL 保存订单、用户、库存、付款状态等业务事实。你问“这个订单到底有没有支付”，最终应该以数据库记录为准。&#xA;它像成绩册：里面写着谁参加了考试、得了多少分。成绩册擅长回答具体事实，却不适合每隔五秒画一次“全校平均分变化曲线”。&#xA;Prometheus：每隔几秒自动测一次体温 Prometheus 会定时抓取指标，并保存时间序列。借助 mysqld_exporter，MySQL 的连接数、查询数、线程状态等数据会被翻译成 Prometheus 能理解的格式。&#xA;它像自动体温计：一次读数只能告诉你现在是 38℃，连续读数才能告诉你温度是突然升高、持续升高，还是已经恢复。&#xA;下面是真实实验中的 Prometheus Targets 页面。mysql 抓取目标显示为 UP，说明 exporter 与 Prometheus 的链路已经打通。</description>
    </item>
    <item>
      <title>Docker容器内如何连接宿主机的MySQL服务器</title>
      <link>https://blog.margrop.net/post/docker-connect-mysql-in-host-machine/</link>
      <pubDate>Thu, 30 Sep 2021 13:08:50 +0800</pubDate>
      <guid>https://blog.margrop.net/post/docker-connect-mysql-in-host-machine/</guid>
      <description>&lt;p&gt;博主最近遇到一种情况，从服务器拷贝了一份数据库在宿主机Mysql服务器上，想要用本地的数据库测试自己的代码正确性，但是项目程序都是靠docker一键部署的，于是必定要在docker容器里访问到本地的数据库。在探索中遇到了问题并得到了解决。&lt;/p&gt;</description>
    </item>
    <item>
      <title>MySQL中Date，夏令时时间转换引发的错误HOUR_OF_DAY: 0 -&gt; 1，及解决办法</title>
      <link>https://blog.margrop.net/post/mysql-exception-hour-of-day-0-1-solution/</link>
      <pubDate>Thu, 25 Mar 2021 10:53:15 +0800</pubDate>
      <guid>https://blog.margrop.net/post/mysql-exception-hour-of-day-0-1-solution/</guid>
      <description>&lt;h1 id=&#34;做用户导出的功能代码报错hour_of_day-0---1&#34;&gt;做用户导出的功能，代码报错HOUR_OF_DAY: 0 -&amp;gt; 1&lt;/h1&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Exception in thread &amp;ldquo;main&amp;rdquo; java.lang.IllegalArgumentException: HOUR_OF_DAY: 0 -&amp;gt; 1&#xA;详细报错内容如下：&lt;/li&gt;&#xA;&lt;/ul&gt;</description>
    </item>
    <item>
      <title>如何使用通用的Hibernate类型映射JSON对象</title>
      <link>https://blog.margrop.net/post/how-to-map-json-collections-using-jpa-and-hibernate/</link>
      <pubDate>Fri, 29 Jan 2021 16:06:09 +0800</pubDate>
      <guid>https://blog.margrop.net/post/how-to-map-json-collections-using-jpa-and-hibernate/</guid>
      <description>&lt;h1 id=&#34;介绍&#34;&gt;介绍&lt;/h1&gt;&#xA;&lt;p&gt;在本文中，我们将看到如何使用&lt;a href=&#34;http://www.google.com/&#34; title=&#34;Hibernate Types&#34;&gt;Hibernate Types&lt;/a&gt;开源项目将JSON列映射到JPA实体属性。&lt;/p&gt;&#xA;&lt;p&gt;虽然您可以创建自己的自定义Hibernate类型，但可以在Oracle，SQL Server，PostgreSQL或MySQL上映射JSON列类型，但是由于&lt;a href=&#34;http://www.google.com/&#34; title=&#34;Hibernate Types&#34;&gt;Hibernate Types&lt;/a&gt;项目已经提供了此功能，因此您无需实现自己的Hibernate Type 。&lt;/p&gt;</description>
    </item>
    <item>
      <title>CentOS 7 升级或新安装MariaDB 10.5，使用阿里云镜像</title>
      <link>https://blog.margrop.net/post/centos-7-upgrade-or-install-mariadb-10.x-aliyun-mirror/</link>
      <pubDate>Fri, 29 Jan 2021 15:42:20 +0800</pubDate>
      <guid>https://blog.margrop.net/post/centos-7-upgrade-or-install-mariadb-10.x-aliyun-mirror/</guid>
      <description>&lt;h1 id=&#34;先进行系统更新&#34;&gt;先进行系统更新&lt;/h1&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;yum update -y&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h1 id=&#34;编辑yum配置文件使用阿里云镜像&#34;&gt;编辑yum配置文件，使用阿里云镜像&lt;/h1&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;这里以 MariaDB 10.5为例&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;vim /etc/yum.repos.d/MariaDB10.repo&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;#http://downloads.mariadb.org/mariadb/repositories/&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;[&lt;/span&gt;mariadb&lt;span style=&#34;color:#f92672&#34;&gt;]&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;name &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; MariaDB&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;baseurl &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; https://mirrors.aliyun.com/mariadb/yum/10.5/centos7-amd64&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;gpgkey &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; https://mirrors.aliyun.com/mariadb/yum/RPM-GPG-KEY-MariaDB&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;gpgcheck &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#ae81ff&#34;&gt;1&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description>
    </item>
  </channel>
</rss>
