MySQL Cluster Manager 8.0.31 用户手册  / 第 4 章使用 MySQL 集群管理器  /  3.1 mcmd,MySQL Cluster Manager Agent

3.1  mcmd,MySQL Cluster Manager Agent

mcmd是 MySQL Cluster Manager 代理程序;调用此可执行文件会启动 MySQL Cluster Manager 代理,您可以使用mcm客户端连接到它(有关更多信息,请参阅 第 3.3 节“启动 MySQL Cluster Manager 客户端”第 4 章MySQL Cluster Manager 客户端命令)。

您可以通过指定本节中讨论的一个或多个选项,以多种不同的方式修改代理的行为。这些选项中的大多数都可以在命令行或代理配置文件(通常是 etc/mcmd.ini)中指定。(一些例外情况包括 --defaults-file--bootstrap选项,如果使用它们,则必须在命令行中指定,并且它们相互排斥。)例如,您可以将代理的集群日志记录级别设置为而不是其中任何一个中warning 的默认值message以下两种方式之一:

  • 调用mcmd时 包含--log-level=warning在命令行中。

    笔记

    在命令行上指定代理配置选项时,选项名称以两个前导短划线字符 ( --) 为前缀。

  • 在代理配置文件中包含以下行:

    log-level=warning
    笔记

    您可以使用mcm客户端change log-level命令 在运行时更改日志记录级别 。

    在配置文件中使用时,选项的名称不应以任何其他字符为前缀。每个选项必须在单独的行中指定。您可以通过插入前导哈希字符 ( ) 来注释掉所有给定行#,如下所示:

    #log-level=warning

    你也可以用这种方式注释掉一行的一部分;该字符之后的任何文本都将#被忽略,直到当前行的末尾。

下表包含mcmd在启动时读取的代理选项的摘要。有关每个选项的更多详细信息,例如允许的值范围,可以在表后面的列表中找到。

表 3.1 MySQL 集群管理器代理 (mcmd) 选项摘要

选项名称 描述
--agent-uuid 设置代理的UUID;仅在同一主机上运行多个代理进程时才需要
--basedir 在配置中用作相对路径前缀的目录
--bootstrap 在启动时引导默认集群
--daemon 以守护进程模式运行。该选项仅适用于 Linux 和其他类 Unix 平台
--defaults-文件 要使用的配置文件
--事件线程 要使用的事件处理程序线程数
- 帮助 显示应用程序选项
--help-all 显示所有选项(应用程序选项和管理器模块选项)
--help-manager 显示管理器模块选项
- 活着 如果发生崩溃,请尝试重新启动 mcmd。该选项仅适用于 Linux 和其他类 Unix 平台
--log-backtrace-on-crash 发生崩溃时尝试加载调试器
--日志文件 写入日志的文件名
--日志级别 设置 mcmd 日志级别
--log-use-syslog 记录到系统日志
--经理目录 用于管理器数据存储的目录
--管理员密码 mcmd 用户帐户的密码
--管理端口 连接到管理器时客户端使用的端口
--manager-用户名 mcmd 用户帐户的用户名
--最大打开文件 最大打开文件数(ulimit -n)
--pid 文件 指定 PID 文件(如果作为守护进程运行则使用)
--插件目录 查找插件的目录
--插件 以逗号分隔的要加载的插件列表;必须包括“经理”
--详细关机 关闭时始终记录退出代码
- 版本 显示管理器版本
--xcom-端口 指定 XCOM 端口

MySQL Cluster Manager Agent ( mcmd) 选项说明

以下列表包含可用于mcmd的每个启动选项的描述,包括允许值和默认值。标记为 boolean 的选项只需要指定才能生效;您不应该尝试为这些设置值。

  • --agent-uuid=uuid

    命令行格式 --agent-uuid=uuid
    类型 细绳
    默认值 [set internally]

    为此代理设置 UUID。通常这个值是自动设置的,只有在同一台主机上 运行多个mcmd进程时才需要指定。

  • --basedir=dir_name

    命令行格式 --basedir=dir_name
    类型 目录名称
    默认值 .

    包含路径的目录用作配置中相对路径的前缀。

  • --bootstrap

    命令行格式 --bootstrap

    使用默认配置值启动代理程序,创建一个名为 的默认单机集群mycluster,然后启动它。此选项仅在尚未创建集群时才有效。此选项与选项互斥 --defaults-file

    目前,存储在默认集群中的任何数据 mycluster在集群重启之间都不会保留。

  • --daemon

    命令行格式 --daemon
    特定于平台 Linux

    将 mcmd作为守护进程 运行。

  • --defaults-file=filename

    命令行格式 --defaults-file=file_name
    类型 文件名
    默认值 etc/mcmd.ini

    设置从中读取配置选项的文件。默认值为etc/mcmd.ini。有关详细信息,请参阅 第 2.4 节,“MySQL 集群管理器配置文件”

  • --event-threads=#

    命令行格式 --event-threads=#
    类型 数字
    默认值 1
    最小值 1
    最大值 [system dependent]

    要使用的事件处理程序线程数。默认值为 1,这足以满足大多数正常操作。

  • --help,-?

    命令行格式 --help

    mcmd帮助输出分为 应用程序管理器部分。当与 mcmd一起使用时,--help会导致显示 应用程序选项,如下所示:

    $> mcmd --help
    Usage:
      mcmd [OPTION...] - MySQL Cluster Manager
    
    Help Options:
      -?, --help                          Show help options
      --help-all                          Show all help options
      --help-manager                      Show options for the manager-module
    
    Application Options:
      -V, --version                       Show version
      --defaults-file=<file>              configuration file
      --verbose-shutdown                  Always log the exit code when shutting down
      --daemon                            Start in daemon-mode
      --basedir=<absolute path>           Base directory to prepend to relative paths in the config
      --pid-file=<file>                   PID file in case we are started as daemon
      --plugin-dir=<path>                 Path to the plugins
      --plugins=<name>                    Plugins to load
      --log-level=<string>                Log all messages of level ... or higher
      --log-file=<file>                   Log all messages in a file
      --log-use-syslog                    Log all messages to syslog
      --log-backtrace-on-crash            Try to invoke debugger on crash
      --keepalive                         Try to restart mcmd if it crashed
      --max-open-files                    Maximum number of open files (ulimit -n)
      --event-threads                     Number of event-handling threads (default: 1)
  • --help-all

    命令行格式 --help-all

    mcmd帮助输出分为 应用程序管理器部分。与 一起使用时 --help-allmcmd会同时显示应用程序管理器选项,如下所示:

    > mcmd --help-all
    Usage:
      mcmd [OPTION...] - MySQL Cluster Manager
    
    Help Options:
      -?, --help                          Show help options
      --help-all                          Show all help options
      --help-manager                      Show options for the manager-module
    
    manager-module
      --manager-port=<clientport>         Port to manage the cluster (default: 1862)
      --xcom-port=<xcomport>              Xcom port (default: 18620)
      --manager-username=<username>       Username to manage the cluster (default: mcmd)
      --manager-password=<password>       Password for the manager user-account (default: super)
      --bootstrap                         Bootstrap a default cluster on initial startup
      --manager-directory=<directory>     Path to managers config information
    
    Application Options:
      -V, --version                       Show version
      --defaults-file=<file>              configuration file
      --verbose-shutdown                  Always log the exit code when shutting down
      --daemon                            Start in daemon-mode
      --basedir=<absolute path>           Base directory to prepend to relative paths in the config
      --pid-file=<file>                   PID file in case we are started as daemon
      --plugin-dir=<path>                 Path to the plugins
      --plugins=<name>                    Plugins to load
      --log-level=<string>                Log all messages of level ... or higher
      --log-file=<file>                   Log all messages in a file
      --log-use-syslog                    Log all messages to syslog
      --log-backtrace-on-crash            Try to invoke debugger on crash
      --keepalive                         Try to restart mcmd if it crashed
      --max-open-files                    Maximum number of open files (ulimit -n)
      --event-threads                     Number of event-handling threads (default: 1)
  • --help-manager

    命令行格式 --help-manager

    mcmd帮助输出分为 应用程序管理器部分。与 一起使用时 --help-managermcmd 显示管理器选项,如下所示:

    $> mcmd --help-manager
    Usage:
      mcmd [OPTION...] - MySQL Cluster Manager
    
    manager-module
      --manager-port=<clientport>         Port to manage the cluster (default: 1862)
      --xcom-port=<xcomport>              Xcom port (default: 18620)
      --manager-username=<username>       Username to manage the cluster (default: mcmd)
      --manager-password=<password>       Password for the manager user-account (default: super)
      --bootstrap                         Bootstrap a default cluster on initial startup
      --manager-directory=<directory>     Path to managers config information
  • --keepalive

    命令行格式 --keepalive
    特定于平台 Linux

    使用此选项可使 mcmd 在发生崩溃时尝试重新启动。

  • --log-backtrace-on-crash

    命令行格式 --log-backtrace-on-crash

    尝试在发生崩溃时加载调试器。通常不用于生产。

  • --log-file=filename

    命令行格式 --log-file=file
    类型 文件名
    默认值 mcmd.log

    设置要写入日志的文件的名称。默认 mcmd.log在安装目录中。在 Linux 和其他类 Unix 平台上,可以使用相对路径;这与 MySQL Cluster Manager 安装目录相关,与binetc子目录无关。在 Windows 上,您必须使用绝对路径,并且不能包含任何空格;此外,您必须\用正斜杠 ( /) 替换路径中的所有反斜杠 ( ) 字符。

  • --log-level=level

    命令行格式 --log-level=level
    类型 枚举
    默认值 message
    有效值

    critical

    error

    warning

    message

    info

    debug

    设置mcmd日志严重级别。此选项的可能值及其说明在 表 3.2 “MySQL Cluster Manager 代理日志级别”中按严重性降序列出。当该选项设置为某个严重级别时,将记录该级别或更高级别的所有事件。 message是默认日志级别,是生产环境的推荐设置;在更严重的日志级别上运行会产生更少的消息,并且在问题发生时更难追踪问题。

    表 3.2 MySQL Cluster Manager 代理日志级别

    严重程度 描述
    critical 应立即纠正的情况,例如损坏的 MySQL Cluster Manager 数据存储库
    error 应更正的条件,例如配置错误
    warning 执行不会失败但可能需要用户注意的条件
    message 有关站点主要事件和命令执行的消息
    info 为用户提供一些执行细节的信息性消息
    debug 提供对开发人员有用的执行细节的调试消息。如果长时间使用,这会导致很大的日志文件。

    您还可以使用带有mcm客户端的命令mcmd在运行时更改日志记录级别 。虽然该 选项的设置仅应用于其mcmd代理使用该选项的主机(在命令行或配置文件中),但 客户端命令可用于将日志记录级别应用于整个管理站点或特定主机。 change log-level--log-levelchange log-level

  • --log-use-syslog

    命令行格式 --log-use-syslog

    将日志记录输出写入系统日志。

  • --manager-directory=dir_name

    命令行格式 --manager-directory=dir
    类型 目录名称
    默认值 ../mcm_data (relative to the installation directory of MySQL Cluster Manager)

    设置代理存储库的位置,其中包含 MySQL Cluster Manager 数据文件以及 MySQL Cluster 配置和数据文件的集合。该值必须是有效的绝对路径。在 Linux 上,如果目录不存在,则创建它;在 Windows 上,如果目录不存在,则必须创建该目录。此外,在 Windows 上,路径可能不包含任何空格或反斜杠 ( \) 字符;反斜杠必须替换为正斜杠 ( /)。

    默认位置是../mcm_data (相对于MySQL Cluster Manager的安装目录)。如果更改默认值,则应使用 MySQL Cluster Manager 安装目录外部的标准位置,例如 /var/opt/mcm在 Linux 上。

    除了 MySQL Cluster Manager 数据文件之外, manager-directory还包含一个 rep目录,其中保存了 MySQL Cluster Manager 控制下的每个 MySQL Cluster 的 MySQL Cluster 数据文件。manager-directory通常,除了在代理配置文件 ( mcmd.ini) 中指定 的位置外,无需与这些目录进行交互 。

    However, in the event that an agent reaches an inconsistent state, it is possible to delete the contents of the rep directory, in which case the agent attempts to recover its repository from another agent. In such cases, you must also delete the repchksum file and the high_water_mark file from the manager-directory. Otherwise, the agent reads these files and raises errors due to the now-empty rep directory.

  • --manager-password=password

    Command-Line Format --manager-password=password
    Type String
    Default Value super

    Set a password to be used for the manager agent user account. The default is super.

    Using this option together with manager-username causes the creation of a MySQL user account, having the username and password specified using these two options. This account is created with all privileges on the MySQL server including the granting of privileges. In other words, it is created as if you had executed GRANT ALL PRIVILEGES ON *.* ... WITH GRANT OPTION in the mysql client.

  • --manager-port=#

    Command-Line Format --manager-port=port
    Type Numeric
    Default Value 1862

    Specify the port used by MySQL Cluster Manager client connections. Any valid TC/IP port number can be used. Normally, there is no need to change it from the default value (1862).

    Previously, this option could optionally take a host name in addition to the port number, but in MySQL Cluster Manager 1.1.1 and later the host name is no longer accepted.

  • --manager-username=user_name

    Command-Line Format --manager-username=name
    Type String
    Default Value mcmd

    Set a user name for the MySQL account to be used by the MySQL Cluster Manager agent. The default is mcmd.

    When used together with manager-password, this option also causes the creation of a new MySQL user account, having the user name and password specified using these two options. This account is created with all privileges on the MySQL server including the granting of privileges. In other words, it is created as if you had executed GRANT ALL PRIVILEGES ON *.* ... WITH GRANT OPTION in the mysql client. The existing MySQL root account is not altered in such cases, and the default test database is preserved.

  • --max-open-files=#

    Command-Line Format --max-open-files=#
    Type Numeric
    Default Value 1
    Minimum Value 1
    Maximum Value [system dependent]

    Set the maximum number of open files (as with ulimit -n).

  • --pid-file=file

    Command-Line Format --pid-file=file_name
    Type File name
    Default Value mcmd.pid

    Set the name and path to a process ID (.pid) file. Not normally used or needed. This option is not supported on Windows systems.

  • --plugin-dir

    Command-Line Format --plugin-dir=dir_name
    Type Directory name
    Default Value lib/mcmd

    Set the directory to search for plugins. The default is lib/mcmd, in the MySQL Cluster Manager installation directory; normally there is no need to change this.

  • --plugins

    Command-Line Format --plugins=list
    Type Directory name
    Default Value manager

    Specify a list of plugins to be loaded on startup. To enable MySQL Cluster Manager, this list must include manager (the default value). Please be aware that we currently do not test MySQL Cluster Manager with any values for plugins other than manager. Therefore, we recommend using the default value in a production setting.

  • --verbose-shutdown

    Command-Line Format --verbose-shutdown

    mcmd无论出于何种原因,无论何时关闭,都 强制记录退出代码。

  • --version,-V

    命令行格式 --version

    显示版本信息并退出。输出可能因 MySQL Cluster Manager 软件版本、操作平台和系统上使用的库版本而异,但应该与此处显示的内容非常相似,输出的第一行包含 MySQL Cluster Manager 版本号(强调文本) :

    $> mcmd -V
    MySQL Cluster Manager 1.3.6 (64bit)
      chassis: mysql-proxy 0.8.3
      glib2: 2.16.6
      libevent: 1.4.13-stable
    -- modules
      manager: 1.3.6
  • --xcom-port

    命令行格式 --xcom-port=#
    类型 数字
    默认值 18620
    最小值 1
    最大值 65535

    允许您指定 XCOM 端口。默认为 18620。