mysql手动中断source命令的执行

在MySQL命令行中执行source命令导入SQL文件时,由于忘记关闭autocommit导致过程缓慢。尝试通过show processlist查找并kill进程,但未发现对应进程。在无法重启数据库的情况下,通过断开连接MySQL的终端来停止source命令,成功阻止了数据导入。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题

在mysql命令行 对一个sql文件执行了source命令,把sql文件的数据导入mysql。
因导入数据前,忘记把autocommit 关闭,导致导入较慢,因此需中断source 命令的运行。
计划 先找到source 对应的进程,然后kill

mysql> select * from information_schema.processlist where user = 'polcent_basepara';
+-----------+------------------+-------------------+----------------------+---------+------+-----------+------------------------------------------------------------------------------+
| ID        | USER             | HOST              | DB                   | COMMAND | TIME | STATE     | INFO                                                                         |
+-----------+------------------+-------------------+----------------------+---------+------+-----------+------------------------------------------------------------------------------+
| 168098009 | polcent_basepara | 10.85.5.205:55751 | polcent_baseparam_db | Query   |    0 | executing | select * from information_schema.processlist where user = 'polcent_basepara' |
| 185052178 | polcent_basepara | 10.85.5.205:39798 | polcent_baseparam_db | Sleep   |    0 |           | NULL                                                                         |
+-----------+------------------+-------------------+----------------------+---------+------+-----------+------------------------------------------------------------------------------+
2 rows in set (0.01 sec)

奇怪的一幕发生了,show processlist 里面没有对应的 进程
不指定用户名,再次执行 show processlist , 依然没有对应的进程,这可怎么kill ,找不到对应线程。。。

然后,开始网上到处搜解决方案,查看了几十个网页,唯一找到的办法就是重启mysql

问了开发,开发说不能重启数据库。。。

解决办法

突然一个想法冒了出来,执行source 命令的窗口 如果断开和 mysql 的连接,会不会终止数据的导入呢?

那就试试!
我用的是 secureCRT 连接的mysql , 点击断开连接后,我在另外一个窗口查询source导入数据对应的表的数据量,数据量不再增长了!
不像刚才,source 导入数据 执行的时候,表的数据量是不断增加的,现在数据量不变了,说明source 导入操作停止了! 大功告成!

写于 March.4, 2021

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值