MySQL 8.0 menggunakan plugin otentikasi default baru - caching_sha2_password - sedangkan MySQL 5.7 menggunakan yang berbeda - mysql_native_password . Saat ini, driver Node.js komunitas untuk MySQL tidak mendukung mekanisme otentikasi sisi klien yang kompatibel untuk plugin server baru.
Solusi yang mungkin adalah mengubah jenis akun pengguna untuk menggunakan plugin autentikasi lama:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'MyNewPass';
Atau buat plugin lain yang menggunakan plugin yang sama:
CREATE USER 'foo'@'localhost' IDENTIFIED WITH mysql_native_password BY 'bar';
Ada permintaan tarik dalam jalur untuk mengatasi masalah dengan benar.
Opsi lainnya adalah menggunakan resmi Konektor MySQL Node.js (pengungkapan penuh:Saya adalah pengembang utama), yang didasarkan pada Protokol X dan sudah mendukung mode otentikasi baru.