啟動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的原因是為了節省運維人員的時間吧,想想測試人員一聲令下就讓改庫連接,得先停掉原服務,指定跑起來。。。還不如做成這種讓其自主選擇去點發布進而改庫連接,畢竟這樣改來改去,做多了煩不單只,也容易出錯,犧牲點時間等代碼編譯時間,其實也是值得的。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM