• MySQL OOM(内存溢出)的排查思路及优化方法

    OOM全称"Out Of Memory",即内存溢出。内存溢出已经是软件开发历史上存在了近40年的“老大难”问题。在操作系统上运行各种软件时,软件所需申请的内存远远超出了物理内存所承受的大小,就叫内存溢出。内存溢出产生原因多种多样,当内存严重不足时,内核有两种选择:直接panic杀掉部分进程,释放一 2025-04-01 01:17:08
  • Mysql分布式事务

    Mysql分布式事务为了规范分布式事务的管理,X/OPEN 提出了分布式事务处理规范XA协议,XA规范了TM与RM之间的通信接口,在TM与多个RM之间形成一个双向通信桥梁,从而在多个数据库资源下保证ACID四个特性。目前知名的数据库,如Oracle, DB2,mysql等,都是实现了XA接口的,都可 2025-04-01 00:31:58
  • 用pymysql实现对多行数据的insert和update加速

    摘要本文对pymysql操作MySQL,insert和update的速度优化测试对比。对于insert操作来说,“一个事务处理多行的方式”比“一个事务处理一行的方式”插入相同的数据快了313倍,即插入2000个记录,一个事务一行的方式需要30.99秒,优化方式仅需要0.099秒。MySQL原始语法是 2025-03-31 00:01:20
  • MySQL C API 参数 MYSQL_OPT_READ_TIMEOUT 的一些行为分析

    MYSQL_OPT_READ_TIMEOUT 是 MySQL c api 客户端中用来设置读取超时时间的参数。在 MySQL 的官方文档中,该参数的描述是这样的:MYSQL_OPT_READ_TIMEOUT (argument type: unsigned int *)The timeout in 2025-03-30 00:34:50
  • 记一次项目中 mysql auto_increment 回退导致的问题

    在测试环境发生一个比较奇怪的问题,最终定位原因是 mysql 服务重启后 auto_increment 回退引起的。在此记录一下。1、问题具体问题如下:1、有两张表,一张主表 t_A,一张记录表 t_B;2、记录表 t_B 是主表 t_A 的每次插入数据的历史记录;3、有问题的方法是加事务的,方法中 2025-03-30 00:20:34
  • 说说 MySQL 权限

    这篇说说 MySQL 权限管理。MySQL 从用户、密码和IP三个维度来管理用户链接的。1. 创建用户先看一个示例:# 创建 david 用户,密码为 123, 101.32.19.* 可以访问mysql> create user 'david'@'101.32.19.%' identifi 2025-03-30 00:11:05
  • MySQL 中一个双引号错位引发的血案

    一、前言最近经常碰到开发误删除误更新数据,这不,他们又给我找了个麻烦,我们来看下整个过程。二、过程由于开发需要在生产环节中修复数据,需要执行120条SQL语句,需要将数据进行更新于是开发连上了生产数据库,首先执行了第一条SQLupdate tablename set source_name = "b 2025-03-29 00:48:00
  • 面试官:mysql自增长id用完了怎么办?这是我见过最中肯的答案了

    mysql自增长id用完了,怎么办?作为一名程序员,在求职面试时,不知你有没有遇到类似这样的问题。张工是一名java程序员,最近到一家互联网公司面试,面试官就问了他这样的一个问题。面试官:"用过mysql吧,你们数据表主键id是用自增主键还是UUID?"张工:"用的是自增主键"面试官:"为什么是自增 2025-03-29 00:39:37
  • 一文看懂mysql数据库checkpoint机制

    概述mysql数据库的checkpoint和Oracle还是很相似的,下面一起来看看吧~简介场景:如果重做日志可以无限地增大,同时缓冲池也足够大,那么是不需要将缓冲池中页的新版本刷新回磁盘。因为当发生宕机时,完全可以通过重做日志来恢复整个数据库系统中的数据到宕机发生的时刻。但是这需要两个前提条件:1 2025-03-28 04:46:38
  • 我用几行代码实现了mysql数据库的自动备份,老板说小伙子不错

    1.事件起因就是之前服务器上用的是mysql数据库,因为小公司嘛,也没有专门的运维。我们几个苦逼的开发都是即当业务,又干开发,还要做测试和运维,别提多悲催了。因为出过生产事故,后来兼顾运维的同事只好每天手动去备份。备份很简单,就是用navicat。这个玩意,相信大家都用过吧,里面有一个导出数据库的功 2025-03-28 00:53:56