After configuring Confluence with MySQL v8, getting INFO message about deprecated JDBC Driver
プラットフォームについて: Data Center - この記事は、Data Center プラットフォームのアトラシアン製品に適用されます。
このナレッジベース記事は製品の Data Center バージョン用に作成されています。Data Center 固有ではない機能の Data Center ナレッジベースは、製品のサーバー バージョンでも動作する可能性はありますが、テストは行われていません。サーバー*製品のサポートは 2024 年 2 月 15 日に終了しました。サーバー製品を利用している場合は、アトラシアンのサーバー製品のサポート終了のお知らせページにて移行オプションをご確認ください。
*Fisheye および Crucible は除く
要約
When upgrading the Confluence repository to MySQL v8 or when configuring a new Confluence environment with MySQL v8, you may get a INFO message related to the MySQL Driver used. =
Do note that starting with Confluence 8, MySQL 5.7 is not part of the Supported Platforms anymore.
環境
Confluence 7.19.X or Confluence 8.X running with MySQL v8
診断
In the atlassian-confluence.log
files you will notice the following message while starting Confluence:
2021-08-26 14:57:06,204 INFO [Catalina-utility-1] [atlassian.confluence.cluster.DefaultClusterConfigurationHelper] lambda$populateExistingClusterSetupConfig$5 Populating setup configuration if running with Cluster mode...
Loading class `com.mysql.jdbc.Driver'. This is deprecated. The new driver class is `com.mysql.cj.jdbc.Driver'. The driver is automatically registered via the SPI and manual loading of the driver class is generally unnecessary.
原因
MySQL changed the API Connector/J driver from com.mysql.jdbc.Driver to com.mysql.cj.jdbc.Driver. This is documented by MySQL itself under MySQL Connector Developer Guide > 4.4.1.3 Changes in the Connector
The name of the class that implements java.sql.Driver in MySQL Connector/J has changed from com.mysql.jdbc.Driver to com.mysql.cj.jdbc.Driver. The old class name has been deprecated.
ソリューション
To avoid these messages, you need to change the JDBC Driver name in your confluence.cfg.xml
as described in our documentation Configuring a datasource connection:
...
...
<property name="hibernate.connection.driver_class">com.mysql.cj.jdbc.Driver</property>
...
...
Please, restart Confluence after this change is implemented.