首页 > 数据库 >查询正在执行的SQL的数据库名和表名

查询正在执行的SQL的数据库名和表名

时间:2023-02-12 19:46:04浏览次数:40  
标签:p1 name -- 数据库 SQL person 名和表名 mysql

创建限制0.5个CPU和0.5G内存的MySQL容器

docker run -itd --name mysql --cpu-quota=50000 --memory 512M --rm -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root mysql:5.7

创建person表

DROP TABLE IF EXISTS person;
CREATE TABLE person ( id INT NOT NULL PRIMARY KEY AUTO_INCREMENT, name varchar(10) ) ENGINE = InnoDB CHARSET = utf8mb4;

插入10w条记录

DROP PROCEDURE IF EXISTS init_person_data;
DELIMITER $
CREATE PROCEDURE init_person_data()
BEGIN
    DECLARE i INT DEFAULT 1;
    WHILE i <=100000 DO
        INSERT INTO person(name) VALUES(CONCAT(CAST(i AS char), 'abc'));
        SET i = i+1;
END WHILE;
END $
DELIMITER ;
CALL init_person_data();

跑超慢SQL,耗时26分30秒左右

SELECT DISTINCT p1.name FROM person p1 LEFT JOIN person p2 ON p1.name = p2.name;

 

mysqld的CPU使用率接近50%

查看mysqld进程打开的业务数据库表文件

lsof -p 20241 | grep "/var/lib/mysql/" | grep -e "\.ibd" | grep -v "/var/lib/mysql/mysql"

test是数据库名字,person是表名字。

查看当前用户正在运行的线程(root可以看到所有)
show full processlist;

说明超慢SQL还没有执行结束。

标签:p1,name,--,数据库,SQL,person,名和表名,mysql
From: https://www.cnblogs.com/WJQ2017/p/17114534.html

相关文章

  • mysql根据子id查出所有上级父类
    mysql代码表:t_b_dr_assets_catalog,业务字段:parent为表中的上级id字段,2c9081c27337beb501733b876cbf0350为主键id【1、把t_b_dr_assets_catalog换成自己的业......
  • (数据库系统概论|王珊)第二章关系数据库-第一节:关系数据结构及其形式化定义
    pdf下载:密码7281点击这里阅读效果更好:【专栏必读】(考研复试)数据库系统概论第五版(王珊)专栏学习笔记目录导航及课后习题答案详解@目录一:关系(1)域(2)笛卡尔积(3)关系A:基本概述B......
  • Drupal的数据库配置文件
    至此,我们已经拿到了这个靶机中的4个flag:flag1、flag3、flag4以及thefinalflag,但是还有flag2没有拿到。联想到之前flag1给出的提示:EverygoodCMSneedsaconfigfile1.那......
  • MySql 导出本地全部数据库
    0、参考Mysql一次性备份导出/导入恢复所有数据库1、检查环境配置mysql环境pathC:\ProgramFiles\MySQL\MySQLServer5.7\bin2、导出mysqldump-uroot-p--all-da......
  • 如何防止SQL注入?
    MyBatis解决方案使用#{}而不是${}#{}在SQL语句预编译后,${}会被替换为?,然后在执行SQL语句的时候,将参数替换?,即使参数中有如'or1=1'等敏感输入,也只会被作为......
  • Mysql8 DDL常用sql
    常用DDL语句`create_by`varchar(50)CHARACTERSETutf8mb4COLLATEutf8mb4_general_ciNOTNULLDEFAULT'system'COMMENT'创建人',`create_time`datetimeNOTNUL......
  • MySQL 编码标准和命名约定
    MySQL命名约定引擎和字符集引擎始终是MyISAM,除非在特殊情况下需要不同。所有数据库都必须使用UTF8字符集。数据库数据库名称必须与项目名称同名。如果项目名称为“......
  • linux环境千万数据导入mysql遭遇问题
    看黑马mysql视频有数据是一千万条数据,分批使用loadfile方式导入数据库表的时候出现了导入失败问题表结构CREATETABLE`tb_sku`(`id`int(11)NOTNULLAUTO_INC......
  • 数据库中索引的优缺点
    一、索引的概念索引就是加快检索表中数据的方法。数据库的索引类似于书籍的索引。在书籍中,索引允许用户不必翻阅完整个书就能迅速地找到所需要的信息。在数据库中......
  • 使用pycharm打开sqlite的问题
    问题:有同学在sqlite数据库文件执行数据库迁移完成前,点开了他,导致sqlite数据库被pycharm当成文本文件打开了,并且不会改了。其实sqlite文件和电脑中的其他文件(xx.mp4,xx.tx......