Rumah > pangkalan data > tutorial mysql > Mengapa Apl Node.js Saya Gagal Mengesahkan dengan MySQL 8.0?

Mengapa Apl Node.js Saya Gagal Mengesahkan dengan MySQL 8.0?

Susan Sarandon
Lepaskan: 2024-11-30 14:29:14
asal
179 orang telah melayarinya

Why is My Node.js App Failing to Authenticate with MySQL 8.0?

Isu Pengesahan Node.js dengan MySQL 8.0

Apabila cuba menyambung ke pangkalan data MySQL dengan akaun akar menggunakan Node.js, tertentu isu mungkin timbul. Ini amat relevan dengan MySQL 8.0, di mana pemalam pengesahan lalai telah berubah daripada mysql_native_password kepada caching_sha2_password.

Mesej Ralat dan Punca

Apabila cuba menyambung ke MySQL 8.0 dengan aplikasi Node.js, ralat berikut mungkin berlaku:

ER_NOT_SUPPORTED_AUTH_MODE: Client does not support authentication protocol requested by server; consider upgrading MySQL client
Salin selepas log masuk

Ralat ini menunjukkan bahawa pemacu MySQL Node.js tidak dapat menggunakan pemalam pengesahan baharu yang diperkenalkan dalam MySQL 8.0.

Penyelesaian:

Untuk menyelesaikan isu dan menyambung ke MySQL 8.0 menggunakan akaun akar, pemalam mysql_native_password boleh digunakan dan bukannya caching_sha2_password lalai. Ini boleh dicapai melalui salah satu kaedah berikut:

  1. Ubah akaun akar sedia ada:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'MyNewPass';
Salin selepas log masuk
  1. Buat pengguna baharu dengan pemalam yang diingini:
CREATE USER 'foo'@'localhost' IDENTIFIED WITH mysql_native_password BY 'bar';
Salin selepas log masuk

Penyelesaian Alternatif:

Sebagai alternatif, pihak rasmi Penyambung MySQL Node.js, yang berdasarkan Protokol X, boleh digunakan. Penyambung ini menyokong mod pengesahan baharu dalam MySQL 8.0.

Atas ialah kandungan terperinci Mengapa Apl Node.js Saya Gagal Mengesahkan dengan MySQL 8.0?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan