dbops 助力 GreatSQL 单机架构安装部署

思级有容数据库双主模式安装部署 思级有容数据库部署 阅读详情

dbops 助力 GreatSQL 单机架构安装部署

本文将深入介绍如何运用 dbops 完成 GreatSQL 单机架构的安装部署,无论是数据库新手寻求入门,还是经验丰富的技术人员追求高效操作,都能从中获取有价值的信息,助力构建坚实的数据库基础。

dbops 简介

dbops 是一套基于 Ansible Playbook 的自动化工具集,专为高效部署生产级数据库及其周边生态而设计。它遵循 “高效、优雅、规范(Code as Standard )” 的核心理念:

  • 高效:具备并发部署、全自动化的显著特点,且安装包小巧,能够极大地提升部署效率,节省时间和资源。
  • 优雅:使用 ansible-lint 对代码进行优化,以 Python 编写并尽量运用内置模块,使得代码简洁易读,易于维护和扩展。
  • 规范:能让 MySQL/GreatSQL 满足生产级规范,为数据库的稳定运行提供有力保障。

该工具主要致力于解决各类生产环境的规范化建设问题,目前正处于持续迭代的阶段,后续还将支持实例生命周期管理及资源回收等更多实用功能。

  • 官网详见:http://dbops.cn/

环境介绍

本次部署所使用的操作系统为麒麟 V10 系统,以下是系统的详细信息:

$ cat /etc/*release
Kylin Linux Advanced Server release V10 (Sword)
NAME="Kylin Linux Advanced Server"
VERSION="V10 (Sword)"
ID="kylin"
VERSION_ID="V10"
PRETTY_NAME="Kylin Linux Advanced Server V10 (Sword)"
ANSI_COLOR="0;31"
Kylin Linux Advanced Server release V10 (Sword)

$ uname -a
Linux gip 4.19.90-24.4.v2101.ky10.x86_64 #1 SMP Mon May 24 12:14:55 CST 2021 x86_64 x86_64 x86_64 GNU/Linux

环境 Glibc 版本信息如下:

$ ldd --version
ldd (GNU libc) 2.28

使用的 dbops 版本为:

dbops.1.9.20250129 release

使用的 GreatSQL 版本为:

GreatSQL-8.0.32-27

下载 dbops

可以从以下链接下载

  • dbops:https://gitee.com/fanderchan/dbops/releases
$ cd /usr/local
$ wget https://gitee.com/fanderchan/dbops/releases/download/dbops.1.9.20250129/dbops.1.9.20250129-Linux-x86_64.tar.gz

下载完成后,对 dbops 进行解压:

$ tar -xvzf dbops.1.9.20250129-Linux-x86_64.tar.gz 

在使用 dbops 之前,建议先阅读 dbops 目录结构和配置文件原理,这样能帮助更好地上手该工具:

  • https://k49r1gqq90.feishu.cn/wiki/GKJ5wdQkYiBrI6kpRE4cOUR3nse?fromScene=spaceOverview

安装 Ansible

dbops 自带绿色版 Ansible,dbops 的核心依赖于 Ansible,执行此命令用于注册:

$ cd portable-ansible-v0.5.0-py3
$ sh setup_portable_ansible.sh
$ source ~/.bashrc

最后检查下 Ansible 是否安装成功:

$ ansible --version
ansible 2.10.5

安装 GreatSQL

上传 GreatSQL 安装包

在当前环境下,建议选择 GreatSQL-8.0.32-27-Linux-glibc2.28-x86_64 这个 Linux Generic 通用包。

注意,由于 dbops 限制,只能选择 glibc2.17 和 x86_64 以及 minimal 版本

所以只能选择GreatSQL-8.0.32-27-Linux-glibc2.17-x86_64-minimal.tar.xz版本,不过 glibc 可以向下兼容,所以不会出现无法安装情况

# 需要放到 downloads 文件夹下
$ cd /usr/local/dbops/mysql_ansible/downloads
$ wget https://product.greatdb.com/GreatSQL-8.0.32-27/GreatSQL-8.0.32-27-Linux-glibc2.17-x86_64-minimal.tar.xz

编辑配置清单

$ vi /usr/local/dbops/mysql_ansible/inventory/hosts.ini 

修改内容如下:

[dbops_mysql]
192.168.139.37 ansible_user=root ansible_ssh_pass="'****'"
# IP地址 ansible_user=root ansible_ssh_pass="'你的密码'"
[all:vars]
#ansible_python_interpreter=/usr/bin/python3

注意!密码需要单引号包围,修改时不要漏掉。

验证服务器的连通性:

$ cd /usr/local/dbops/mysql_ansible/playbooks
$ ansible all -m ping
192.168.139.37 | SUCCESS => {
    "ansible_facts": {
        "discovered_interpreter_python": "/usr/bin/python"
    },
    "changed": false,
    "ping": "pong"
}

配置公共参数文件

$ vi /usr/local/dbops/mysql_ansible/playbooks/common_config.yml 

修改数据库版本以及端口:

## In most cases, just adjust these two parameters.
mysql_version: "8.0.32-27"
mysql_port: 3306

修改数据库类型为 “greatsql”:

## DB TYPE,suport mysql,percona,greatsql
db_type: greatsql

因为是手动下载安装包,所以可以关闭此参数,修改为 false 即可:

fcs_auto_download_mysql: false     # only support mysql. percona, greatsql pls download yourself first.

若想进行进阶修改,下方还有很多公共参数可供修改。

要修改目录地址请看下方附录。

执行 Playbook

$ ansible-playbook single_node.yml

等待一会儿后,会打印出如下消息:

    "msg": [
        "Hosts to be affected by Deploy single-node MySQL server using binary installation: 192.168.139.37",
        "DB type: mysql",
        "MySQL port: 3306",
        "MySQL version: 8.0.32-27",
        "Server specs: auto",
        "Roles to be executed: ../roles/pre_check_and_set, ../roles/mysql_server",
        "mycnf_dir: /database/mysql/etc/3306",
        "datadir: /database/mysql/data/3306",
        "tmpdir: /database/mysql/tmp/3306",
        "binlog_dir: /database/mysql/log/binlog/3306",
        "relaylog_dir: /database/mysql/log/relaylog/3306",
        "redolog_dir: /database/mysql/log/redolog/3306",
        "socket_dir: /database/mysql/data/3306",
        "mysqlx_socket_dir: /database/mysql/data/3306"
    ]

可以看到上面的信息,安装时请确认无误后,输入 “confirm” 确认安装。如果想修改,可按 Ctrl+C 退出安装,再修改文件 “common_config.yml”。稍等片刻,GreatSQL 就部署完成。

有需要修改,请下滑看 “附:自定义目录” 章节

登入 GreatSQL

登入 GreatSQL 进行检查:

$ mysql -uadmin -h127.0.0.1 -P3306 -pDbops@8888 -e "select @@version"
+-----------+
| @@version |
+-----------+
| 8.0.32-27 |
+-----------+

至此,麒麟系统下 GreatSQL 的安装已顺利完成:D

附:自定义目录

自定义目录的作用

自定义目录可以让用户根据实际需求灵活调整 GreatSQL 安装过程中涉及的各种目录,如配置文件目录、数据存储目录、日志目录等,以满足不同的生产环境和业务场景的要求。

如何自定义目录

在读取 common_config.yml 文件后,新增读取advanced_config.yml配置文件,路径:dbops/mysql_ansible/playbooks/advanced_config.yml,可以找到与目录相关的参数,如 mycnf_dir、datadir、tmpdir 等。用户可以根据自己的需要修改这些参数的值。

注意!这种操作属于高阶用法,属于代码维护的一部分,其正确性需由用户自行保证。如果出现配置错误,可能会引发不可预料的后果。

更多配置信息详见:

  • https://k49r1gqq90.feishu.cn/wiki/AmThwXRQOiTueekNCu3cv9o9n2f?fromScene=spaceOverview

注意事项

  • 在修改目录参数时,需要确保目标目录存在且有相应的读写权限,否则可能会导致安装失败。
  • 自定义目录可能会影响到一些默认的配置和脚本,需要仔细检查和测试,确保 GreatSQL 能够正常运行。
GreatSQL 部署 MGR 集群,添加新节点 及MGR搭建过程中遇到的一些故障(超详细) GreatSQL是适用于金融级应用的国内自主开源数据库,具备高性能、高可靠、高易用性、高安全等多个核心特性,可以作为MySQL或Percona Server的可选替换,用于线上生产环境,且完全免费并兼容MySQL或Percona Server。GreatSQL在高可靠方面的主要提升是针对MGR做了大量的改进和提升工作,进一步提升MGR的高可靠等级。地理标签读写节点动态VIP仲裁节点快速单主模式智能选主全新流控算法。 阅读详情

相关推荐

GreatSQL安装篇

操作系统:CentOS7 CPU:X86_64架构 数据库:GreatSQL-8.0.32-26-Linux-glibc2.17-x86_64.tar.xz。

BUTCHER 1123

DBOps:数据库部署的未来之选

DBOps:数据库部署的未来之选 在快速迭代的软件开发中,数据库管理常常是连续集成(CI)和持续部署(CD)流程中的瓶颈。但今天,有一款名为DBOps的Powershell模块,正致力于解决这一痛点,它将改变我们处理SQL数据库部署的方式。 项目介绍 DBOps是一个强大的Powershell模块,专门设计来实现SQL数据库的CI/CD流程。通过与DbUp库的结合,它确保了数据库脚本的有序、可靠部...

gitblog_00010的博客 1202

GreatSQL数据库8.0快速安装部署

本文介绍了GreatSQL数据库在Linux系统上的安装配置流程。主要内容包括:1)系统兼容性检查和环境准备;2)关闭SELinux和防火墙;3)安装依赖包;4)创建安装目录并上传安装包;5)解压和安装RPM包;6)配置数据目录权限;7)初始化数据库并获取临时密码;8)修改配置文件;9)启动服务并修改密码;10)创建远程访问用户。最后还说明了如何使用Navicat客户端连接数据库。整个流程详细说明了从安装到配置的完整步骤。

m0_61389590的博客 707

使用 dbops 快速部署 MySQL 数据库

昨天群里有位朋友分享了芬达大佬的 MySQL 部署工具:dbops,抱着试一试的心态玩了一把,确实很给力。今天给大家分享一下,完全免费哦!dbops 是一套高效的集合,目前是一个可以自动化安装和部署生产级别的 MySQL 及周边生态的工具。高效并发推送安装包,并发地部署数据库全自动化部署,无需人工干预安装包体积小,节省下载时间优雅采用 ansible-lint 做代码优化使用纯优雅语言编写(python),尽量使用内置模块,避免使用 shell。

LuciferLiu_DBA 1783

dbops:EaseBase数据库自动化运维平台

一、概述 Easebase 数据库自动化运维平台,基于python3.6+tornado+bootstrap开发 说明:该平台依赖dbapi平台接口服务,需要在部署后再部署dbapi服务。 功能: 1.1 用户管理、角色管理、功能管理、菜单管理、系统设置 1.2 数据源管理、服务器管理、数据库库管理、慢日志管理、数据库监控 1.3 数据库备份、数据库同步、数据库传输、数据库归档、大数据同步 1.4 工单管理、图片管理、端口管理 二、安装部署 2.1 安装python3环境 yum -y install python3 2.2 安装python3及依赖 pip3 install -r requirements.txt -i https://pypi.douban.com/simple 2.3 数据库连接配置 vi /config/confi

大话西游2经典单机版V8:一键架设+GM全功能+仙玉自由修改

本文详细介绍大话西游2经典单机版V8的一键架设教程和GM全功能使用指南,包括仙玉自由修改技巧。该版本无需虚拟机,解压即玩,完美还原官服经典玩法,支持离线运行,是老玩家重温经典和新玩家体验游戏的理想选择。

weixin_27303545的博客 1133

dbops 助力 GreatSQL MGR架构安装部署

本文介绍用 dbops 部署 GreatSQL MGR 架构,含下载、配置、安装步骤,VIP 功能,速来学习!

GreatSQL2021的博客 1053

【Macbook-Latex安装部署教程】【Win-Texlive镜像下载】【简单易上手】MacTex+Vscode/Texstudio

该教程记录自己在mac()上安装部署Latex环境的经验,整个教程操作简单,配置要求少,易上手。教程分成三部分:Mactex下载与安装,Vscode插件下载与配置文件修改,Texstudio安装。

sunriseOvO的博客 2568

天画项目-低代码平台-分库分表sql生成设计与实现(dbops)

一、背景&需求 1.1 背景 我在业余时间构建了一个租房平台,采用springboot微服务的架构模式,同时结合服务化思想进行代码实践,但是由于存在很多重复且低效的变更导致业余时间对这个租房平台的进度产生影响。作为开发人员长期维护一个业余项目产生了很多进度延迟和效率问题会导致项目项目被遗弃的概率增大,对开发者来说也是一个非常沮丧的事情。为了避免这种事情发生,我一方面鼓励自己尽量每天贡献代码,并在合适的时间构建提高开发效率的使用平台。另一方面也是为了借助这个租房平台进行微服务+分库分表+DDD领域

程序男的专栏 1227

AMCL代码详解(六)amcl中的重采样

每次都从w1左边的竖线开始转,显而易见,转到w1的概率为0-w1之间的随机数,转到w2的概率为w1到w1+w2之间的随机数,转到w3的概率为w1+w2到w1+w2+w3之间的随机数,后面的依次类推。当某个粒子的权值较大的时候,产生的随机数落在相应区间的概率就会增大,从而实现了对权值大粒子的多次复制,权值小的粒子的剔除。可以看出,在整个重采样的过程中,粒子进行了两次种情况的刷新,一种是随机生成的新的粒子,一种是对原来的粒子的复制。得到的值越大,说明粒子的权重越小,当前粒子的可信度比较小,需要重采样粒子。

YiYeZhiNian的博客 1579

HC32F460的GPIO重映射实战:如何用3步搞定SPI引脚冲突问题

本文详细介绍了HC32F460的GPIO重映射功能,通过三步操作解决SPI引脚冲突问题。文章解析了HC32F460的FuncGroup功能分组机制,提供了具体的寄存器配置步骤和验证技巧,并对比了与传统方案的性能优势,帮助工程师灵活配置引脚,优化硬件设计。

t4y5u6i7o的博客 918

工作计划思维导图

工作计划,思维导图,项目计划,项目管理。

niwoxiangyu的博客 226

LPDDR4协议规范之 (四)命令和时序

LPDDR4协议规范之 (四)命令和时序命令真值表激活操作读写访问操作读前沿和后沿突发读取操作流程读操作时序写前沿和后沿突发写操作写入均衡(待更新) 命令真值表 激活操作 ACTIVATE命令由两个连续命令组成,Activate-1命令和Activate-2。通过在(Activate-1)时钟的第一个上升沿保持CS HIGH,CA0 HIGH和CA1 LOW来发出Activate-1命令,通过...

YJFeiii的博客 2万+

适合mongodb的四个免费可视化管理工具

4个免费、开源的MongoDB图形化管理工具 jopen 2013-06-13 09:24:42• 发布 摘要:RockMongo 是一个PHP5写的MongoDB管理工具。phpMoAdmin 是一个用 PHP 开发的在线 MongoDB 管理工具,可用于创建、删除和修改数据库和索引,提供视图和数据搜索工具,提供数据库启动时间和内存的统计,支持 JSON 格式数据的导入导出。 Rock

zhengalen的博客 12万+

SAP-ABAP:ABAP Development Tools(ADT)安装配置学习分享教程-第一篇:ADT安装前置准备与环境校验教程

ABAP Development Tools(ADT)安装配置教程摘要 本文是ADT安装系列的第一篇,重点讲解环境准备与版本校验。ADT是基于Eclipse的现代ABAP开发工具,相比传统SAP GUI提供更智能的开发体验。安装前需确认: 推荐使用Eclipse 2026-03 + Java 21组合 操作系统需Windows 10+/macOS 14+ SAP GUI版本要求Windows≥8.00/macOS≥8.10 后端系统需NetWeaver 7.31 SP04+或S/4HANA 通过java -

baidu_35680696的博客 690

[SystemC]SystemC中的模块和程序

SystemC 中的层次结构是使用类 sc_module 创建的。sc_module 可以直接使用,也可以使用宏 SC_MODULE “隐藏”。上面的示例 SC_MODULE 创建了一个名为 nand2 的 sc_module 类对象。它的输出纯粹是输入值的函数。因此,模型可以使用最简单的 SystemC 进程,即 SC_METHOD。摘要:本节包含一个完整的简单设计,用于演示 SystemC 中模块和流程的使用。同样,重要的是要注意这不是典型的设计风格 - 但它很好而且易于理解。为什么要看模块和流程?

元直的博客 1868

GreatSQL单机环境安装

《国产数据库之-GreatSQL》介绍了万里的GreatSQL数据库,在这篇文章中,我们尝试搭建一个单机版的环境。GreatSQL是源于Percona Server的分支版本,因此从整体安装的流程上,和MySQL基本一致。1. 下载安装文件可以从这个链接,下载对应平台的安装文件,如果是CentOS,可以选择GreatSQL-8.0.25-15-Linux-glibc2.1...

bisal的专栏 2843

如何从 VMware 官网下载最新版本的 VMware Workstation

如何从 VMware 官网下载 VMware Workstation

XiaoqiangClub的博客 5905

麒麟OS和龙芯环境编译安装GreatSQL

之前测试过GreatSQL安装,基本上和MySQL无差异,《GreatSQL配置到系统systemd服务》《GreatSQL单机环境安装》《国产数据库之-GreatSQL》但是测试用的操作系统都是CentOS,非xc,碰巧看到GreatSQL社区推了这篇文章《麒麟OS+龙芯环境编译GreatSQL》,在xc环境安装GreatSQL,借鉴一下。本次介绍如何在麒麟OS + 龙...

bisal的专栏 1201

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

数据库自动化:DBA和DevOps的双赢

\本文要点:\为使数据库与敏捷开发与生产相匹配,DBA付出了极大的努力,但是该工作需要一种新的方法。新方法实现的关键在于更大程度上的系统化和自动化,确保不间断的一致性贯穿整个DevOps工作流,即从任务定义直至应用部署。 \为使数据库成为整个开发中的单一可信数据源,必须对数据库做自动的、强制的版本控制,以避免破坏开发的不稳定性因素。 \对于开发人员而言,在编码和集成阶段应避免与数据库有关联的错误,...

cpongo5 304

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

技术分享 | 在GreatDB分布式部署模式中使用Chaos Mesh做混沌测试

GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源。 1. 需求背景与万里安全数据库软件GreatDB分布式部署模式介绍 1.1 需求背景 混沌测试是检测分布式系统不确定性、建立系统弹性信心的一种非常好的方式,因此我们采用开源工具Chaos Mesh来做GreatDB分布式集群的混沌测试。 1.2 万里安全数据库软件GreatDB分布式部署模式介绍 万里安全数据库软件GreatDB 是一款关系型数据库软件,同时支持集中式和分布式的部署方式,本文涉及的是分布式部署方式。 分布式部署.

GreatSQL2021的博客 2602

dbops:数据库持续集成与部署的PowerShell模块

dbops:数据库持续集成与部署的PowerShell模块 1. 项目基础介绍与编程语言 dbops 是一个开源项目,旨在为SQL数据库提供持续集成(CI)与持续部署(CD)的解决方案。该项目主要使用 PowerShell 编程语言开发,是一个基于 .NET 的模块,提供了丰富的数据库部署和管理功能。 2. 项目核心功能 dbops 的核心功能包括: 持续部署:通过PowerShell模块,实现...

gitblog_00870的博客 494

万里(挑一)开源GreatDB及其他介绍

万里开源不断丰富着自身的产品线,先后推出单机数据库管理系统系列产品(简称“GreatDB”)、分布式数据库管理系统系列产品(简称“GreatDB Cluster”)、安全数据库系列产品(简称“GreatDBSE”)、云数据库服务平台(简称“GreatDB RDS”)、时序数据库管理系统(简称“GreatTS”)、企业级服务器操作系统软件(简称“TLES”)等多类数据库、操作系统核心产品,万里开源全线产品兼容X86、龙芯、飞腾、鲲鹏、海光等国内外主流芯片,具有产品生态能力及广泛的市场应用前景。 万里开源单机数

Sophiawhy的博客 1339

万里开源数据库GreatSQL-8.0.25-16-Linux-glibc2.28安装及问题记录

GreatSQL开源数据库是适用于金融级应用的国内自主MySQL版本。采用。

qq_26375455的博客 2908

推荐项目:DBOps - SQL数据库CI/CD的强大工具箱

推荐项目:DBOps - SQL数据库CI/CD的强大工具箱 在数据库管理和版本控制领域,自动化和持续集成/持续部署(CI/CD)已成为现代软件开发不可分割的一部分。今天,我们要向您推荐的开源项目——DBOps,正是专为此目的设计的一款PowerShell模块,它为SQL数据库的部署带来了革命性的简便性与可靠性。 项目介绍 DBOps基于PowerShell构建,旨在简化SQL数据库的CI/CD流...

gitblog_00902的博客 1066

CentOS7安装GreatSQL

GreatSQL 数据库是一款 开源免费 数据库,可在普通硬件上满足金融级应用场景,具有 高可用、高性能、高兼容、高安全 等特性,可作为 MySQL 或 Percona Server for MySQL 的理想可选替换。

落的博客 1701
上一篇: 【GreatSQL优化器-18】GROUP_INDEX_SKIP_SCAN
下一篇: 事务处理对持久统计信息自动收集的影响
GreatSQL社区
博客等级 码龄5年 1210粉丝 390原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值