在本教程中,你将通过使用 Bytebase 默认提供的示例数据库,快速且轻松地学会如何使用这款产品。
在 Docker 中启动
- 本地启动 Docker。
- 在终端中执行下面的命令: (请将 2.13.1 替换成最新 Bytebase 版本)
docker run --init \
--name bytebase \
--publish 8080:8080 \
--volume ~/.bytebase/data:/var/opt/bytebase \
bytebase/bytebase:2.13.1
- 在本地浏览器的 8080 端口打开 Bytebase,填写信息并点击注册管理员。你将被重定向到工作空间。
- 按照底部的新手任务点击浏览,或者现在就按x关闭它。你可以点击右上角的AD头像,然后在下拉菜单中点击新手任务来重新打开它。
一个工单包含两个阶段
- 点击左侧边栏的我的工单,然后选择默认创建的 SAM-101。
- 这个工单正在等待执行。它包含两个阶段的流程:
- Test 阶段:用于 Test Sample 实例的 hr_test 数据库
- Prod 阶段:用于 Prod Sample 实例的 hr_prod 数据库
默认情况下,处于活跃状态的是 Test 阶段。
- 切换到 Prod 阶段,你会发现两个阶段使用了相同的 SQL 语句,但目标数据库不同。在 Prod 阶段的 SQL 审核中,你可能还会看到一个警告标志。这是因为在创建工单时,Bytebase 会自动进行任务检查,而 SQL 审核是其中的一项。
- 点击警告标志可以查看具体详情。如果你好奇为什么只有 Prod 阶段出现警告标志,这是因为 SQL 审核默认只针对 Prod 环境进行配置。你可以点击右上角的设置(齿轮图标),再选择安全&策略 > SQL 审核策略来了解更多。
在 Test 阶段发布
- 回到 Test 阶段,点击发布。在确认对话框中再次点击发布。
- SQL 应用完成后,测试阶段会显示一个绿勾标记。点击查看变更,你可以看到前后的差异。
在 Prod 阶段发布
针对 SQL 审核的结果,在 Prod 阶段有两种发布方式。
- 如果你对 SQL 很有信心,可以直接点击发布。勾选仍要发布,然后在确认对话框中再次点击发布。
- 另一种方式是编辑 SQL。点击 SQL 上方的编辑,并添加 NOT NULL 子句。修改后的 SQL 将如下所示:
ALTER TABLE employee ADD COLUMN IF NOT EXISTS email TEXT NOT NULL DEFAULT '';
点击保存,系统将重新执行检查。这次 SQL 审核将通过,发布也会自动进行。工单状态也会变为完成。
你可能好奇为什么会自动发布,这是因为在社区版中,如果 SQL 审核通过,则发布策略是自动执行。你可以在环境中查看。
下一步
现在你已经成功完成了在 Bytebase 中的第一次 schema 变更,这是其系统核心工作流,进一步学习可以阅读 用 Bytebase 做数据库 schema 变更 。
💡 更多资讯,请关注 Bytebase 公号:Bytebase