MySQL コネクタ エラー: タイム ゾーンの不一致
Java コネクタ経由で MySQL データベースに接続しようとすると、次のようなエラーが発生する場合があります。 「サーバーのタイムゾーン値「中央ヨーロッパ時間」が認識されません。」この問題は、MySQL サーバーがサポートされていない、または曖昧なタイム ゾーンを使用するように構成されている場合に発生します。
このエラーを解決するには、次の手順に従います。
-
MySQL サーバー構成の確認: MySQL サーバーが有効かつ特定のタイムゾーンで構成されていることを確認します。サーバー構成ファイル (my.cnf) には、タイムゾーン パラメータが設定された [mysqld] セクションが含まれている必要があります。
-
MySQL コネクタ プロパティの更新: 確立時に MySQL コネクタ URL にserverTimezone パラメータを追加します。データベース接続。このパラメータは、日付と時刻を解釈するときに使用するタイムゾーンを指定します。質問に記載されている URL の「CEST」を、「ヨーロッパ/アムステルダム」や「UTC」などの有効なタイムゾーンに置き換えます。
-
レガシー日時コードを使用します: の使用を無効にします。接続 URL で useLegacyDatetimeCode パラメータを false に設定することで、MySQL コネクタのレガシー日時コードを削除します。これにより、コネクタは日時処理に JDBC 4.2 API を使用するようになり、タイム ゾーンのサポートが強化されます。
-
XML 構成でのエスケープ アンパサンド: 接続 URL が XML 構成ファイルで指定されている場合、「&」を使用してアンパサンド文字 (&) をエスケープします。これは、アンパサンドがエンティティ参照の開始として解析されるのを防ぐために XML で必要です。
これらの手順に従うことで、タイム ゾーンの不一致に関連する MySQL コネクタ エラーを解決し、データベースへの接続に成功しました。
以上がMySQL コネクタのタイムゾーン不一致エラーをトラブルシューティングするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。