node js sql
-
שלום לכולם
אני מנסה להתחבר לשרת sql דרך נוד
ואני מקבל שגיאה כזוClient does not support authentication protocol requested by server; consider upgrading MySQL client',
ואני ממש לא יודע איפה הבעיה האם זה בקוד
או שההתקנה של השרת SQL לא הייתה טובה
כל מי שיכול לעזור לי אשמח מאוד
תודה -
חיפוש גוגל עשיתם?
א"כ עשיתם מה שכתוב בתוצאה הראשונה?
א"כ איפה נתקעתם? -
@אביחיל
כפי שמצויין בהודעת השגיאה, זה נובע מכיוון שMySQL משתמש במנגנון אימות בשם ״mysql_native_password״ שכידוע אינו נתמך על ידי mysql.js ב Node.js.הפתרון במקרה הזה הוא כמובן לשנות ל״מנגנון״ אימות שנתמך ב-Node.js כדוגמת המנגנון ״ caching_sha2_password״, או המנגנון ״ mysql_old_password״.
תוכל למצוא מגוון מדריכים באינטרנט כיצד לשנות את מנגנון האימות בMySQL.
(אגב, ללא ספק מנגנון האימות ״mysql_native_password״ מאובטח יותר, הבעיה מתחילה בספרייה שמשמשת אותך לחיבור, להבנתי mysql.js, שכבר שלש שנים לא עדכנו את הספרייה לפתירת הבעיה. לחילופין תוכל להשתמש בספריות שבהם הבנתי שהבעיה נפתרה, כדוגמת MySQL Connecter X DevAPI וmysql2.js).בהצלחה