PlanetScale CLI 工具 #
本章将全面介绍 PlanetScale CLI (pscale) 命令行工具,帮助你高效管理数据库。
安装与配置 #
安装 CLI #
bash
# macOS (Homebrew)
brew install planetscale/tap/pscale
# macOS (升级)
brew upgrade planetscale/tap/pscale
# Windows (Scoop)
scoop bucket add planetscale https://github.com/planetscale/scoop-bucket.git
scoop install pscale
# Windows (Chocolatey)
choco install pscale
# Linux
curl -fsSL https://raw.githubusercontent.com/planetscale/cli/main/install.sh | bash
# 从源码安装
go install github.com/planetscale/cli/cmd/pscale@latest
验证安装 #
bash
pscale version
# pscale version 0.200.0 (build date: 2024-01-15T12:00:00Z)
pscale --help
# pscale is a command-line interface for PlanetScale.
#
# Usage:
# pscale [command]
#
# Available Commands:
# auth Login and logout via the PlanetScale API
# branch Create, delete, and manage branches
# database Create, delete, and manage databases
# ...
登录认证 #
bash
# 交互式登录
pscale auth login
# 输出示例
# Please visit the following URL in your browser:
# https://auth.planetscale.com/oauth/device?code=XXXX-XXXX
#
# Waiting for verification...
# Successfully logged in!
# 查看登录状态
pscale auth whoami
# 登出
pscale auth logout
服务令牌认证 #
bash
# 使用服务令牌登录
pscale auth login --service-token pscale_tok_xxx
# 或设置环境变量
export PLANETSCALE_SERVICE_TOKEN=pscale_tok_xxx
数据库命令 #
创建数据库 #
bash
# 基本创建
pscale database create my-database
# 指定区域
pscale database create my-database --region us-east-1
# 指定组织
pscale database create my-database --org my-org
# 查看创建状态
pscale database show my-database
查看数据库 #
bash
# 列出所有数据库
pscale database list
# 列出特定组织的数据库
pscale database list --org my-org
# 查看数据库详情
pscale database show my-database
# 输出示例
# NAME REGION STATE STORAGE BRANCHES
# my-database us-east-1 ready 1.2 GB 3
删除数据库 #
bash
# 删除数据库(需要确认)
pscale database delete my-database
# 强制删除(跳过确认)
pscale database delete my-database --force
分支命令 #
创建分支 #
bash
# 基本创建
pscale branch create my-database develop
# 从指定分支创建
pscale branch create my-database feature-x --from main
# 指定区域
pscale branch create my-database develop --region us-east-1
# 查看创建状态
pscale branch show my-database develop
查看分支 #
bash
# 列出所有分支
pscale branch list my-database
# 输出示例
# NAME PARENT READY CREATED AT
# main - true 2024-01-10 10:00:00
# develop main true 2024-01-15 12:00:00
# feature-x main true 2024-01-16 09:00:00
# 查看分支详情
pscale branch show my-database develop
# 查看分支 Schema
pscale branch schema my-database develop
# 对比两个分支
pscale branch diff my-database develop main
删除分支 #
bash
# 删除分支
pscale branch delete my-database develop
# 强制删除
pscale branch delete my-database develop --force
连接命令 #
Shell 连接 #
bash
# 连接到数据库
pscale shell my-database main
# 连接到特定分支
pscale shell my-database develop
# 执行单条命令
pscale shell my-database main -e "SELECT * FROM users LIMIT 10"
# 从文件执行
pscale shell my-database main < schema.sql
代理连接 #
bash
# 启动代理
pscale connect my-database main
# 输出示例
# Ready! Connect to my-database at 127.0.0.1:3306
# 指定端口
pscale connect my-database main --port 3307
# 指定地址
pscale connect my-database main --host 127.0.0.1 --port 3306
密码命令 #
创建密码 #
bash
# 基本创建
pscale password create my-database main my-app
# 指定角色
pscale password create my-database main my-app --role writer
# 创建只读密码
pscale password create my-database main analytics --role reader
# 设置过期时间
pscale password create my-database main temp --ttl 24h
# 输出示例
# Password created successfully!
# Connection string: mysql://abc123:pscale_pw_xxx@aws.connect.psdb.cloud/my-database?sslaccept=strict
管理密码 #
bash
# 列出密码
pscale password list my-database main
# 输出示例
# NAME ROLE CREATED AT
# my-app writer 2024-01-15 12:00:00
# analytics reader 2024-01-16 09:00:00
# 删除密码
pscale password delete my-database main my-app
Deploy Request 命令 #
创建 Deploy Request #
bash
# 创建 DR
pscale deploy-request create my-database develop
# 输出示例
# Deploy request #3 created successfully.
# View at: https://app.planetscale.com/my-org/my-database/deploy-requests/3
查看 Deploy Request #
bash
# 列出所有 DR
pscale deploy-request list my-database
# 查看 DR 详情
pscale deploy-request show my-database 3
# 查看 Schema 差异
pscale deploy-request diff my-database 3
部署和关闭 #
bash
# 部署 DR
pscale deploy-request deploy my-database 3
# 关闭 DR
pscale deploy-request close my-database 3
# 添加评论
pscale deploy-request review my-database 3 --comment "Looks good!"
组织命令 #
管理组织 #
bash
# 列出组织
pscale org list
# 查看组织详情
pscale org show my-org
# 列出成员
pscale org members list my-org
# 邀请成员
pscale org members add my-org bob@example.com --role developer
# 修改角色
pscale org members update my-org bob@example.com --role admin
# 移除成员
pscale org members remove my-org bob@example.com
数据操作命令 #
数据导出 #
bash
# 导出数据库
pscale database dump my-database main --output ./backup
# 导出特定表
pscale shell my-database main -e "SELECT * FROM users" > users.csv
数据导入 #
bash
# 导入 SQL 文件
pscale shell my-database main < data.sql
# 从备份恢复
pscale database restore-dump my-database main --dir ./backup
高级用法 #
输出格式 #
bash
# JSON 格式
pscale database list --format json
# 表格格式(默认)
pscale database list --format table
# 仅显示名称
pscale database list --format name
调试模式 #
bash
# 启用详细输出
pscale database list --debug
# 启用 API 调用日志
pscale database list --api-log
配置文件 #
bash
# 查看配置
pscale config list
# 设置默认组织
pscale config set organization my-org
# 设置默认区域
pscale config set region us-east-1
命令速查表 #
text
┌─────────────────────────────────────────────────────────────┐
│ 常用命令速查 │
├─────────────────────────────────────────────────────────────┤
│ │
│ 认证: │
│ pscale auth login # 登录 │
│ pscale auth logout # 登出 │
│ pscale auth whoami # 查看当前用户 │
│ │
│ 数据库: │
│ pscale database create <name> # 创建数据库 │
│ pscale database list # 列出数据库 │
│ pscale database show <name> # 查看详情 │
│ pscale database delete <name> # 删除数据库 │
│ │
│ 分支: │
│ pscale branch create <db> <branch> # 创建分支 │
│ pscale branch list <db> # 列出分支 │
│ pscale branch delete <db> <branch> # 删除分支 │
│ │
│ 连接: │
│ pscale shell <db> <branch> # Shell 连接 │
│ pscale connect <db> <branch> # 代理连接 │
│ │
│ 密码: │
│ pscale password create <db> <branch> <name> # 创建密码 │
│ pscale password list <db> <branch> # 列出密码 │
│ pscale password delete <db> <branch> <name> # 删除密码 │
│ │
│ Deploy Request: │
│ pscale deploy-request create <db> <branch> # 创建 DR │
│ pscale deploy-request list <db> # 列出 DR │
│ pscale deploy-request deploy <db> <number> # 部署 DR │
│ │
└─────────────────────────────────────────────────────────────┘
下一步 #
现在你已经掌握了 CLI 工具,接下来学习 Node.js 集成,开始实战开发!
最后更新:2026-03-29