mysql管理语句

1.查询执行中的语句

SELECT * FROM information_schema.processlist WHERE state LIKE '' and info like '';

state是语句的执行状态,比如metadata lock是等待获取元数据锁,info是执行的语句

  1. 查询正在操作某个表的连接,并且批量生成kill语句

SELECT

CONCAT('KILL ', t.PROCESSLIST_ID

, ';') AS kill_command

FROM performance_schema.metadata_locks AS ml

JOIN performance_schema.threads AS t

ON ml.OWNER_THREAD_ID = t.THREAD_ID

WHERE ml.OBJECT_SCHEMA = ''

AND ml.OBJECT_NAME = ''

ORDER BY ml.LOCK_STATUS DESC;

OBJECT_SCHEMA是数据库名称,OBJECT_NAME是表名称。

  1. kill某个连接

kill processlistId

processlistId是第二步查询出来的连接ID

  1. 更改自增主键的值

ALTER TABLE table_name AUTO_INCREMENT = %d;

  1. 重命名表
    RENAME TABLE old_table TO new_table;

重命名表是非常快速的操作,对于千万行级别表,也只需要两分钟左右的时间。

  1. 执行数据迁移的顺序

a. 建立和源表结构一致的新表,但是先不建立索引(为了快速实现数据迁移)

b. 进行数据迁移 insert into new_table(column_names) select column_names from old_table where conditions;

c. 建立索引

对于百万行数据,步骤b大约需要15分钟,步骤c单个索引,大概需要两分钟。

相关推荐
白帽小丑9 小时前
# 一次 MySQL DELETE 误操作的数据恢复尝试实录
数据库·mysql
Dxy123931021610 小时前
MySQL索引完整教程:创建、查看、修改、删除与日常管理
前端·javascript·mysql
Quincy_Freak11 小时前
信创内网数据规范实践:银河麒麟下SQLite本地数据安全管理方案
数据库·sqlite·arm·数据库管理·大数据分析·银河麒麟·aarch64
至乐活着12 小时前
MySQL索引底层原理与查询优化实战:从B+树到执行计划
mysql·b+树·查询优化·sql性能·索引原理
2601_9626838913 小时前
治理遗留系统中的“生肉 SQL”:一次用多模型协作优化慢查询的实战复盘
数据库·人工智能·sql
酱学编程14 小时前
【从零到一实现一个 AI Agent 框架 · 第四篇】04. 任务规划:拆解复杂目标 -
服务器·网络·数据库·人工智能
shushangyun_15 小时前
2026智能采购商城系统选型指南:如何引领企业数字化采购升级
java·大数据·数据库·人工智能·机器学习
华山令狐虫16 小时前
DBAPI AI 写 SQL:支持动态 SQL 与参数占位符,自然语言一键生成
数据库·人工智能·sql·dbapi
IvorySQL16 小时前
PG 技术日报|2026-07-04
数据库·人工智能·postgresql·开源
Hoxy.R17 小时前
KingbaseES读写分离高可用集群扩容、备库重建与故障切换实战
运维·数据库