序文エラーは次のとおりです:
このタイプのエラーについては、説明を参照してください。一言で言えば、「JDBC ドライバーが例外をスローしたため、データベースに接続できませんでした。」 1. コードによって設定されたデータベース名またはパスワードがローカルデータベースと一致していません1.1. エラーの説明最初の、そして最も一般的なエラーは、コードによって構成されたデータベース名またはパスワードがローカル データベースと一致しておらず、例外がスローされることです。 上図に示すように、設定ファイルでは、先頭の name 属性はデフォルトであり、変更する必要はありません。ユーザー名は通常、root です。データベース管理ソフトウェアを通じてローカル設定を直接表示できます。データベース パスワードは、ユーザーが設定します。 1.2 解決策設定ファイルの名前とパスワードを変更します。 2. インポートされた非ローカルプロジェクトファイルがローカルデータベースのバージョンと一致しない2.1. エラーの説明2 番目によくあるエラー: IDE (Eclipse など) を使用してインポートされた非ローカル プロジェクト ファイルが、ローカル データベースのバージョンと一致しません。 たとえば、Eclipse プロジェクトにインポートする jar パッケージはバージョン 8.0 に依存しますが、ローカルにインストールした MySQL データベースはバージョン 5.0 なので、当然エラーが発生します。 2.2 解決策インポートしたプロジェクトで参照ライブラリを見つけ、右クリック → ビルド パス → ビルド パスの構成... を選択します。プロジェクトが依存する 8.0 MySQL ドライバーを削除し、ローカルにインストールした 5.0 バージョンを追加します。 3. MySQL 構成の上位バージョンでドライバー パッケージをロードする際にエラーが発生しました (MySQL 8.0 を例に挙げます)このエラーは、MySQL バージョンの更新後にドライバー パッケージが変更されたために発生します。新しいドライバー クラスは com.mysql.cj.jdbc.Driver です。 3.1. エラーの説明エラーは次のとおりです:
エラーの説明: ドライバー クラス 'com.mysql.jdbc.Driver' は非推奨です。新しいドライバー クラスは 'com.mysql.cj.jdbc.Driver' です。ドライバーは SPI 経由で自動的に登録されるため、通常はドライバー クラスを手動でロードする必要はありません。 3.2 解決策MySQL データベース 5.0 で使用されるドライバー クラス com.mysql.jdbc.Driver を com.mysql.cj.jdbc.Driver に変更します。ドライバーは SPI を通じて自動的に登録されるため、通常はドライバー クラスを手動でロードする必要はありません。変更された構成ファイルを次の図に示します。 <!-- データベース ドライバーをロードします --> <プロパティ名="driverClass" 値="com.mysql.cj.jdbc.Driver"></プロパティ> 3.3. MySQLの異なるバージョンのドライバクラスを表示する方法MySQL ドライバー クラスの場合、各バージョンを確認するときに、ドライバー jar パッケージをクリックして、ドライバーが配置されている場所を直接確認できます。たとえば、次の図に示すように、8.0 バージョンは com.mysql.cj.jdbc.Driver です。 4. データベース接続文字列の高バージョン構成エラー(タイムゾーンの問題)注意: MySQL バージョン 6.0 以降ではタイム ゾーンを設定する必要があります。 4.1. エラーの説明エラーは次のとおりです:
4.2 解決策より具体的なタイム ゾーン値を使用するようにサーバーまたは JDBC ドライバー (serverTimezone 構成プロパティ経由) を構成することにより、タイム ゾーン サポートを活用できます。 設定ファイルは次のとおりです。 <!-- データベース接続文字列 --> <プロパティ名="jdbcUrl" 値="jdbc:mysql://localhost:3306/demo?serverTimezone=GMT%2B8&characterEncoding=utf-8"></プロパティ> 5. データベースへのデータの書き込みに 8 時間の差があるのはなぜですか?5.1. エラーの説明Java データベース接続では、UTC タイムゾーン (協定世界時) が使用されます (serverTimezone=UTC)。北京時間は UTC 時間より 8 時間早い (UTC+08:00) です。serverTimezone=UTC を直接使用すると、データベースに書き込まれるデータは 8 時間進みます。次の構成を使用すると、データベースに書き込まれるデータは 8 時間間隔になります。 <!-- データベース接続文字列 --> <プロパティ名="jdbcUrl" 値="jdbc:mysql://localhost:3306/demo?serverTimezone=UTC&characterEncoding=utf-8"></プロパティ> 5.2 解決策サーバーのタイムゾーンを北京時間 GMT%、上海時間 Asia/Shanghai、または香港時間 Hongkong に変更できます。 設定ファイルは次のとおりです。 <!-- データベース接続文字列 --> <プロパティ名="jdbcUrl" 値="jdbc:mysql://localhost:3306/demo?serverTimezone=GMT%2B8&characterEncoding=utf-8"></プロパティ> また、MySQL の my.ini 設定ファイルも変更できます。この記事は、該当する問題を解決するためだけに使用されているため、詳細には説明しません。 6. SSL接続の問題6.1. エラーの説明エラーは次のとおりです:
エラーの説明: サーバー認証なしで SSL 接続を確立することは推奨されません。 MySQL 5.5.45+、5.6.26+、および 5.7.6+ の SSL 接続要件によれば、接続モードが設定されていない場合は、デフォルトで SSL 接続を確立する必要があります。 SSL を使用しない既存のアプリケーションの場合、サーバーの verify-certificate プロパティは「false」に設定されます。 useSSL=false を設定して SSL を明示的に無効にするか、useSSL=true を設定してサーバーの検証済み証明書を提供する必要があります。 6.2 解決策
設定ファイルは次のとおりです。 <!-- データベース接続文字列 --> <プロパティ名="jdbcUrl" 値="jdbc:mysql://localhost:3306/demo?useSSL=false&serverTimezone=GMT%2B8&characterEncoding=utf-8"></プロパティ> 要約するMySQL 例外に対する一般的な解決策をいくつかまとめることで、基礎となる MySQL の理解を深めることができます。開発をしている限り、ミスは絶えず起こるので、まとめるのが上手でなければなりません。同時に、開発の基本原則を完全に理解し、開発者としてさまざまなバージョンの反復に遅れずについていく必要があります。そうしないと、技術の発展に追いつくことはできません。 上記は、MySQL 例外に対するいくつかの一般的な解決策の詳細な分析です。MySQL 例外の解決策の詳細については、123WORDPRESS.COM の他の関連記事に注目してください。 以下もご興味があるかもしれません:
|
<<: Nginx は高可用性クラスタ構築を実装します (Keepalived+Haproxy+Nginx)
>>: モバイルアダプティブスタイルで@mediaを使用する方法
この記事は、WindowsでのMySQL 8.0.11のインストールチュートリアルを記録しています。...
ウェブサイトの解析を高速化するために、動的ページと静的ページを異なるサーバーで解析して、解析速度を向...
1. my.iniファイルにskip-grant-tablesを追加し、MySQLサーバーを再起動し...
1. VMware Workstation 上の Linux: 1. ソースの更新(オプション) v...
コードをコピーコードは次のとおりです。 <!DOCTYPE html> <html...
MySQL 外部キー制約の無効化と有効化: MySQL 外部キー制約が有効になっているかどうかは、グ...
いくつかの概念行ボックス: インライン ボックスを囲むボックス。1 つ以上の行ボックスが積み重ねられ...
目次1. MySQL アーキテクチャ2. ネットワーク接続層3. データベースサービス層4. 接続プ...
Linux システムには 2 種類のスケジュールされたタスクがあります。1 つは 1 回だけ実行され...
適用シナリオ:新しい要件の 1 つはアンケート調査を行うことですが、必然的に多くの質問が含まれ、1 ...
テキストシャドウテキストシャドウ: 水平オフセット 垂直オフセット ぼかし色互換性: IE10+ &...
目次Docker イメージ鏡とは何ですか? Dockerイメージの読み込み原理コミットミラーDock...
目次総合的な比較アクティブの観点から機能的な観点から詳細な比較1. エース2. コードミラー3. モ...
目次1: webpackをビルドする2. データハイジャック3: まとめ1: webpackをビルド...
昨年、この公開書簡は大ヒットし、羅永浩氏を驚かせた。今日、著者が新しい章を発表するとは思ってもみなか...