核心功能与用法
本技能提供 PlanetScale CLI (pscale) 的全面命令参考与自动化工作流,专为终端数据库管理设计。核心能力覆盖:
1. 分支驱动开发 (Branch-based Workflow)
- 创建开发分支:
pscale branch create <db> <branch> --from main - 查看模式差异:
pscale branch diff对比分支与主库 - 分支晋升/删除:支持安全晋升或清理临时分支
2. 部署请求机制 (Deploy Requests)
- 创建审查工作流:
pscale deploy-request create <db> <branch> - 生产变更审批:替代直接
promote的危险操作 - 自动化部署:
--auto-approve支持 CI/CD 无人值守
3. 非交互式 SQL 执行
- JSON 格式输出:
pscale sql <db> <branch> --format json --query "..." - 临时凭证管理:适合脚本和 Agent 自动化场景
4. CI/CD 集成方案
- Service Token 认证:
PLANETSCALE_SERVICE_TOKEN_ID+PLANETSCALE_SERVICE_TOKEN - 对比本地密码:Token 可轮转、更安全,专为流水线设计
显著优势
- Git 式数据库工作流:分支、Diff、PR 式部署请求,彻底改变数据库变更管理
- 安全默认:强制部署请求审查,避免直接生产修改
- 自动化友好:JSON 输出 + Service Token,完美适配 GitHub Actions/GitLab CI
- 脚本库:内置
create-branch-for-mr.sh、deploy-schema-change.sh等,节省 90% 上下文 Token
局限性与风险
- 依赖 pscale 二进制:需单独安装 CLI,非纯脚本方案
- macOS 兼容性:部分脚本使用
grep -oP(PCRE),BSD 系统需调整 - 凭证管理:Service Token 需妥善保管,泄露风险需组织级管控
- 非实时同步:分支操作有延迟,高频自动化需考虑最终一致性
适合人群
- 采用 PlanetScale 的 DevOps/平台工程师
- 需要数据库分支策略的团队(类似 Git 工作流)
- 构建 CI/CD 流水线、追求 schema 变更自动化的开发者
常规风险提示
branch promote直接晋升生产风险高,建议始终使用deploy-request- 生产部署务必开启审查流程,避免
--auto-approve滥用 - Service Token 权限按组织分配,最小权限原则配置