jenkins Pipeline接入mysql

背景:

jenkin pipeline进化过程如下:
Jenkins Pipeline 脚本优化实践:从繁琐到简洁 >>>>> Jenkins Pipeline脚本优化:为Kubernetes应用部署增加状态检测>>>>>> 使用Jenkins和单个模板部署多个Kubernetes组件。有一些需要动态设置的配置不想在jenkins中配置,想将这些变量存储在mysql 这种数据库中,通过动态修改参数,然后让jenkins pipeline 任务到mysql中获取参数数据,并执行任务!
Jenkins作为一款流行的自动化服务器,通过插件支持扩展了其功能,使其可以与各种工具和服务(包括MySQL数据库)无缝集成。本文将指导您如何在Jenkins中接入MySQL数据库,并安装Database及Database-MySQL插件以实现数据库自动化任务。

前提条件

  • 您需要有一个运行中的Jenkins实例。
  • 您需要有管理员权限以安装和配置插件。
  • 确保MySQL数据库已经安装且可以访问。

jenkins Pipeline接入mysql

步骤1: 安装Database 和 Database-MySQL 插件

首先,我们需要在Jenkins中安装两个插件:Database 和 Database-MySQL。这可以通过Jenkins的管理界面完成。

  1. 登录到Jenkins,并点击左侧菜单栏的管理Jenkins。
  2. 在管理页面,选择管理插件。
  3. 转到可用标签页,然后在搜索框输入“Database”和“Database-MySQL”以查找这两个插件。
  4. 找到后,勾选它们,然后点击页面底部的立即安装。
  5. 5Jenkins将下载并安装这些插件。安装完成后,可能需要重启Jenkins。

image.png

步骤2: 配置MySQL数据库

安装完插件后,您需要配置Jenkins以连接到MySQL数据库。首先确保您的MySQL实例运行正常,并获取数据库的访问凭证(数据库URL、用户名、密码)。

创建数据库和用户(如果需要)

如果您还没有为Jenkins准备的数据库和用户,您需要登录到MySQL服务器并创建它们。可以使用以下示例命令:

CREATE DATABASE jenkinsdb;
CREATE USER 'jenkins'@'%' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON jenkinsdb.* TO 'jenkins'@'%';
FLUSH PRIVILEGES;

配置Jenkins

  1. 回到Jenkins,点击左侧菜单的系统管理。
  2. 找到数据库部分,这里您会看到一个添加数据库配置的选项。
  3. 选择MySQL作为数据库类型,并填写您的数据库信息,包括数据库URL、用户名和密码。
  4. 保存您的配置。

image.png

步骤3: 使用插件实现自动化任务

安装并配置好Database和Database-MySQL插件后,您可以开始设计和执行与MySQL数据库相关的自动化任务了。例如,可以使用Jenkins作业执行数据库迁移、备份和还原等任务。

创建一个新的Jenkins作业

  1. 在Jenkins主面板,点击新建任务。
  2. 为作业命名,并选择一个适合您任务的作业类型,例如自由风格软件项目。
  3. 在作业配置页面,您可以根据需要配置源码管理、构建触发器等。
  4. 在构建部分,点击添加构建步骤,这里您可以选择执行Shell脚本或Windows批处理命令等。
  5. 您可以使用脚本连接到MySQL数据库并执行SQL语句。
    例如,一个简单的pipeline连接MySQL数据库并展示当前数据库 的例子:
pipeline {agent anystages {stage('# 构建开始') {steps {script{getDatabaseConnection(type: 'GLOBAL') {def result = sql(sql: "show databases;")println "Class of result: ${result.getClass().toString()}"println "Value of result: ${result}"}}   }}}
}

image.png

结语

通过以上步骤,您成功在Jenkins中配置了MySQL数据库并安装了所需插件,这为您的项目开辟了一条自动化数据库操作的快速通道。现在,您可以继续探索和实现更复杂的数据库管理和操作任务,进一步提高开发和部署的效率。接下来将继续完善修改我原有的pipeline任务。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/754691.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

BootScrap详细教程

文章目录 前言一、BootScrap入门二、导航三、栅格系统四、container五、面板六、媒体对象七、分页八、图标九、实现动态效果 前言 BootScrap是别人帮我们写好的CSS样式。如果想要使用BootScrap,需要先下载下来,在页面上引入,编写HTML需要按照…

Android 开发环境搭建(Android Studio 安装图文详细教程)

Android Studio 下载 https://developer.android.google.cn/studio?hlzh-cn Android Studio 安装 检查电脑是否启用虚拟化 如果没有开启虚拟化,则需要进入电脑的 BIOS 中开启 直接 next选择安装的组件,Android Studio 和 Android 虚拟设备&#xff…

(学习日记)2024.03.18:UCOSIII第二十节:移植到STM32

写在前面: 由于时间的不足与学习的碎片化,写博客变得有些奢侈。 但是对于记录学习(忘了以后能快速复习)的渴望一天天变得强烈。 既然如此 不如以天为单位,以时间为顺序,仅仅将博客当做一个知识学习的目录&a…

注册个人小程序

访问地址 https://mp.weixin.qq.com/ 立即注册 选择小程序 注册 填写信息 登录邮箱 访问邮箱的链接激活账号 选择个人,填写信息 注册完成,即可登录进入填写信息

使用jenkins-pipeline进行利用项目文件自动化部署到k8s上

Discard old builds:丢弃旧的构建,目的是管理存储空间、提升性能以及保持环境整洁 Do not allow concurrent builds: 禁止并发构建是指同一时间内只允许一个构建任务执行,避免多个构建同时运行可能带来的问题 Do not allow the pipeline to resume if the controller resta…

深度学习实战模拟——softmax回归(图像识别并分类)

目录 1、数据集: 2、完整代码 1、数据集: 1.1 Fashion-MNIST是一个服装分类数据集,由10个类别的图像组成,分别为t-shirt(T恤)、trouser(裤子)、pullover(套衫&#xf…

蓝桥杯-24点-搜索

题目 思路 --暴力递归全组合的方法。只有4个数,4种计算方式,共有4 * 3 * 2 * 1 * 4种不同的情况,可以写递归来实现。 --每次计算都是两个数之间的运算,因此4个数需要3次计算,第一次计算前有4个数,第二次有…

面向对象【interface接口、抽象类与抽象方法】

文章目录 interface接口定义接口接口的格式与举例静态方法私有方法接口的多继承接口的默认方法冲突解决接口与抽象类之间的对比 抽象类与抽象方法抽象类抽象类的定义抽象方法使用抽象类 参考链接 interface接口 接口是一种抽象的数据类型,它定义了一组方法&#xff…

c语言基础~函数详解

前言 今天我们来学习一波函数的概念,帮助各位理解函数,本次博客取自一些书籍以及各大网站的讲解,把它整合在一起并且详细讲解 1函数的理解 我们得知道什么是函数,函数的作用是什么,好不会表述没关系,我们翻书 c primer plus 是这么说的"函数是指…

科技云报道:第五次工业革命,中国AI企业如何打造新质生产力?

科技云报道原创。 人类历史的叙述与技术进步的影响深深交织在一起。 迄今为止,每一次工业革命都彻底改变了我们社会的轮廓,引入了机械化、大规模生产和数字化,并重新定义了人类生存的规范。 自2022年11月30日OpenAI发布ChatGPT以来&#x…

C++Qt学习——QFile、QPainter、QChart

目录 1、QFile(文本读写)——概念 1.1、拖入三个控件,对pushButton进行水平布局,之后整体做垂直布局 1.2、按住控件,转到槽,写函数 1.3、打开文件控件 A、首先引入以下两个头文件 B、设置点击打开文件控…

C++进阶之路---手撕“红黑树”

顾得泉:个人主页 个人专栏:《Linux操作系统》 《C从入门到精通》 《LeedCode刷题》 键盘敲烂,年薪百万! 一、红黑树的概念与性质 1.概念 红黑树,是一种二叉搜索树,但在每个结点上增加一个存储位表示结点…

多模态数据融合简介#翻译

翻译自—— 感谢外国友人分享,鄙人在此翻译分享给大家INTRODUCTION TO DATA FUSION. multi-modality | by Haylat T | Haileleol Tibebu | Medium 多模态梳理_多模态图像和多模态方法的区别-CSDN博客 #这个网u也写得不错! 多模态 神经网络是最著名的机…

idea远程试调jar、远程试调war

idea远程试调jar、远程试调war 目的&#xff1a;测试运行时与ide开发时是否一致。 配置jar Maven中添加 <packaging>jar</packaging>将其打包为jar。 设置运行入口main 编译jar 看到jar输出 配置试调 添加jar运行 远程试调 先在源码中打好断点试调 debug运行…

React的基本使用

安装VSCode插件 ES7 Reactopen in browser React基本使用 基本使用步骤 引入两个JS文件&#xff08; 注意引入顺序 &#xff09; <!-- react库, 提供React对象 --> //本地 <script src"../js/react.development.js"></script> //线上 //<scr…

Python大数据实践:selenium爬取京东评论数据

准备工作 selenium安装 Selenium是广泛使用的模拟浏览器运行的库&#xff0c;用于Web应用程序测试。 Selenium测试直接运行在浏览器中&#xff0c;就像真正的用户在操作一样&#xff0c;并且支持大多数现代 Web 浏览器。 #终端pip安装 pip install selenium #清华镜像安装 p…

【Ubuntu】Ubuntu的安装和配置

下载ubuntu镜像 https://releases.ubuntu.com/22.04.4/ubuntu-22.04.4-desktop-amd64.iso 一、Ubuntu安装 1.新建虚拟机 1.1按照它的提示创建用户&#xff1b;后面一直下一步就好 2.启动Ubuntu虚拟机 2.1设置为中文键盘 2.2默认即可&#xff1b;若是有低需求也可以选择最小…

企业开展开源安全治理必要性及可行性详细分析

背景 开源软件安全威胁是近几年企业安全面临的主要威胁&#xff0c;也是企业应用安全方向讨论的热门话题&#xff0c;但是由于是新的需求新的方向&#xff0c;很多企业在观望&#xff0c;当前开展这项工作是否已经成熟&#xff0c;项目成功率如何&#xff1f; 当新鲜事物产生时…

【C语言】linux内核软中断

一、什么是软中断&#xff1f; 内核中的软中断&#xff08;Softirqs&#xff09;和任务下半部&#xff08;Tasklets&#xff09;是Linux内核中用于在中断上下文之外处理中断服务的一种底层机制。这些机制解决了不能在中断服务例程&#xff08;ISR&#xff09;中执行耗时操作或…

Apache Doris 2.1 核心特性 Variant 数据类型技术深度解析

在最新发布的 Apache Doris 2.1 新版本中&#xff0c;我们引入了全新的数据类型 Variant&#xff0c;对半结构化数据分析能力进行了全面增强。无需提前在表结构中定义具体的列&#xff0c;彻底改变了 Doris 过去基于 String、JSONB 等行存类型的存储和查询方式。为了让大家快速…