30.3.1脚本停电

还可以从命令行或脚本管理停电。本节中列出的示例都使用旋度.您可以从命令行运行命令,也可以将命令添加到文本文件并将其保存为* . sh*。bat这取决于你的平台。

请注意

在Unix系统上,使用chmod + x blackout.sh命令使文件可执行。

描述了以下停电类型:

  • 服务器断电:描述如何在MySQL实例上应用或取消关闭。

  • 集团停电:描述如何对MySQL Enterprise Monitor组应用或删除中断。

  • 代理停电:描述如何在MySQL Enterprise Monitor Agent上应用或删除中断,以及递归地在代理所监视的所有MySQL实例上应用或删除中断。

  • 停电状态:检查代理、组、MySQL实例的停电状态。

请注意

重新启动MySQL企业服务管理器或MySQL企业监控代理不会删除应用的中断。

服务器断电

停电命令用来关闭单个MySQL实例。

要关闭一个MySQL实例,你必须提供以下信息:

  • ——用户:执行命令的“Service Manager”用户的用户名和密码。确保该用户具有执行停电的正确权限。

  • 服务管理器的rest API的URL。例如:“https://servicemanager: 18443 /休息”

  • 命令=停电:屏蔽命令。

  • 以下其中之一:

    • server_name =ServerName:需要关闭的服务器名称。

    • server_uuid =AlphanumericString: MySQL实例关闭的UUID。

禁用服务器server_name,使用以下命令:

curl -G -k——user myadmin:mypassword "https://servicemanager:18443/rest"——data-urlencode "command=blackout"——data-urlencode "server_name=servername:3306"——data-urlencode "blackout_state=true"

禁用服务器server_uuid,使用以下命令:

curl -G -k——user myadmin:mypassword "https://servicemanager:18443/rest"——data-urlencode "command=blackout"——data-urlencode "server_uuid=62e74f29-526a-11ba- 77kb -0242xy112504"——data-urlencode "blackout_state=true"

要删除中断,请运行相同的命令“blackout_state = false”.例如:

curl -G -k——user myadmin:mypassword "https://servicemanager:18443/rest"——data-urlencode "command=blackout"——data-urlencode "server_uuid=62e74f29-526a-11ba- 77kb -0242xy112504"——data-urlencode "blackout_state=false"

也可以关闭由特定Agent监视的所有MySQL实例。有关更多信息,请参见代理停电

集团停电

停电命令用来关闭MySQL实例组。有关MySQL企业服务管理器组的更多信息,请参见17章,管理实例组

要关闭一组MySQL实例,你必须提供以下功能:

  • ——用户:执行命令的“Service Manager”用户的用户名和密码。确保该用户具有执行停电的正确权限。

  • 服务管理器的rest API的URL。例如:“https://servicemanager: 18443 /休息”

  • 命令=停电:屏蔽命令。

  • group_name =GroupName:需要屏蔽的群组名称。

下面的命令使组中的所有MySQL实例失效组1

curl -G -k——user myadmin:mypassword "https://servicemanager:18443/rest"——data-urlencode "command=blackout"——data-urlencode "group_name=Group 1"——data-urlencode "blackout_state=true"

要删除中断,请运行相同的命令“blackout_state = false”

curl -G -k——user myadmin:mypassword "https://servicemanager:18443/rest"——data-urlencode "command=blackout"——data-urlencode "group_name=Group 1"——data-urlencode "blackout_state=false"

代理停电

命令停电允许您关闭一个代理,或一个代理及其当前正在监视的所有MySQL实例。

要关闭代理,您必须提供以下信息:

  • ——用户:执行命令的“Service Manager”用户的用户名和密码。确保该用户具有执行停电的正确权限。

  • 服务管理器的rest API的URL。例如:“https://servicemanager: 18443 /休息”

  • 命令=停电:屏蔽命令。

  • id =alphanumericString:需要屏蔽的座席id。

关闭一个代理,运行以下命令:

curl -G -k——user myadmin:mypassword "https://servicemanager:18443/rest"——data-urlencode "command=blackout"——data-urlencode "agent_id=1e365f83-b703-4588-9472-877c90a2c49f"——data-urlencode "blackout_state=true"

要关闭一个Agent和它监视的所有MySQL实例,运行以下命令:

curl -G -k——user myadmin:mypassword "https://servicemanager:18443/rest"——data-urlencode "command=blackout"——data-urlencode "agent_id=1e365f83-b703-4588-9472-877c90a2c49f"——data-urlencode "blackout_state=true"——data-urlencode "recursive=true"

停电状态

命令blackout_status允许您检查代理或MySQL实例当前是否处于关闭状态。

要检查停电状态,必须提供以下信息:

  • ——用户:执行命令的“Service Manager”用户的用户名和密码。确保该用户具有执行停电的正确权限。

  • 服务管理器的rest API的URL。例如:“https://servicemanager: 18443 /休息”

  • 命令= blackout_status:停电状态命令。

  • id =alphanumericString:正在检查的Agent或MySQL实例的id。

  • asset_type:下列其中一项:

    • 代理。代理:查看Agent的停电状态。

    • mysql。MysqlServer:查询MySQL实例的关闭状态。

检查座席的中断状态:

curl -G -k——user myadmin:mypassword "https://servicemanager:18443/rest"——data-urlencode "command=blackout_status"——data-urlencode "id=1e365f83-b703-4588-9472-877c90a2c49f"——data-urlencode "asset_type=agent。代理”

检查MySQL实例的关闭状态:

curl -G -k——user myadmin:mypassword "https://servicemanager:18443/rest"——data-urlencode "command=blackout_status"——data-urlencode "id=750cead2- 44d1 -11ea-b3e7-dfdaa5ad712e"——data-urlencode "asset_type=mysql。MysqlServer”