[精讚] [會員登入]
1433

【Wildfly/jBoss】[Linux](Connection Datasource)如何與MySQL資料庫建立連線

網頁瀏覽器和資料庫的關係密不可分,而通常會將兩者分開架設在不同的伺服器上面來提供服務,這時要如何進行連線呢?

分享此文連結 //n.sfs.tw/15499

分享連結 【Wildfly/jBoss】[Linux](Connection Datasource)如何與MySQL資料庫建立連線@小編過路君子
(文章歡迎轉載,務必尊重版權註明連結來源)
2021-11-22 14:05:01 最後編修
2021-11-21 19:29:59 By 過路君子
 

大家好,這裡是一直打不到所需素材的小編過路君子

真的運氣很好,同個關卡會掉兩種素材,機率各 50%,結果一直掉另一個小編不需要的素材......

 

 

那我們照往例,就先附上小編等等會使用到的所有軟體名稱和版本,各位在操作的時候要確定版本之間可否通用喔。

軟體名稱 版本
Wildfly 8.0.26
MySQL 24.0.1.Final
MySQL Connectors Connector/J 8.0.27

 

Step.1 安裝驅動程式(Driver)

 

Wildfly在安裝的時候,預設是不會安裝 MySQL的驅動程式(JDBC Driver),所以我們須先手動安裝一下 JDBC Driver。

如果各位已經安裝完畢就可以直接跳過這一步驟。

那首先我們先到 MySQL官方所提供的的驅動程式下載區下載 JDBC Driver

(所有圖片點擊都可以放大、變高清)

那小編在此使用的系統為 CentOS 8,所以選擇了 Red Hat Enterprise Linux 8來下載。

如果是其他的Linux系統請下載各自對應的 Driver來用。

然後將其下載到 Wildfly所在的伺服器裡面,這邊小編直接使用 wget。

至於要放在哪裡都可以,後面複製檔案的時候找的到就行,小編是放在 /tmp/ 下的。

wget https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-8.0.27-1.el8.noarch.rpm

以 CentOS 8為例,下載下來之後為 .rpm檔案,所以接下來下一個解壓縮指令進行解壓縮。

然後下方圖片中畫紅底線的那個檔案就是我們所需要的檔案,其他檔案可以當沒有,我們只要那個 Jar檔就好。

rpm2cpio mysql-connector-java-8.0.27-1.el8.noarch.rpm | cpio -div

然後接下來這步分常重要,要找到各位 Wildfly的家目錄並且進入到其裡面

在預設情況下,Wildfly的家目錄應該長得像是下圖那樣,如果忘記或是不清楚放在哪裡,試著使用 find來找尋吧。

那接下來我們快速連下兩道指令將 JDBC Driver安放進 Wildfly吧!

在 Wildfly的預設安裝裡面,./modules/system/layers/base/com/ 裡面不會有 mysql資料夾,所以這部分就是要由我們手動創建。

那至於剛剛我們下載的 mysql-connector-java.jar在哪裡,就看各位自己放置的位置,小編是在 tmp裡面下載的,所以當然在 tmp裡面啦!

mkdir -p ./modules/system/layers/base/com/mysql/main/
touch ./modules/system/layers/base/com/mysql/main/module.xml
cp /tmp/usr/share/java/mysql-connector-java.jar ./modules/system/layers/base/com/mysql/main/

緊接著打開我們剛剛順便創建的 module.xml檔案,我們要寫入一些資訊,讓 Wildfly知道怎麼使用這個 JDBC Driver。

簡單來說......把底下的文字全部貼進去就好,第三行的檔案名稱要跟剛剛複製進去的 Jar檔一模一樣喔。

<module xmlns="urn:jboss:module:1.5" name="com.mysql">
    <resources>
        <resource-root path="mysql-connector-java.jar" />
    </resources>
    <dependencies>
        <module name="javax.api"/>
        <module name="javax.transaction.api"/>
    </dependencies>
</module>

 

然後就是重啟Wildfly就可以了。

./bin/jboss-cli.sh --connect command=:reload

如果各位在重啟的時候遇到了下圖的錯誤狀況,則改下以下的指令。

請依照自身情況將<user>、<password>、<your IP> and <port>改成相對應的資訊。

./jboss-cli.sh --user="<user>" --password="<password>" --controller=remote+http:<your IP>:<port> --connect command=:reload

 

Step.2 連線資料庫

首先先連線進 Wildfly的後台管理介面,預設連線 port為 9990,依序照下圖點擊即可。

依照下圖的方式輸入,其他格子可以依照需求填入。

點擊「Add」之後就可以看到多了一個我們剛剛設置的 mysql欄位。

完成之後我們切換到「Datasource」分頁,同樣點擊那個可愛的加號並選擇「Add Datasource」。

選擇「MySQL」之後就可以按 Next了。

直接按 Next。

點擊小三角形選擇我們剛剛添加的 JDBC Driver,然後點 Next。

輸入資料庫的相關資訊,下面的帳號和密碼注意是要輸入 MySQL的,千萬別輸入成 Wildfly的。

 然後測試連線,如果一切正常就會顯示下方圖片的樣子。

最後確認一下下圖的狀態,如果看到一片綠那就恭喜各位完成了這項任務,可以收工回家了。

 

 

 

後記

連結完資料庫之後就是要把資料取出來了,所以,這只是個開始呢。

END

你可能感興趣的文章

【C++】class練習 — 檢測該字串是否為迴圈 第一次的C++結構式寫法,雖然以後應該會見怪不怪,但畢竟是第一次所以還是想保存下來

【JAVA】[java.lang.Class]如何不透過new來實體化class 在某些極端狀態下,我們沒有辦法直接將實體化後的 Object 傳入函數內,只能採用傳入 Class 在實體化成物件這種極端的方式來進行

【Kali Linux】[history -c]如何清除歷史記錄 非bash環境會使history部分功能變的非法

【JDA/discord bot】如何獲得訊息中的圖片和影片並儲存或轉傳 如何將訊息中的圖片或影片之類的多媒體提取出來之後,再進行相關的處理

【Discord bot 6.2.1】[JDA6](StringSelectMenu)如何從訊息中提取選單並取得使用者選擇的選項 從 JDA5 使用到現在的 JDA6,時間過得還真快

【Wicket】[nonce]如何導入css以及javascript 如果只是用一般的 HTML link 或是 script 標籤來寫,會被 CSP 擋住,禁止加載資源,那我們除了關閉 CSP 以外還有沒有辦法來解決呢?

隨機好文

希萌創意預計在今年7月繼東津萌米之後再次推出新遊戲--食用性少女! 今天來介紹希萌創意的心企劃案,來讓大家知道這個消息!讓大家的錢包君一起來減肥吧!Ψ(☆w☆)

高捷少女:布拉格體驗㊦ 「各位想到盧卡站的乘客,請到我們左手邊排隊!」婕兒大聲地喊道。     「這孩子怎麼穿著地鐵站制服?童工嗎?」一位大嬸歪頭問道。

高捷少女:小穹與果仁巧克力㊥ 艾咪臉上泛起笑容說:「妳知道嗎?就跟花語一樣,每一種巧克力也都有各自的涵義:薄荷巧克力代表初戀;卡通巧克力代表天真爛漫;而果仁巧克力代表的是窩心,還有想陪伴對方的心情,這在德國是女生之間在慶生時會彼此

高捷少女:小穹與果仁巧克力㊦ 「如果妳跟一個女生同班三年,看過她午休流口水跟狼吞虎嚥地吃午餐,就算變成高捷代言人,也很難把她當女神的啦!」她說,小穹氣得搶走她義大利麵裡的蝦子,其他人笑得花枝招展。

高捷少女:地下城的探險少女(終)  小穹眨眨眼睛,然後說了出來。「其實,從剛剛開始,我就在想了……是在看過這本日記之後。」她拿出日記。「我想……我們尋找寶藏的想法,是不是真的正確的?」「怎麼說呢?」耐耐好奇地問。「這個埋藏寶藏的人,在