Bytebase 3.14.0 - CI 审核 与 CD 部署阶段解耦
🔔 重要变更
重新设计数据库 CI/CD 工作流,以符合 GitHub、GitLab 等行业实践,明确区分 CI(审核)与 CD(发布)阶段。
工单页面现在可以直接展示变更计划的变更内容,避免在不同页面之间切换。
发布任务现在作为一个独立的发布页面存在,清晰地区分审核与实际执行。
发布任务界面支持基于发布包的任务展示方式,在任务中显示每个文件的执行状态、命令执行时长以及发布包相关信息。
发布任务的创建方式发生变化:此前发布任务会在工单创建时一并生成,现在发布任务的创建与工单解耦,支持两种创建模式:一种是在工单已完成审批且 SQL 审核通过时自动创建;另一种是用户手动创建,常见场景为工单已审批但 SQL 审核未通过,此时界面会提供对应的操作入口。 由于引入了手动创建模式,项目发布者可能需要在执行前手动创建发布任务,因此为项目发布者角色新增了 bb.rollouts.create 权限。所有用于发起发布任务的自定义角色建议同时授予该权限。该权限仅控制发布任务的创建,不会绕过审批要求,也不会影响任务执行权限 更新项目 Webhook 事件定义。请查阅文档中当前支持的事件列表,以确保已有的 Webhook 监听逻辑保持兼容。https://docs.bytebase.com/change-database/webhook#supported-events
改进权限校验与访问控制逻辑。
当用户缺少权限时,不再隐藏相关界面元素,而是显示无权限提示。同时,允许拥有 bb.issues.create 权限的用户直接在界面中申请项目角色。项目所有者现在可以在项目设置中关闭自助角色申请流程。
引入更细粒度的权限管理能力,新增多项策略权限与设置权限,并相应调整默认权限分配方式:工作空间管理员与 DBA 获得所有新增权限,项目所有者获得新增的策略权限,工作空间成员仅获得环境与工作空间配置的读取权限。
同时进一步收紧工作空间成员的权限范围,移除了其对部分设置与项目列表的访问能力。如不希望工作空间成员访问用户列表,可通过自定义角色移除相关用户权限。
重新设计数据库变更历史与版本页面。
移除 Schema 漂移检测功能,同时删除相关的数据结构与接口字段,包括从数据库接口中移除 drifted 字段、从数据库列表接口中移除 drifted 过滤条件,以及从数据库变更历史存储结构中移除 dump_version 字段。
更新核心 API,包括 CreateSheet、CreatePlan、CreateRollout 和 CreateRelease,请以最新 API 文档中的请求与响应定义为准。
从项目设置中移除 auto_resolve_issue 和 allow_modify_statement 配置项。
从实例设置中移除最大连接数配置项,统一改用项目设置中的每个发布的并行任务数作为并发控制方式。
在自定义审批的 CEL 表达式中,将 TRUNCATE_TABLE 与 TRUNCATE 合并为统一的 TRUNCATE 语句类型。
更新 Terraform Provider。移除 project 资源中的 allow_modify_statement 与 auto_resolve_issue 配置项,移除 workspace_profile 资源中的 auto_resolve_issue 配置项,移除 instance 资源中的 maximum_connections 配置项。项目 Webhook 的 notification_types 调整为 ISSUE_CREATED、ISSUE_APPROVAL_REQUESTED、ISSUE_SENT_BACK、PIPELINE_FAILED 和 PIPELINE_COMPLETED。同时,project 资源新增支持配置 allow_request_role、data_classification_config_id、enforce_sql_review、force_issue_labels、issue_labels、labels、require_issue_approval 以及 require_plan_check_no_error。
🚀 新功能
新增刷新令牌支持,此前系统仅支持网页端访问令牌。
支持分别配置访问令牌有效期与刷新令牌有效期,替代原有的登录频率设置。
在审批规则中,当满足配置条件时,支持设置无需审批。
支持 GitLab CI 的工作负载标识。https://docs.bytebase.com/administration/user-groups/workload-identity/gitlab-ci
🎄 改进
支持对项目、实例和数据库列表进行排序。
脱敏豁免支持 CEL 表达式,并新增数据库选择器。
PostgreSQL 在库表同步中支持通过 ALTER TYPE … ADD VALUE 方式为 ENUM 类型新增取值。
MySQL 优化生成的 DDL 语句格式,使其更易阅读。
🐞 Bug 修复
修复 AI 设置缓存被错误修改的问题。
PostgreSQL 修复库表差异对比过程中循环外键依赖的处理问题。
TiDB 修复在使用 BATCH 语法时,DML Dry Run 处理不正确的问题。
PostgreSQL 修复在 SELECT 语句中使用标识符作为字段别名时的异常行为。
Oracle 修复 SQL 审核错误地将 GRANT 与 REVOKE 判定为保留关键字的问题。
新安装 https://docs.bytebase.com/get-started/self-host
升级 https://docs.bytebase.com/get-started/upgrade
2025 年 Postgres MCP Server 现状观察
从985生存指南到996续命手册,GitHub中文世界奇妙物语
又双叒叕是 us-east-1,为什么 AWS 出故障的总是它