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コンテナのデータボリュームの詳細な説明

推薦する

XHTML 入門チュートリアル: テキストの書式設定と特殊文字

<br />このセクションでは、XHTML でテキストの書式設定と特殊文字を実装する方法...

Vueがsweetalert2プロンプトコンポーネントを統合する際の問題についてお話ししましょう

目次1. プロジェクト統合1. CDNインポート方法: 2. 箱の梱包を確認する3. 迅速な箱詰め4...

Nginx での Frp による https への強制リダイレクト設定の詳細な説明

自宅のルーターが300Mの帯域幅を80Mに強制的に減らしたため、3205Uソフトルーターを購入しまし...

MySQLテーブル名の大文字と小文字を区別しない設定方法の詳細な説明

デフォルトでは、Linux の MySQL はテーブル名の大文字と小文字を区別します。 MySQL ...

MySQL 5.7.33 インストール プロセスの詳細な図解

目次インストールパッケージのダウンロードインストール環境変数の設定インストールが成功したか確認する記...

Vue.jsフレームワークはショッピングカート機能を実装します

この記事では、ショッピングカートを実装するためのVue.jsフレームワークの具体的なコードを参考まで...

MySQL マスタースレーブレプリケーションと読み取り書き込み分離の詳細な説明

目次序文1. 概要2. 読み取りと書き込みの分離3. MySQL マスタースレーブレプリケーションの...

Datagrip2020 が MySQL ドライバーのダウンロードに失敗する

「downloadlaod」を直接クリックしてもダウンロードできない場合は、ここからダウンロードす...

WeChat ミニプログラム 宝くじ番号ジェネレーター

この記事では、WeChatアプレットの宝くじ番号ジェネレータの具体的なコードを参考までに紹介します。...

docker を使用して Django テクノロジー スタック プロジェクトをデプロイする方法

Docker の人気と成熟に伴い、Docker は徐々にプロジェクトをデプロイするための第一の選択肢...

MySQLインデックスベースのストレステストの実装

1. データベースデータをシミュレートする1-1 データベースとテーブルスクリプトを作成する - v...

HTML2 キャンバス SVG が認識されない場合の解決策

ウェブページを画像としてキャプチャする新機能があったので、人気のhtml2canvasを使ってみまし...

JavaScript フロー制御 (分岐)

目次1. プロセス制御2. シーケンシャルプロセス制御3. 分岐フロー制御if文1. 支店構造2. ...

CentOS7でMySQL 5.7をアンインストールする方法

MySQLに何がインストールされているか確認する rpm -qa | grep -i mysql n...

MySQL の時間タイプとモードの詳細

目次1. MySQL の時刻型2. タイムゾーンを確認する3. 不正な時間値4. 厳密モード5. 事...