跳到主要内容
版本:Nightly

防止元数据变更

要防止元数据变更,你可以暂停 procedure manager。此机制拒绝所有新 procedure(即新的元数据变更操作),同时允许现有 procedure 继续运行。 一旦启用,Metasrv 将拒绝以下 procedure 操作:

DDL 操作:

  • 创建表
  • 删除表
  • 修改表
  • 创建数据库
  • 删除数据库
  • 创建视图
  • 创建流
  • 删除流

Region 调度操作:

  • Region Migration
  • Region Failover (if enabled)
  • Region 自动负载均衡 (if enabled)

你在启用暂停元数据变更功能后尝试执行这些操作时,可能会看到错误消息。对于 Region 调度操作,你可以启用 集群维护模式 来临时暂时它们。

管理 procedure manager

procedure manager 可以通过 Metasrv 的 HTTP 接口暂停和恢复:http://{METASRV}:{RPC_PORT}/admin/procedure-manager/pausehttp://{METASRV}:{RPC_PORT}/admin/procedure-manager/resume。请注意,此接口监听 Metasrv 的 RPC_PORT,默认为 3002

暂停 procedure manager

通过向 /admin/procedure-manager/pause 端点发送 POST 请求来暂停 procedure manager。

curl -X POST 'http://localhost:3002/admin/procedure-manager/pause'

预期输出:

{"status":"paused"}

恢复 procedure manager

通过向 /admin/procedure-manager/resume 端点发送 POST 请求来恢复 procedure manager。

curl -X POST 'http://localhost:3002/admin/procedure-manager/resume'

预期输出:

{"status":"running"}

检查 procedure manager 状态

通过向 /admin/procedure-manager/status 端点发送 GET 请求来检查 procedure manager 状态。

curl -X GET 'http://localhost:3002/admin/procedure-manager/status'

预期输出:

{"status":"running"}