MySQL管理工具MySQL Utilities — 搜索进程

默北 MySQL1 8,390字数 1870阅读6分14秒阅读模式

mysql.utilities.command.proc 该模块用于搜索服务器上的进程,还可以对任何查询到的活所有匹配到的连接进行杀死操作。搜索匹配的字段与INFORMATION_SCHEMA.PROCESSLIST表列相同。在内部,该模块构建一个查询匹配进程的SELECT语句,然后发送给服务器。代替执行搜索,该模块返回执行该查询的SQL代码。

常量

以下常量对应于INFORMATION_SCHEMA.PROCESSLIST表列,表示可以搜索匹配的条件。文章源自运维生存时间-https://www.ttlsa.com/mysql/mysql-utilities-command-proc/

  • mysql.utilities.command.proc.ID
  • mysql.utilities.command.proc.USER
  • mysql.utilities.command.proc.HOST
  • mysql.utilities.command.proc.DB
  • mysql.utilities.command.proc.COMMAND
  • mysql.utilities.command.proc.TIME
  • mysql.utilities.command.proc.STATE
  • mysql.utilities.command.proc.INFO

以下的常量表示对符合搜索条件的进程可执行的动作:文章源自运维生存时间-https://www.ttlsa.com/mysql/mysql-utilities-command-proc/

  • mysql.utilities.command.proc.KILL_QUERY  杀死查询进程
  • mysql.utilities.command.proc.KILL_CONNECTION  杀死连接进程
  • mysql.utilities.command.proc.PRINT_PROCESS  打印进程

Classes

class mysql.utilities.command.proc.ProcessGrep(matches, actions=[], use_regexp=False)文章源自运维生存时间-https://www.ttlsa.com/mysql/mysql-utilities-command-proc/

该类搜索INFORMATION_SCHEMA.PROCESSLIST表的进程,甚至可以杀死它们。既可以用于执行实际的搜索或杀死操作,也可以生成该动作的SQL语句。文章源自运维生存时间-https://www.ttlsa.com/mysql/mysql-utilities-command-proc/

杀死mats用户的查询,代码如下:文章源自运维生存时间-https://www.ttlsa.com/mysql/mysql-utilities-command-proc/

>>> from mysql.utilities.command.proc import *
>>> grep = ProcessGrep(matches=[(USER, "mats")], actions=[KILL_QUERY])
>>> grep.execute("root@server-1.example.com", "root@server-2.example.com")
文章源自运维生存时间-https://www.ttlsa.com/mysql/mysql-utilities-command-proc/
Parameters:
  • matches (List of (var, pat) pairs) Sequence of field comparison conditions. In each condition, var is one of the constants listed earlier that specify PROCESSLIST table fields and pat is a pattern. For a process to match, all field conditions must match.

sql([only_body=False])

返回执行搜索的SQL代码(杀死动作可选)。如果only_body 为true,显示函数体。如果该SQL代码用于其他工具是非常有用的。如果only_body为false,如果要杀死生成一个完整的存储过程,如果是普通的搜素仅仅是一个查询语句。文章源自运维生存时间-https://www.ttlsa.com/mysql/mysql-utilities-command-proc/

文章源自运维生存时间-https://www.ttlsa.com/mysql/mysql-utilities-command-proc/
Parameters:
  • only_body (boolean) Show only the body of the procedure. If this is False, a complete procedure is returned.
Returns: SQL code for executing the operation specified by the options.
Return type: string

execute(connections, ...[, output=sys.stdout, connector=mysql.connector])

依次执行每个连接的搜索。如果没有输出,该值视为文件对象和执行的结果在该流中打印。注意,输出和连接参数必需作为关键字参数。所有其他参数都视为连接的参数。文章源自运维生存时间-https://www.ttlsa.com/mysql/mysql-utilities-command-proc/

文章源自运维生存时间-https://www.ttlsa.com/mysql/mysql-utilities-command-proc/
Parameters:
  • connections Sequence of connection specifiers to send the search to
  • output File object to use for writing the result
  • connector Connector to use for connecting to the servers
文章源自运维生存时间-https://www.ttlsa.com/mysql/mysql-utilities-command-proc/文章源自运维生存时间-https://www.ttlsa.com/mysql/mysql-utilities-command-proc/
weinxin
我的微信
微信公众号
扫一扫关注运维生存时间公众号,获取最新技术文章~
默北
  • 本文由 发表于 11/05/2015 01:00:14
  • 转载请务必保留本文链接:https://www.ttlsa.com/mysql/mysql-utilities-command-proc/
评论  1  访客  1
    • qq19941125
      qq19941125 9

      因为很多事情你是看不懂的

    评论已关闭!