• mysql kill操作


    KILL语法

    KILL [CONNECTION | QUERY] thread_id

    每个与mysqld的连接都在一个独立的线程里运行,您可以使用SHOW PROCESSLIST语句查看哪些线程正在运行,并使用KILL thread_id语句终止一个线程。

    KILL允许自选的CONNECTIONQUERY修改符:

    ·         KILL CONNECTION与不含修改符的KILL一样:它会终止与给定的thread_id有关的连接。

    ·         KILL QUERY会终止连接当前正在执行的语句,但是会保持连接的原状。

    如果您拥有PROCESS权限,则您可以查看所有线程。如果您拥有SUPER权限,您可以终止所有线程和语句。否则,您只能查看和终止您自己的线程和语句。

    您也可以使用mysqladmin processlistmysqladmin kill命令来检查和终止线程。

    注释:您不能同时使用KILLEmbedded MySQL Server库,因为内植的服务器只运行主机应用程序的线程。它不能创建任何自身的连接线程。

    当您进行一个KILL时,对线程设置一个特有的终止标记。在多数情况下,线程终止可能要花一些时间,这是因为终止标记只会在在特定的间隔被检查:

    ·         SELECT, ORDER BYGROUP BY循环中,在读取一组行后检查标记。如果设置了终止标记,则该语句被放弃。

    ·         ALTER TABLE过程中,在每组行从原来的表中被读取前,检查终止标记。如果设置了终止标记,则语句被放弃,临时表被删除。

    ·         UPDATEDELETE运行期间,在每个组读取之后以及每个已更行或已删除的行之后,检查终止标记。如果终止标记被设置,则该语句被放弃。注意,如果您正在使用事务,则变更不会被 回滚。

    ·         GET_LOCK()会放弃和返回NULL

    ·         INSERT DELAYED线程会快速地刷新(插入)它在存储器中的所有的行,然后终止。

    ·         如果线程在表锁定管理程序中(状态:锁定),则表锁定被快速地放弃。

    ·         如果在写入调用中,线程正在等待空闲的磁盘空间,则写入被放弃,并伴随"disk full"错误消息。

    ·         警告:对MyISAM表终止一个REPAIR TABLEOPTIMIZE TABLE操作会导致出现一个被损坏的没有用的表。对这样的表的任何读取或写入都会失败,直到您再次优化或修复它(不中断)。

    转自 http://dev.mysql.com/doc/refman/5.1/zh/sql-syntax.html#load-index

  • 相关阅读:
    Eclipse和MyEclipse使用技巧--Eclipse各版本介绍
    专业分类
    Eclipse如何安装JD-Eclipse反编译插件
    JS生成UUID的方法实例
    第一章 Spring Security是什么?
    证件类型及编码含义
    银行机构代码
    html页面通过特殊链接:打电话,发短信,发邮件详细教程
    Eclipse修改Tomcat发布路径以及的配置多个Tomcat方法
    jquery实践案例--验证电子邮箱
  • 原文地址:https://www.cnblogs.com/ggjucheng/p/2758025.html
Copyright © 2020-2023  润新知