有没有办法立即停止在MySQL服务器中执行SQL脚本,例如" break"或"退出"命令?
我将要运行的语句放在文件" updates.sql"中,并使用MySQL命令执行:
mysql -u <username> <dtabase_name> < updates.sql
ALTER TABLE `app_batch`
ADD COLUMN `fee` DOUBLE NOT NULL AFTER `mode`;
ALTER TABLE `app_course`
DROP COLUMN `course_fee`,
DROP COLUMN `duration_type`,
DROP COLUMN `duration`,
这是我在文件中的查询。
它正在执行DROP COLUMN
行事件
ADD COLUMN `fee` DOUBLE NOT NULL AFTER `mode`;
失败
答案 0 :(得分:1)
使用终端连接到mysql服务器(使用命令提示符,如果您使用的是Windows)
mysql -u [user_name] -p [密码]
运行以下命令列出正在运行的查询。
mysql> show full processlist; +----+------+-----------+------+---------+------+----------+-----------------------+ | Id | User | Host | db | Command | Time | State | Info | +----+------+-----------+------+---------+------+----------+-----------------------+ | 8 | root | localhost | NULL | Sleep | 25 | | NULL | | 9 | root | localhost | NULL | Query | 0 | starting | show full processlist | +----+------+-----------+------+---------+------+----------+-----------------------+ 2 rows in set (0.00 sec)
然后按进程ID
终止查询的MySQL&GT;杀9;
答案 1 :(得分:0)
使用 SHOW PROCESSLIST
查看所有连接, KILL 您要杀死的进程ID。
mysql>show processlist;
mysql> kill "number from first col";
或者您也可以KILL完成连接以停止来自特定连接的所有查询。