mysql-connector-java8.0.27 へのアップグレードに関する注意事項

mysql-connector-java8.0.27 へのアップグレードに関する注意事項

最近、オンライン セキュリティ スキャンにより、MySQL コネクタに脆弱性が見つかりました。確認したところ、使用されていたバージョンは 5.1.47 で、かなり前のバージョンであることがわかりました。

最新バージョン8.0.27にアップグレードすることをお勧めします

アップグレードには常に何らかの問題があります。コネクタを変更した後、デプロイメントでエラーが報告されました。

### データベースのクエリ中にエラーが発生しました。原因: java.lang.RuntimeException: java.lang.ClassNotFoundException: com.mysql.jdbc.jdbc2.optional.MysqlDataSource

データベースに接続できません

構成ファイルを検索したところ、接続プール構成接続のクラスが見つからないことがわかりました。

mysql-connector-java 5.1.47に戻すと、このクラスは見つかります。

jar パッケージのソースコードを確認すると、mysql-connector-java 8.0.27 を変更した後、jdbc に接続するクラスのパスが変更されていることがわかりました。これは大きな問題です。

最後に、com.mysql.cj.jdbc.MysqlDataSourceに変更します。

最後に、mysql8.0+のデータベース接続構成を添付します。

jdbc.driverClassName=com.mysql.cj.jdbc.Driver

jdbc.url=jdbc:mysql://*****?useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&autoReconnect=true&allowMultiQueries=true&useSSL=false&serverTimezone=Asia/Shanghai&rewriteBatchedStatements=true

フレームワークの残りの構成は

<spring_version>4.3.29.RELEASE</spring_version>

<mybatis_version>3.4.0</mybatis_version>

<mybatis_spring_version>1.3.0</mybatis_spring_version>

mysql-connector-java8.0.27 へのアップグレードに関する注意事項は以上です。mysql-connector-java8.0.27 の詳細については、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • MySQL 8.0.27 のインストールと設定方法のグラフィック チュートリアル (Windows 64 ビット)
  • mysql8.0.27 の設定手順と注意事項
  • Linux 7.6 バイナリに MySQL 8.0.27 をインストールする詳細な手順
  • Ubuntu 20 での MySQL 8.0.28 のインストールとアンインストールのチュートリアル
  • Ubuntu MySQL 8.0.28 のインストールと設定方法のグラフィックチュートリアル
  • Windows の無料インストール MySQL 8.0.28 バージョンのグラフィック チュートリアル
  • mysql 8.0.28 winx64.zip インストールと設定方法のグラフィックチュートリアル
  • Windows での MySQL 8.0.28 のインストールと設定のチュートリアル
  • MySQL 8.0.28 のインストールと設定方法のグラフィックチュートリアル
  • Windows での MySQL 8.0.27 のインストールと設定方法のグラフィック チュートリアル

<<:  Docker rocketmq デプロイメントの実装例

>>:  Vue3 の ref toRef と toRefs の違いを理解する方法

推薦する

MySQL で置換操作を使用したときにデータ損失が発生する問題の解決策

序文同社の開発者は、データの更新時に replace into ステートメントを使用していました。不...

CSS 擬似要素::マーカーの詳細な説明

この記事では、CSS ::markerの興味深い疑似要素を紹介します。これを使用すると、テキスト番号...

2つのNode.jsプロセスがどのように通信するかの詳細な説明

目次序文異なるコンピュータ上の 2 つの Node.js プロセス間の通信TCPソケットの使用HTT...

MySQL で CURRENT_TIMESTAMP を使用する方法

目次CURRENT_TIMESTAMPの使用CURRENT_TIMESTAMPを使用したタイムスタン...

JavaScript ベースのシンプルなカルーセルの実装

この記事では、シンプルなカルーセルを実装するためのJavaScriptの具体的なコードを参考までに紹...

MySQL マルチインスタンス インストール ブート自動起動サービス設定プロセス

1.MySQLの複数インスタンスMySQL マルチインスタンスとは、1 台以上のマシン上で複数の M...

MySQL デュアルマシン ホットスタンバイ実装ソリューション [テスト可能]

目次1. コンセプト2. 環境の説明3. マスタースレーブホットスタンバイ実装1. コンセプト1. ...

Linux カーネル デバイス ドライバー システム コールに関する注意事項

/**************************** * システムコール**********...

ネイティブjsはショッピングカートのロジックと機能を実装します

この記事の例では、ショッピングカートのロジックと機能を実装するためのjsの具体的なコードを共有してい...

Vue3とTypeScriptを組み合わせたプロジェクト開発の実践記録

目次概要1. コンポジションAPI 1. ref と reactive の違いは何ですか? 2. 周...

vue2.x の徹底研究 - h 関数の説明

目次解決、要約: vue プロジェクト。 .vue ファイルのテンプレート内に記述されたコードは、w...

単一の MySQL テーブル内の行数が 500 万を超えてはいけないのはなぜですか?

今日は、興味深いトピックについてお話ししましょう。データベースとテーブルを分割することを検討する前に...

Mysql マスタースレーブ同期構成の実践の詳細な説明

1. はじめに以前、「MySQL マスター スレーブ同期の原理」という記事を書きました。この記事を読...

リモート Linux システムでポートが開いているかどうかを確認する 3 つの方法

これは、Linux 管理者だけでなく、私たち全員にとって非常に重要なトピックです。つまり、IT イン...

Dockerの高可用性構成の詳細な説明

Docker の作成Docker Compose は、管理対象コンテナをプロジェクト、サービス、コン...