Files
2meet-data-optimizer/DEPLOY.md
wpdev d36bb954d1 chore: initial snapshot of 2meet-data-optimizer v0.1.0
Baseline before backporting wp-data-optimizer v3.0.1-v3.4.6.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TbG1keQQ7XBa7qMQY16KCY
2026-07-31 05:06:36 +08:00

2.4 KiB

部署流程

Prerequisites

  • WordPress ≥ 6.0
  • PHP ≥ 8.1
  • MySQL ≥ 5.7 / MariaDB ≥ 10.3
  • 站台目前已停用既有 wp-data-optimizer(若有)

⚠️ 兩個外掛互斥:本外掛啟動時偵測到 WPDO_Core 已存在會發 admin notice 要求停用舊外掛。


全新站台部署

# 上傳 + 啟用
wp plugin install /path/to/2meet-data-optimizer-v0.1.0.zip --activate

# 驗證
wp tmdo doctor
wp tmdo status

# 第一次健診
wp tmdo benchmark --samples=100

完成。系統表會自動 dbDelta 建立,無需手動操作。


從 wp-data-optimizer v2.16.0 接管

兩種策略:

策略 A — 退場式接管(推薦)

# 1. 停用舊外掛
wp plugin deactivate wp-data-optimizer

# 2. 上傳新外掛 + 啟用
wp plugin install /path/to/2meet-data-optimizer-v0.1.0.zip --activate

# 3. 新外掛偵測既有 wp_wpdo_* 表,自動 dbDelta 對齊(無資料變動)
wp tmdo doctor

# 4. 驗證 4-entity migration mode 仍存在
wp tmdo user-mode-status
wp tmdo post-mode-status

# 5. 移除舊外掛資料夾(保留 git 紀錄)
wp plugin delete wp-data-optimizer

策略 B — 並行驗證(謹慎環境)

# 1. 新外掛安裝但暫不啟用
wp plugin install /path/to/2meet-data-optimizer-v0.1.0.zip

# 2. 在 staging 跑 verify
wp --path=/srv/staging tmdo doctor
wp --path=/srv/staging tmdo benchmark --samples=200

# 3. staging 過 24h watch 後切回 production,按策略 A 接管

安裝整合 AddOn

整合 AddOn 採 Requires Plugins: 強制相依,需先啟用本核心:

# 例:安裝 HivePress AddOn
wp plugin install /path/to/2meet-data-optimizer-hivepress-addon-v0.1.0.zip --activate

# 驗證 HP 13 adapter 已 bound
wp tmdo hivepress detect

Rollback

# 1. 停用新外掛
wp plugin deactivate 2meet-data-optimizer

# 2. 重啟舊外掛(資料完全相容)
wp plugin activate wp-data-optimizer

# 3. 驗證
wp wpdo doctor

每個 AddOn 卸載時僅清自己的 schema(系統表保留給 core / 其他 AddOn)。


監控

# 每日健康檢查 cron
wp tmdo health-cron status
wp tmdo health-cron run

# 衝突偵測
wp tmdo conflict-scan

# Hook Bus 健診
wp tmdo bridge-status

production 站台建議啟用通知:

wp option update wpdo_slack_webhook 'https://hooks.slack.com/services/...'
wp option update wpdo_alert_threshold 'warning'