Navicat Premium が MySQL 8.0 に接続してエラー「1251」を報告する問題を解決する方法の分析

Navicat Premium が MySQL 8.0 に接続してエラー「1251」を報告する問題を解決する方法の分析

長い間何もしていなかった人は、努力をすると一生懸命働いていると思うようになります。

1. 問題

Navicat Premium MySQL 8.0接続するときにエラーを報告します:

1251 - クライアントはサーバーが要求した認証プロトコルをサポートしていません。MySQL クライアントのアップグレードを検討してください。

下位バージョンのNavicat Premiumはmsyql8に接続し、エラーを報告します

2. 理由

MySQL 8.0パスワード認証方法が変更されました。

MySQL 8.0のパスワード認証方法は次のとおりです。

mysql_ネイティブパスワード

より安全なパスワード暗号化方法を提供するために、 MySQL 8.0以降では、デフォルトのパスワード認証方法は次のとおりです。

キャッシュ_sha2_パスワード

エラー1251の理由も明らかです。

クライアントはサーバーが要求した認証プロトコルをサポートしていません。

中国語に翻訳すると、「クライアントはサーバーが要求した認証プロトコルをサポートしていません。」という意味になります。

Navicat Premium 11を使用してMySQL 8.0に接続しています。バージョンが低すぎるため、 caching_sha2_passwordのパスワード暗号化方式をサポートしていません。 !

MySQLコマンドライン ターミナルでは、バージョンとデフォルトのパスワード認証方法を表示できます。

root@プログラマーの一日:/#mysql -u root -p   
パスワードを入力してください: 
MySQL モニターへようこそ。 

マイSQL> 
マイSQL> 
# バージョンを確認するmysql> select version();
+-----------+
| バージョン() |
+-----------+
| 8.0.21 |
+-----------+
セット内の 1 行 (0.00 秒)

マイSQL> 
マイSQL> 
# デフォルトの暗号化方式を表示する mysql> 
mysql> mysql を使用します。

データベースが変更されました

マイSQL> 
mysql> ユーザーからホスト、ユーザー、プラグインを選択します。
+-----------+------------------+------------------------+
| ホスト | ユーザー | プラグイン |
+-----------+------------------+------------------------+
| % | ルート | caching_sha2_password |
| ローカルホスト | mysql.infoschema | caching_sha2_password |
| ローカルホスト | mysql.session | caching_sha2_password |
| ローカルホスト | mysql.sys | caching_sha2_password |
| ローカルホスト | ルート | caching_sha2_password |
+-----------+------------------+------------------------+
セット内の行数は 5 です (0.00 秒)

マイSQL>

ご覧のとおり、 MySQL 8.0すべてのユーザーのデフォルトのパスワード暗号化方法はcaching_sha2_passwordです。

3. 解決策

この問題を解決するには2つの方法があります。

  • 方法 1: MySQL 8.0のパスワード認証方法を変更します。
  • 方法 2: Navicat Premium新しいバージョンをインストールします。

どちらの方法も実行可能ですが、問題が起こりやすいため、暗号化ルールをランダムに変更しないことをお勧めします。そのため、 「方法2」を使用することをお勧めします。

3.1. MySQL 8.0パスワード認証方法を変更する

MySQLコマンドラインターミナルはそれぞれ次の操作を実行します。

# ルートユーザーのパスワードを「123456」に更新します。
# 「123456」を自分のパスワードに置き換える必要があることに注意してください。弱いパスワードは使用しないでください。
ALTER USER 'root'@'localhost' を '123456' によって mysql_native_password で識別します。

# パスワードの更新を有効にするために権限を更新します FLUSH PRIVILEGES;

簡単なデモンストレーション:

ステップ 1: mysqlコマンドライン ターミナルに入ります。

ルート@ed2a490912e5:/#mysql -u ルート -p
パスワードを入力してください: 

マイSQL>

ステップ 2: デフォルトのパスワード認証方法を確認します。

mysql> mysql を使用します。
mysql> ユーザーからホスト、ユーザー、プラグインを選択します。
+-----------+------------------+------------------------+
| ホスト | ユーザー | プラグイン |
+-----------+------------------+------------------------+
| % | ルート | caching_sha2_password |
| ローカルホスト | mysql.infoschema | caching_sha2_password |
| ローカルホスト | mysql.session | caching_sha2_password |
| ローカルホスト | mysql.sys | caching_sha2_password |
| ローカルホスト | ルート | caching_sha2_password |
+-----------+------------------+------------------------+
セット内の行数は 5 です (0.00 秒)

マイSQL>

ご覧のとおり、 rootユーザーのパスワード認証方法はcaching_sha2_passwordです。

ステップ 3: rootユーザーのパスワード認証方法を変更します。別のユーザーの場合は、 root別のユーザー名に置き換えます。パスワードを更新するのと同じです!

mysql> ALTER USER 'root'@'localhost' が mysql_native_password によって '123456' で識別されます。
クエリは正常、影響を受けた行は 0 行 (0.05 秒)

mysql> 権限をフラッシュします。
クエリは正常、影響を受けた行は 0 行 (0.04 秒)

ステップ 4: rootユーザーのパスワード認証方法を再度確認します。

mysql> ユーザーからホスト、ユーザー、プラグインを選択します。
+-----------+------------------+------------------------+
| ホスト | ユーザー | プラグイン |
+-----------+------------------+------------------------+
| % | ルート | caching_sha2_password |
| ローカルホスト | mysql.infoschema | caching_sha2_password |
| ローカルホスト | mysql.session | caching_sha2_password |
| ローカルホスト | mysql.sys | caching_sha2_password |
| ローカルホスト | ルート | mysql_native_password |
+-----------+------------------+------------------------+
セット内の行数は 5 です (0.00 秒)

rootユーザーのパスワード認証方法がmysql_native_password変更されていることに注意してください。

Navicat Premium 11を使用してMySQL 8.0に再度接続すると、接続は成功します

接続に成功しました

繰り返しになりますが、パスワード認証方法を変更すると問題が発生する可能性が高く、お勧めできません。

3.2. Navicat Premium新バージョンをインストールする

私のテストによると、 Navicat Premium 12以降のバージョンはMySQL 8.0接続をサポートしています。最新バージョンはNavicat Premium 15です。公式ウェブサイトのダウンロードアドレス:

http://www.navicat.com.cn/download/navicat-premium

インストールは非常に簡単です。インストール パッケージを実行し、プロンプトに従って手順ごとにインストールするだけです。残念ながら、 Navicat Premiumは無料ソフトウェアではなく、永久ライセンスの価格はかなり高価です... 公式サイトの価格はRMB 4,449.0で、エンタープライズバージョンは RMB 10,000 を超えます。貧困は私を泣かせる。

非商用価格見積
エンタープライズ版の見積もり

幸いなことに、それは解読可能です! ! !
詳細については、Navicat Premium 15 永久クラックインストールチュートリアルを参照してください。

免責事項: これは技術的な情報交換のみを目的としています。いかなる法的紛争も私とは一切関係ありません。著作権侵害があった場合は削除いたしますのでご連絡ください。

添付はレンダリングです:

接続に成功しました

Navicat Premium で MySQL 8.0 に接続するときに発生するエラー「1251」の分析と解決に関するこの記事はこれで終わりです。 Navicat Premium で MySQL 8.0 に接続するときに発生するエラーに関する関連コンテンツの詳細については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。 今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Navicat Premium 12がOracleに接続したときにOracleライブラリがロードされない問題を解決します
  • Navicat Premium 12.0.29 のインストールとアクティベーションの超詳細なチュートリアル
  • Navicat グラフィカル インターフェイス Navicat Premium 12 のインストールと使用方法のチュートリアル

<<:  Javascript デザインパターン プロトタイプ モードの詳細

>>:  Dockerコンテナのデータボリュームの詳細な説明

推薦する

CentOS 7.4 で MySQL 5.7.28 バイナリモードをインストールする方法

Linuxシステムバージョン: CentOS7.4 MySQL バージョン: 5.7.28 Linu...

Javascript の基礎: 演算子とフロー制御の詳細な説明

目次1. オペレーター1.1 算術演算子1.2 インクリメント演算子とデクリメント演算子1.3 比較...

SQL ROW_NUMBER() および OVER() メソッドのケーススタディ

構文フォーマット: row_number() over(partition by grouping ...

CentOS 7にDockerをインストールする

Linuxシステムをお持ちでない場合は、ダウンロードとインストールについてはhttps://www....

MySQLのインデックス設計の原則と一般的なインデックスの違いについて簡単に説明します。

インデックス定義: ディスク上に保存される個別のデータベース構造であり、データ テーブル内のすべての...

シンプルなHTMLとCSSの使い方の詳細な説明

HTML と CSS を含む JD.com のホームページの静的ページ効果を 3 日間で完成させます...

MySQLの場合の使用例分析

まず、データベース テーブルを作成します。 テーブル `t_demo` を作成します ( `id` ...

MySQL テーブルにおける非主キー列オーバーフロー監視の詳細な説明

今日もまた罠に落ちてしまいました。 私は以前MySQLの主キーオーバーフローに遭遇したことがあり、そ...

コンパイル/サーバーなしでブラウザにCommonJSモジュールを実装する

目次導入1. one-click.jsとは2. パッケージングツールはどのように機能しますか? 3....

ネイティブ JavaScript メッセージボード

この記事では、参考までにメッセージボードを実装するためのJavaScriptの具体的なコードを紹介し...

HTML CSS を使用して div またはテーブルを指定した位置に固定する方法

CSSコードコンテンツをクリップボードにコピー.bottomTable{背景色: rgb (249,...

JavaScript における一般的な配列操作

目次1. 連結() 2. 結合() 3. プッシュ() 5. シフト() 6. シフト解除() 7....

React Fiberの仕組みの詳細な説明

目次React Fiberとは何ですか?なぜReact Fiberなのか? React Fiberは...

Windows Server 2012 でファイル サーバーを構築するための詳細な手順

ファイル サーバーは、企業内で最も一般的に使用されるサーバーの一つであり、主にファイル共有を提供する...

Web デザイン ヘルプ: Web フォント サイズ データ リファレンス

<br />内容はインターネットから転載したものです。どこから見つけたのか忘れてしまいま...