我有 confluence 和 jira 在獨立伺服器上運行。
我剛剛升級了 confluence - 沒有問題。它運行時連接到 mysql,並在我們談論最新版本時啟動。
我剛剛更新了 jira,但它說無法連接到資料庫:
資料庫:我們發現 MySQL 支援的版本有錯誤!您的 dbconfig.xml 中的資料庫類型設定為 MySQL 5.7,而您的 MySQL 版本不同。考慮改用 MySQL 5.7 資料庫類型 有關更改資料庫類型的更多信息,請參閱我們的文件。
但資料庫配置或資料庫版本從未改變。
我將 .jar 從 mysql-connector-java-5.1.48 更新為:
mysql-connector-java-5.1.48-bin.jar
但還是連接不上。
dbconfig 看起來像:
<?xml version="1.0" encoding="UTF-8"?>
<jira-database-config>
<name>defaultDS</name>
<delegator-name>default</delegator-name>
<database-type>mysql57</database-type>
<jdbc-datasource>
<url>jdbc:mysql://dbserver:3306/jiradb?useUnicode=true&characterEncoding=UTF8&sessionVariables=default_storage_engine=InnoDB</url>
<driver-class>com.mysql.jdbc.Driver</driver-class>
<username>jiradb</username>
<password>somepassword</password>
<pool-min-size>20</pool-min-size>
<pool-max-size>20</pool-max-size>
<pool-max-wait>30000</pool-max-wait>
<validation-query>select 1</validation-query>
<min-evictable-idle-time-millis>60000</min-evictable-idle-time-millis>
<time-between-eviction-runs-millis>300000</time-between-eviction-runs-millis>
<pool-max-idle>20</pool-max-idle>
<pool-remove-abandoned>true</pool-remove-abandoned>
<pool-remove-abandoned-timeout>300</pool-remove-abandoned-timeout>
<pool-test-on-borrow>false</pool-test-on-borrow>
<pool-test-while-idle>true</pool-test-while-idle>
<validation-query-timeout>3</validation-query-timeout>
</jdbc-datasource>
</jira-database-config>
如果不回滾一切,我不知道該怎麼做,還有其他人遇到類似的問題嗎?
我已經回滾了整個伺服器(包括資料庫),但 JIRA 仍然無法啟動:/有人有什麼想法嗎?
答案1
將 JIRA 升級到版本 8.19.0 後,我的三個實例之一遇到了相同的問題。我有一個容器化部署,所有三個實例都使用相同的 JIRA 映像和相同的 MySQL 映像,但只有一個實例受到影響。
對我來說,解決方案是將allowPublicKeyRetrieval=true
參數添加到 URL 中。
<url>jdbc:mysql://mysql:3306/jira?useUnicode=true&characterEncoding=utf8&allowPublicKeyRetrieval=true&useSSL=false&sessionVariables=default_storage_engine=InnoDB</url>