- 我們服務啟動時,sybase資料庫 連接直接創建10個連接,(為什么啟動時會創建這么多連接?)
- 有時候可以寫入sybase庫,大部分寫入失敗
- 查詢sybase庫資料可以查出來 ,沒問題
嘗試的方案1
如圖:
Springboot 連接迪砂資料庫 的application.yml 組態檔
我們配置的 application.yml檔案如下:
type: com.zaxxer.hikari.HikariDataSource driver-class-name: com.sybase.jdbc4.jdbc.SybDriver url: jdbc:sybase:Tds:ip:2638/資料庫名;charset=cp936 username: dba password: sqlView Code
資料庫連接池:
druid: # 連接池的配置資訊 # 初始化大小,最小,最大 initial-size: 2 min-idle:2 maxActive: 20 # 配置獲取連接等待超時的時間 maxWait: 60000 # 配置間隔多久才進行一次檢測,檢測需要關閉的空閑連接,單位是毫秒 timeBetweenEvictionRunsMillis: 60000 # 配置一個連接在池中最小生存的時間,單位是毫秒 minEvictableIdleTimeMillis: 300000 validationQuery: SELECT 1 FROM DUAL testWhileIdle: true testOnBorrow: false testOnReturn: falseView Code
使用的jar 包: jconn-4.0.0.jar
原因:
springboot 默認資料連接池為:hikari ,默認初始創建最小連接數10,最大連接數20,最終導致每次服務啟動連接數為10
上圖配置 druid 的連接池不生效,導致使用springboot 默認連接池,
druid 貌似不支持sybase 資料庫驅動(jdbc4)
View Code
方案2.
引入另一個jar 組態檔:
引入的jar : <dependency> <groupId>net.sourceforge.jtds</groupId> <artifactId>jtds</artifactId> <version>1.3.1</version> </dependency> 組態檔: type: com.alibaba.druid.pool.DruidDataSource driver-class-name: net.sourceforge.jtds.jdbc.Driver url: jdbc:jtds:sybase://192.168.70.71:2638/disa_cim_160021 username: dba password: sqlView Code
執行結果:

檔案內容:
ALTER PROCEDURE "dba"."jtds000001" as insert into DISA.ProductionQueue160021(PatternKey, RequestedMouldCount) VALUES (?,?)
原因:
可能是sybase 資料庫版本高,jtds 這個jar不支持
以上兩個方案組態檔 啟動服務都正常
我是個雙魚座的小王子,沉浸在自己的代碼世界里,去探索這未知的世界,希望遇到更多的小伙伴一起前行!轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/545195.html
標籤:其他
上一篇:2022年冬pat乙級考試題目及代碼決議附部分錯誤原因
下一篇:Django uwsgi問題決議
