数据库 变更和版本控制管理工具 --Bytebase 安装部署

本文主要是介绍数据库 变更和版本控制管理工具 --Bytebase 安装部署,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

数据库 变更和版本控制管理工具 --Bytebase 安装部署


文章目录

  • 数据库 变更和版本控制管理工具 --Bytebase 安装部署
  • 前言
  • 一.Docker部署Bytebase
    • 1.Docker 配置
    • 2. pull 数据
    • 3. 执行部署
    • 4. 打开浏览器 部署完成
  • 二、使用步骤
    • 1.注册超管
    • 2.配置 Configure External URL
  • 总结


前言

Bytebase 是一个现代化的数据库 schema 变更和版本控制管理工具。

主要功能

  1. 数据库变更管理:

可以方便地进行数据库结构的变更,如添加表、修改列、创建索引等操作。通过清晰的变更流程,确保数据库的变更能够安全、有序地进行。
提供可视化的界面,让开发人员和数据库管理员可以直观地看到变更的内容和影响。

  1. 版本控制:

对数据库 schema 进行版本管理,类似于代码的版本控制系统。可以记录每次变更的历史,方便回滚到特定的版本。
支持团队协作,多个成员可以共同管理数据库的变更,确保变更的一致性和可追溯性。

  1. 环境管理:

可以管理不同的数据库环境,如开发环境、测试环境和生产环境。确保在不同环境中的数据库结构保持一致。
方便地进行环境之间的数据库同步和迁移。

  1. 安全和权限管理:

提供细粒度的权限控制,确保只有授权的用户才能进行数据库变更操作。
可以对敏感数据进行加密和访问控制,提高数据库的安全性。

  1. 集成和自动化:

可以与常见的开发工具和 CI/CD 流程集成,实现自动化的数据库变更管理。
支持通过 API 进行扩展和定制,满足不同的业务需求。


提示:以下是本篇文章正文内容,下面案例可供参考

一.Docker部署Bytebase

从官网可以知道 部署还是很方便的,但是需要一定改进。

1.Docker 配置

由于中国网络的一些问题,需要修改 docker engine 具体 建见之前的 我写的说明
docker Desktop报错 error pulling image configuration 处理

2. pull 数据

目前官网是 https://bytebase.cc/docs/get-started/self-host/ 下
在这里插入图片描述

docker run:用于启动一个新的 Docker 容器。
--rm:当容器退出时自动删除容器。
--init:为容器添加一个 init 进程来处理信号和传递信号给应用进程,以确保容器内的应用能正确地处理信号和优雅地退出。
--name bytebase:为容器指定一个名称为 “bytebase”。
--publish 8080:8080:将容器的 8080 端口映射到主机的 8080 端口,这样可以通过主机的 8080 端口访问容器内的服务。
--pull always:始终尝试拉取最新版本的镜像。
--volume ~/.bytebase/data:/var/opt/bytebase:将主机上的~/.bytebase/data目录挂载到容器内的/var/opt/bytebase目录,实现数据的持久化存储和共享。
bytebase/bytebase:2.22.2:指定要运行的镜像名称和标签,这里是名为 “bytebase” 的镜像,版本号为 2.22.2

但是可以知道 如果根据官网说的 --rm 下次可能有要重新安装的 ,所以这里改为 :

docker run --restart=always --init --name bytebase --publish 8080:8080 --pull always --volume ~/.bytebase/data:/var/opt/bytebase bytebase/bytebase:2.22.2代码的解释:
docker run:用于启动一个新的 Docker 容器。
--restart=always:容器总是在退出后自动重新启动,确保服务的高可用性。
--init:为容器添加一个 init 进程来处理信号和传递信号给应用进程,以确保容器内的应用能正确地处理信号和优雅地退出。
--name bytebase:为容器指定一个名称为 “bytebase”。
--publish 8080:8080:将容器的 8080 端口映射到主机的 8080 端口,这样可以通过主机的 8080 端口访问容器内的服务。
--pull always:始终尝试拉取最新版本的镜像。
--volume ~/.bytebase/data:/var/opt/bytebase:将主机上的~/.bytebase/data目录挂载到容器内的/var/opt/bytebase目录,实现数据的持久化存储和共享。
bytebase/bytebase:2.22.2:指定要运行的镜像名称和标签,这里是名为 “bytebase” 的镜像,版本号为 2.22.2。

3. 执行部署

copy 命令
在这里插入图片描述

在这里插入图片描述
直到出现 Bytebase
在这里插入图片描述

4. 打开浏览器 部署完成

在这里插入图片描述

二、使用步骤

1.注册超管

输入邮箱,密码和 用户名
在这里插入图片描述

在这里插入图片描述

2.配置 Configure External URL

在生产环境中运行 Bytebase 时,你不应该让运行 Bytebase 服务器的节点直接被客户端访问。相反,你应该设置一个网关,如 Nginx 或 Caddy,来将请求转发到 Bytebase。
从逻辑上讲,你需要配置两个端点,用户用于访问 Bytebase 控制台的外部 URL,以及用于 GitOps 工作流的版本控制系统(VCS)推送 Webhook 事件的 GitOps Webhook URL。前者通常从内部网络访问,而如果使用 GitHub.com 或 GitLab.com,后者可能来自外部网络。如果它们都可以通过同一个端点访问,那么你只需要配置外部 URL。

网络图
在这里插入图片描述

在这里插入图片描述

这里举个例子 这里就初步安装好了

在这里插入图片描述


总结

以上就是 在windows 环境下的配置 ,其实这个工具越来越多被人知晓
也 适用很多场景

  • 软件开发团队:

在软件开发过程中,数据库结构经常需要变更。Bytebase 可以帮助团队有效地管理这些变更,确保开发、测试和生产环境的数据库一致性。

  • 数据库管理员:

对于数据库管理员来说,Bytebase 提供了一个集中的管理平台,可以更好地控制数据库的变更,提高数据库的稳定性和安全性。

  • 企业级应用:

在企业级应用中,数据库的变更管理至关重要。Bytebase 可以满足企业对数据库管理的高要求,确保业务的连续性和数据的安全性。

这篇关于数据库 变更和版本控制管理工具 --Bytebase 安装部署的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1122903

相关文章

Python中win32包的安装及常见用途介绍

《Python中win32包的安装及常见用途介绍》在Windows环境下,PythonWin32模块通常随Python安装包一起安装,:本文主要介绍Python中win32包的安装及常见用途的相关... 目录前言主要组件安装方法常见用途1. 操作Windows注册表2. 操作Windows服务3. 窗口操作

MySQL数据库中ENUM的用法是什么详解

《MySQL数据库中ENUM的用法是什么详解》ENUM是一个字符串对象,用于指定一组预定义的值,并可在创建表时使用,下面:本文主要介绍MySQL数据库中ENUM的用法是什么的相关资料,文中通过代码... 目录mysql 中 ENUM 的用法一、ENUM 的定义与语法二、ENUM 的特点三、ENUM 的用法1

Java中调用数据库存储过程的示例代码

《Java中调用数据库存储过程的示例代码》本文介绍Java通过JDBC调用数据库存储过程的方法,涵盖参数类型、执行步骤及数据库差异,需注意异常处理与资源管理,以优化性能并实现复杂业务逻辑,感兴趣的朋友... 目录一、存储过程概述二、Java调用存储过程的基本javascript步骤三、Java调用存储过程示

Go语言数据库编程GORM 的基本使用详解

《Go语言数据库编程GORM的基本使用详解》GORM是Go语言流行的ORM框架,封装database/sql,支持自动迁移、关联、事务等,提供CRUD、条件查询、钩子函数、日志等功能,简化数据库操作... 目录一、安装与初始化1. 安装 GORM 及数据库驱动2. 建立数据库连接二、定义模型结构体三、自动迁

嵌入式数据库SQLite 3配置使用讲解

《嵌入式数据库SQLite3配置使用讲解》本文强调嵌入式项目中SQLite3数据库的重要性,因其零配置、轻量级、跨平台及事务处理特性,可保障数据溯源与责任明确,详细讲解安装配置、基础语法及SQLit... 目录0、惨痛教训1、SQLite3环境配置(1)、下载安装SQLite库(2)、解压下载的文件(3)、

MySQL数据库的内嵌函数和联合查询实例代码

《MySQL数据库的内嵌函数和联合查询实例代码》联合查询是一种将多个查询结果组合在一起的方法,通常使用UNION、UNIONALL、INTERSECT和EXCEPT关键字,下面:本文主要介绍MyS... 目录一.数据库的内嵌函数1.1聚合函数COUNT([DISTINCT] expr)SUM([DISTIN

MySQL追踪数据库表更新操作来源的全面指南

《MySQL追踪数据库表更新操作来源的全面指南》本文将以一个具体问题为例,如何监测哪个IP来源对数据库表statistics_test进行了UPDATE操作,文内探讨了多种方法,并提供了详细的代码... 目录引言1. 为什么需要监控数据库更新操作2. 方法1:启用数据库审计日志(1)mysql/mariad

postgresql数据库基本操作及命令详解

《postgresql数据库基本操作及命令详解》本文介绍了PostgreSQL数据库的基础操作,包括连接、创建、查看数据库,表的增删改查、索引管理、备份恢复及退出命令,适用于数据库管理和开发实践,感兴... 目录1. 连接 PostgreSQL 数据库2. 创建数据库3. 查看当前数据库4. 查看所有数据库

从入门到精通MySQL 数据库索引(实战案例)

《从入门到精通MySQL数据库索引(实战案例)》索引是数据库的目录,提升查询速度,主要类型包括BTree、Hash、全文、空间索引,需根据场景选择,建议用于高频查询、关联字段、排序等,避免重复率高或... 目录一、索引是什么?能干嘛?核心作用:二、索引的 4 种主要类型(附通俗例子)1. BTree 索引(

Oracle 数据库数据操作如何精通 INSERT, UPDATE, DELETE

《Oracle数据库数据操作如何精通INSERT,UPDATE,DELETE》在Oracle数据库中,对表内数据进行增加、修改和删除操作是通过数据操作语言来完成的,下面给大家介绍Oracle数... 目录思维导图一、插入数据 (INSERT)1.1 插入单行数据,指定所有列的值语法:1.2 插入单行数据,指