問題の説明:
最近インストールされた mysql8 は、navicat を使用して接続しようとすると、常に次のエラーを返します。
2. インターネットで理由を調べてみると、以前のバージョンの mysql8 では暗号化ルールが mysql_native_password でしたが、mysql8 以降では暗号化ルールが caching_sha2_password になっていることがわかりました。この問題を解決するには 2 つの方法があります。1 つは navicat ドライバーをアップグレードすること、もう 1 つは mysql ユーザーのログイン パスワードの暗号化ルールを mysql_native_password に戻すことです。クラックされたバージョンの navicat が使用されているため、2 番目の方法しか実行できません。解決するために使用します;
3. まず、クラックされたバージョンの navicat を使用し、管理者として cmd を実行し、コマンドを使用して mysql に入ります。
#次に、mysql のインストール時に設定した root パスワードを入力して入力します。入力後のインターフェイスは次のようになります。
注: mysql -u root -p と入力すると、cmd は、mysql が内部コマンドでも外部コマンドでもないことを示すプロンプトを表示します。ファイルを処理して、以前に mysql をインストールした後に環境変数 PATH に mysql へのパスを追加しなかったことを示します。この方法は記事の最後で提案されています;
4. 次に、最初に mysql の暗号化方法を変更します。手順は次のとおりです:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;
5. 次に、パスワードを変更します。暗号化ルールが変更されたため、パスワードを再設定する必要があります;
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';
6. 最後に、データベースを更新します;
FLUSH PRIVILEGES;
最後に、環境内の mysql へのパスを追加する方法を書き留めます。変数 PATH;
(ビデオ共有の学習: mysql ビデオ チュートリアル )
1.Win r-->services.msc-->mysql を右クリックしますサービス --> プロパティ --> 実行可能ファイルのパスを見つけてコピーします。
2. [マイ コンピュータ] を右クリック --> プロパティ --> システムの詳細設定 --> 環境変数-->システム変数-->パス-->編集-->新規-->上記の「実行可能パス」(以下に示す);
## 関連する推奨事項:以上がnavicat が mysql8 に接続するときに 1251 エラーが発生する理由は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。