MySQL 8.0 एक नए डिफ़ॉल्ट प्रमाणीकरण प्लग इन का उपयोग करता है - caching_sha2_passwordए> - जबकि MySQL 5.7 ने एक अलग इस्तेमाल किया - mysql_native_passwordए> . वर्तमान में, MySQL के लिए समुदाय Node.js ड्राइवर नए सर्वर प्लगइन के लिए संगत क्लाइंट-साइड प्रमाणीकरण तंत्र का समर्थन नहीं करते हैं।
पुराने प्रमाणीकरण प्लग इन का उपयोग करने के लिए उपयोगकर्ता खाते के प्रकार को बदलना एक संभावित समाधान है:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'MyNewPass';
या एक ही प्लगइन का उपयोग करने वाला एक अलग बनाएं:
CREATE USER 'foo'@'localhost' IDENTIFIED WITH mysql_native_password BY 'bar';
एक पुल अनुरोध है समस्या को ठीक से हल करने के लिए पाइपलाइन में है।
दूसरा विकल्प आधिकारिक का उपयोग करना है MySQL Node.js कनेक्टर (पूर्ण प्रकटीकरण:मैं लीड देव हूं), जो X प्रोटोकॉल और पहले से ही नए प्रमाणीकरण मोड का समर्थन करता है।