MySQL に接続できません - エラー コード ER_NOT_SUPPORTED_AUTH_MODE
P粉736935587
P粉736935587 2023-08-26 15:09:04
0
1
476
<p>MySQL でデータベースを作成し、JS を使用してデータベースに接続したいと考えています。以下はこのために書いたコードですが、エラーが発生します。 </p> <pre class="brush:php;toolbar:false;">const mysql = require('mysql'); var mysqlConnection = mysql.createConnection({ ホスト: 'ローカルホスト'、 ユーザー: 'root'、 パスワード:'********'、 データベース:「従業員DB」 }); mysqlConnection.connect((err) => { もし(!エラー) console.log('DB 接続に成功しました'); それ以外 console.log('DB 接続に失敗しました \n エラー :' JSON.stringify(err, 未定義, 2)); });</pre> <p>ホスト名を変更し、権限を取り消したり付与したりしてみました(どちらもできませんでした)。データベースを削除して再作成し、再度接続を試みます。データベースに接続するはずですが、理解できないエラーが発生します。エラー メッセージは次のとおりです。 </p> <pre class="brush:php;toolbar:false;">DB 接続に失敗しました エラー :{ 「コード」: 「ER_NOT_SUPPORTED_AUTH_MODE」、 「エラー番号」: 1251、 "sqlMessage": "クライアントはサーバーによって要求された認証プロトコルをサポートしていません。MySQL クライアントのアップグレードを検討してください", "sqlState": "08004"、 「致命的」: true }</pre> <p>ホスト名変更後:</p> <pre class="brush:php;toolbar:false;">DB 接続に失敗しました エラー :{ 「コード」: 「ER_HOST_NOT_PRIVILEGED」、 「エラー番号」: 1130、 "sqlMessage": "ホスト 'Mistycyrus.bbrouter' はこの MySQL サーバーへの接続を許可されていません", 「致命的」: true }</pre></p>
P粉736935587
P粉736935587

全員に返信(1)
P粉546138344

最初のエラー「クライアントは、サーバーが要求した認証プロトコルをサポートしていません。MySQL クライアントのアップグレードを検討してください」の場合は、次のことを行う必要があります:

  1. DLL ファイル「libmySQL.dll」が最新であることを確認してください。
  2. あなたのアカウントは「古い認証プロトコル パスワード」で作成され、サーバーは現在「新しい認証プロトコル パスワード」を使用している可能性があります。詳細については、ドキュメントを参照してください。

2 番目のエラー「ホスト 'Mistycyrus.bbrouter' はこの MySQL サーバーへの接続を許可されていません」の場合、ユーザー 'someone'@'Mistycyrus.bbrouter' を使用して接続しており、そのユーザーは接続は許可されていません。

  1. bbrouter という単語に基づくと、以前に Thomson ルーターに似たものを見たことがあるため、お使いのルーターに関連している可能性があります。
  2. hosts ファイルを確認してください。 hosts ファイルに 127.0.0.1 localhost という行が含まれていることを確認してください。
いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!