如何找出MySQL中正在锁表的语句?

MySQL在每个版本发布时,都会加上一些用以监控内部活动的工具。 但是,监控内部的锁情况的工具一直支持的不好。 监控锁一个非常重要和常用的功能,在这篇文章,我讲阐述如何做到。 1 介…

MySQL更新字段来自另一个表的count()值

假设有文章post和评论comment两个表,文章表记录有评论的数量,但是这个值我们要一次更新。 如下,现在post表的comment_count都是0,我们的目标是:执行一个SQL语句,让其把统计comment…

设置MySQL默认时区

MySQL默认的时区是UTC时区,比北京时间晚8个小时。 假设日志里面的时间是中午12:00,那么北京时间应该是晚上的8:00点钟。 为方便查看和设置时间,我们要设置MySQL的默认时区,以符合本…

从MySQL中删除重复数据

如何从MySQL中删除重复数据,只保留一条呢? 假设有如下一个数据表: mysql > SELECT * FROM users; +----+--------+ | id | name | +----+--------+ | 1 | google | <-- | 2 | y…

MySQL导入多个.sql文件高效方法

MySQL有多种方法导入多个.sql文件(里面是sql语句),常用的有两个命令:mysql和source。 但是这两个命令的导入效率差别很大,具体请看最后的比较。 (还有sqlimport和LOAD DATA INFILE…

MySQL重置root密码

我们介绍一种无需密码的重置root密码的方式。 步骤如下: 1、打开配置文件/etc/my.cnf,在mysqld下添加一行skip-grant-tables,如下: [mysqld] #... skip-grant-tables #... 这样我们…

MySQL Explain 解析

一、语法 explain < table_name > 例如: explain select * from t3 where id=3952602; 二、explain输出解释 +----+-------------+-------+-------+-------------------+--------…

Docker LNMP环境搭建

本文介绍如何使用Docker容器,快速部署LNMP环境。 最终完成的环境我们称为:DNMP(即 Docker + Nginx + MySQL + PHP)。 最终实现一键部署LNMP环境的目的,该环境特点: 完全开源 支持…

MySQL批量更新数据

mysql更新语句很简单,更新一条数据的某个字段,一般这样写:  UPDATE mytable SET myfield = 'value' WHERE other_field = 'other_value'; 如果更新同一字段为同一个值,mysql也很简单…