• 启动jar包指定数据库连接


    启动jar包指定数据库连接

      这个实验源于自己的一个好奇心。。。

      之前写有文章:jenkins指定库连接,当时我领导以为切换数据库连接就是一个命令的事,“加一,切库”,手起刀落,然后我告诉他jenkins切换库的逻辑:从gitlab拉代码,替换数据库连接文件,maven编译,再发布到远程机器。可能那会比较大声,整个办公室仅弥漫着我跟领导的“呼应”,坐我对面懂点运维的开发,小小声给我回了句:其实可以不用那么麻烦,直接指定配置文件,不需要重新编译。

      为了验证下是不是真的,今天忙完别的事特意测了下~~

      参考链接:https://www.jb51.net/article/197938.htm

    一、测试准备

      话说公司内网有个快码猿开发的应用:一个简单的资产管理系统,是个jar包跑的,刚好最大化模仿之前的场景进行测试。

      我特意解刨了jar包,然后在 BOOT-INF/classes/ 目录下有个 application.yml,里面有连接的数据库配置信息:yhwl_devops

     navicat连该库,找到一个好辨认的表:propertytype

     刚好跟页面”资产类型管理“对应了:

    、正式测试

    1、mysql新建测试库:ljytest_20220406

    2、把源库yhwl_devops 数据导出来,导入到我这个测试库里,插入一条测试数据,如下:

     

     3、复制application.yml,修改成连接测试数据库

    cp BOOT-INF/classes/application.yml   /tmp/ljytest/application.yml 

     4、启动jar包:

    java -jar /root/devops-1.1.jar --spring.config.location=/tmp/ljytest/application.yml

    看看多了最后一条记录,代表修改数据库连接是成功的。

    恩,确实是没有骗我~~

    、实验总结

      如果简单的修改jar包运行的数据库连接,且并非经常需要修改,确实启动jar包直接指定想读的配置文件是比较好的,也就是本文测试的方法;但是如果还要做更复杂的操作,例如改库连接之前要备份库数据,个人觉得还是用jenkins去弄比较好。

      另外一个弄成jenkins的原因是为了节省运维人员的时间吧,想想测试人员一声令下就让改库连接,得先停掉原服务,指定跑起来。。。还不如做成这种让其自主选择去点发布进而改库连接,毕竟这样改来改去,做多了烦不单只,也容易出错,牺牲点时间等代码编译时间,其实也是值得的。

  • 相关阅读:
    怎么自定义修改CnBlogs博客园主题模板css样式
    前端怎么避免无效的请求,减轻服务器负载
    360浏览器奇葩问题:非得打开一次控制台才能登录(try catch finally 用法)
    react中<br/>不换行、多个&nbsp;只显示一个空格的问题 dangerouslySetInnerHTML
    webpack压缩文件错误:ERROR in bundle.js from UglifyJs
    webpack css单独打包 及extract-text-webpack-plugin插件
    css如何引入第三方字体
    计数排序
    接口
    抽象方法和抽象类
  • 原文地址:https://www.cnblogs.com/windysai/p/16109754.html
Copyright © 2020-2023  润新知