核心用法
PlanetScale CLI (pscale) 是 PlanetScale 数据库服务的官方命令行工具,将数据库分支管理、部署请求和模式迁移带到终端环境。该技能提供 10+ 核心命令的完整参考,包括 auth(认证管理)、branch(分支操作)、deploy-request(部署请求)、database(数据库管理)、backup(备份)、password(连接密码)、service-token(CI/CD 令牌)等。
核心工作流包括:分支开发模式(创建 feature 分支 → 修改 schema → diff 检查 → 创建部署请求)和 CI/CD 集成模式(创建服务令牌 → 配置环境变量 → 自动部署)。技能内置决策树帮助用户选择分支 vs 部署请求、服务令牌 vs 密码等最佳实践。
显著优点
- Git 式工作流:数据库分支与代码分支同构,支持并行开发
- 零停机部署:通过部署请求实现安全的 schema 变更上线
- 自动化友好:服务令牌 + 环境变量支持 GitHub Actions、GitLab CI 等主流平台
- 命令完备:覆盖从认证到备份的全生命周期管理
- 脚本集成:提供
create-branch-for-mr.sh、deploy-schema-change.sh等自动化脚本,节省 ~90% token
潜在局限
- 认证依赖:需执行
pscale auth login或配置服务令牌,本地 token 存储于~config/planetscale/ - 平台锁定:专为 PlanetScale 设计,无法迁移至其他数据库服务商
- 脚本安全:自动化使用
shell eval,分支/数据库名必须来自可信源,禁止直接嵌入用户输入 - grep 兼容性:部分脚本依赖 PCRE 正则(
grep -oP),BSD/macOS 系统可能需要调整
适合人群
- 使用 PlanetScale MySQL 平台的开发团队
- 追求数据库变更 GitOps 工作流的 DevOps 工程师
- 需要 CI/CD 自动化数据库部署的 SRE/平台工程师
- 熟悉终端操作、偏好命令行而非 Web UI 的数据库管理员
常规风险
- 凭证泄露风险:
PLANETSCALE_SERVICE_TOKEN和PLANETSCALE_SERVICE_TOKEN_ID需妥善保管,避免提交至版本控制 - 直接提升风险:
pscale branch promote可绕过审核直接修改生产 schema,建议始终使用部署请求工作流 - 分支命名注入:自动化脚本若未过滤用户输入,可能导致命令注入
- Token 过期:本地认证 token 有过期时间,长期运行的自动化任务应优先使用服务令牌