Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Membetulkan Ralat Pengesahan MySQL 8.0: Tidak Padan Protokol Pelanggan dalam Node.JS?

Bagaimana untuk Membetulkan Ralat Pengesahan MySQL 8.0: Tidak Padan Protokol Pelanggan dalam Node.JS?

DDD
DDDasal
2024-12-31 06:32:21361semak imbas

How to Fix MySQL 8.0 Authentication Error: Client Protocol Mismatch in Node.JS?

Ralat Pengesahan MySQL 8.0: Tidak Padan Protokol Pelanggan

Banyak pengguna menghadapi ralat semasa cuba mewujudkan sambungan dengan MySQL 8.0 menggunakan Node.JS:

Error: ER_NOT_SUPPORTED_AUTH_MODE: Client does not support authentication protocol requested by server; consider upgrading MySQL client

Penyelesaian

Untuk menyelesaikan isu ini, laksanakan arahan berikut dalam Meja Kerja MySQL:

  • ALTER PENGGUNA 'root'@'localhost' DIKENAL PASTI DENGAN mysql_native_password OLEH 'kata laluan';
  • keistimewaan flush;

Pastikan untuk menggantikan 'root', 'localhost' dan 'password' dengan pengguna, hos dan kata laluan khusus anda.

Jika kaedah di atas gagal, cuba laksanakan arahan pertama tanpa memasukkan @'localhost'.

Penjelasan

MySQL 8.0 memperkenalkan kaedah pengesahan lalai caching_sha2_password, yang tidak disokong oleh versi klien MySQL yang lebih lama. Dengan mengemas kini kaedah pengesahan pengguna kepada mysql_native_password, pelanggan boleh berjaya mengesahkan dengan pelayan.

Nota Tambahan

  • Jika anda tidak dapat menyambung ke MySQL Workbench menggunakan pengguna root, anda mungkin perlu menetapkan semula kata laluan root menggunakan yang berikut langkah:

    • Hentikan perkhidmatan MySQL.
    • Mulakan perkhidmatan MySQL menggunakan pilihan --skip-grant-tables.
    • Sambung ke MySQL pelayan sebagai pengguna root tanpa kata laluan.
    • Tetapkan semula kata laluan root menggunakan arahan berikut: TETAPKAN KATA LALUAN UNTUK 'root'@'localhost' = PASSWORD('new_password');
    • Mulakan semula perkhidmatan MySQL.
  • Jika anda menghadapi sebarang isu lain , rujuk sumber berikut:

    • Dokumentasi MySQL: https://dev.mysql.com/doc/refman/5.5/en/old-client.html
    • Isu GitHub: https://github.com/mysqljs/mysql/issues/1507

Atas ialah kandungan terperinci Bagaimana untuk Membetulkan Ralat Pengesahan MySQL 8.0: Tidak Padan Protokol Pelanggan dalam Node.JS?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn