韶关公司做网站,app开发费用标准,品牌策划案范本,行业网站名称数据库 schema 迁移指修改管理数据库结构的变更#xff0c;包括为数据库添加视图或表、更改字段类型或定义新约束。Bytebase 提供了可视化 GUI 方便迁移数据库 schema#xff0c;本教程将展示如何使用 Bytebase 为 schema 迁移配上 SQL 审核#xff0c;自定义审批流#xf…数据库 schema 迁移指修改管理数据库结构的变更包括为数据库添加视图或表、更改字段类型或定义新约束。Bytebase 提供了可视化 GUI 方便迁移数据库 schema本教程将展示如何使用 Bytebase 为 schema 迁移配上 SQL 审核自定义审批流发布策略指定发布时间等功能。 功能
Bytebase 提供社区版、专业版和企业版。更进阶的版本解锁了更多可以搭配迁移 schema 模式的功能。
入门 - 自动 SQL 审核社区版、专业版和企业版进阶 - 发布策略专业版和企业版高阶 - 自定义审批流企业版
准备工作
运行 Docker并启动 Bytebase 的 Docker 容器
docker run --init \--name bytebase \--restart always \--publish 5678:8080 \--health-cmd curl --fail http://localhost:8080/healthz || exit 1 \--health-interval 5m \--health-timeout 10s \--volume ~/.bytebase/data:/var/opt/bytebase \bytebase/bytebase:2.11.1 \--data /var/opt/bytebase \--port 8080通过 Docker 启动 Bytebase 后使用 localhost:5678 访问主页请先注册一个账户此账户将自动被授予工作空间的管理员角色。
入门 - 自动 SQL 审核 自动发布社区版
在环境的 Test 和 Prod 页面中可以分别看到
发布策略为「自动发布」。除非出现警告或错误否则工单成功创建后将自动发布。生产环境上启用了 SQL 审核并使用示例策略。 点击 Prod 环境下的「SQL Review Sample Policy」 可进入 SQL 审核模板此模板中开启了列的「强制非空约束」策略我们尝试违反看看。 前往 Sample Project我们为 Prod 环境的 employee 表添加空的 Email 列。
ALTER TABLE employee.employee
ADD Email varchar(255);工单创建后SQL 审核将自动运行并出现了「强制非空约束」警告。 给 SQL 加上 NOT NULL 约束后即可通过 SQL 审核工单将自动发布。
ALTER TABLE employee.employee
ADD Email varchar(255) NOT NULL;发布完成后可以在数据库 employee 的变更历史中看到变更记录和前后 schema 差异。 进阶指定发布时间 手动发布专业版
使用专业版你会获得两个额外的功能出于 demo 需要这里我们使用免费的 14 天的企业试用版
特定角色发布
可以指定多个预定义的角色来手动发布变更。在环境的 Prod 页面中选择特定手工发布勾选允许发布变更的角色点击更新。 指定发布时间
可以指定特定时间来发布变更。前往 Sample Project我们为 Prod 环境的 employee 表添加 Country 列。
ALTER TABLE employee.employee
ADD Country varchar(255) NOT NULL;可在工单页面指定发布时间。 高阶自定义审批流 手动发布企业版
如果你希望审核流程更加定制化比如基于 SQL 语句类型变更影响的行数等可以在「自定义审批」中配置友情提醒请先在「实例」页面为需要使用自定义审批的实例分配证书。否则自定义审批将无法启用。
前往设置⚙️ 自定义审批。DDL 高风险的审批流设置为 Project Owner - DBA。 前往设置⚙️ 风险中心。添加一条「生产环境的 DDL 语句默认为高风险」的规则。 前往设置⚙️ 成员添加一个 DBA 角色因为稍后需要 DBA 批准发布。 进入环境 Prod 现在你可以解锁第三个选项了即由自定义审批流的最后一个审批人手动发布策略。选择该选项。 前往 Sample Project我们给 Test 和 Prod 数据库分别加一列 City。
ALTER TABLE employee.employee
ADD City varchar(255) NOT NULL;创建工单审批流将自动匹配此为第一步设置的 Project Owner - DBA 审批批准后将会自动发布。 总结
你现在已经了解了如何使用 Bytebase 进行数据库 schema 迁移。Bytebase 还提供更多功能欢迎来试试
GitOps观察 Git 代码推送事件并触发 schema 迁移批量变更在单个工作流中更改多个数据库分支使用类似于 Git 的分支协作进行 schema 变更变更列表按顺序编排和发布变更或将其导出以离线执行 更多资讯请关注 Bytebase 公号Bytebase