首页 > 解决方案 > 安全地取消 MySQL 导入

问题描述

我正在尝试上传一个大型数据库:

$mysql -u 用户名 -p MY_DATABASE < MY_DATABASE.sql

但是这个过程非常缓慢,我想取消并使用不同的设置重试。如何“安全地”取消此上传?或者在强制终止导入后清理数据库的最佳方法是什么?

标签: mysql

解决方案


你可以杀死你的 MySQL 进程MY_DATABASE.sql

这向您显示正在运行的进程:

show processlist;

然后,如果其他进程正在运行,您应该通过process_id用户的正确选择和上一个命令显示的时间来终止选择它的进程,以了解哪个是正确的:

kill process_id

我认为清理数据库是最难的工作,因为它取决于MY_DATABASE.sql内容:如果它填充一个表,你可以简单地截断它,如果它创建一个数据库并上传表、视图、存储过程和其他元素,你应该放弃数据库。

如果您在杀死进程(创建数据库?创建表或其他元素?)后查看MY_DATABASE.sql内容和服务器内容,您将了解该怎么做。

如果,正如我想象的那样,脚本完全创建了一个数据库,您应该只需要删除从先前中断的上传创建的数据库(如果有的话),然后重新开始上传。


推荐阅读