חיבור MySQL עם NodeJS

Connecting Mysql With Nodejs



שרת MySQL הוא שרת מסדי נתונים פופולרי מאוד והוא נתמך על ידי שפות תכנות בשימוש לרוב, כגון PHP, Python, Perl, Java, C#וכו '. זהו יישום קוד פתוח, כך שכל אחד יכול להוריד את היישום הזה לאחסון, אחזור. , עדכון ומחיקה של נתונים באמצעות שאילתות מסדי נתונים. תדרש להתקין את חבילות השרת והלקוח במערכת שלך לביצוע פעולות מסד נתונים שונות בשרת הנתונים. שרת MySQL הופך כעת לפופולרי גם עבור מפתחי Node. מפתחי הצומת מתחילים להשתמש בשרת MySQL עם MongoDB עבור כמה תכונות מיוחדות של שרת MySQL. כיצד תוכל ליצור חיבור עם שרת MySQL באמצעות לקוח node-mysql מוצג במדריך זה.

תְנַאִי מוּקדָם:

לפני שתתחיל במדריך זה עליך לאשר שחבילות שרת וחבילות הלקוח של MySQL מותקנות ועובדות כראוי במערכת שלך. אם אתה מתקין את שרת MySQL בפעם הראשונה אז הסיסמה של משתמש השורש ריקה כברירת מחדל. אך עליך להגדיר את הסיסמה עבור משתמש השורש כדי ליצור חיבור עם שרת MySQL באמצעות node-mysql לָקוּחַ. אתה יכול לבדוק זאת הדרכה לדעת כיצד לשנות את סיסמת השורש של שרת MySQL.







הפעל את הפקודות הבאות כדי לעבוד כמשתמש שורש והתחבר לשרת MySQL באמצעות לקוח MySQL.



$סודו -אני
$ mysql-uשורש-p

הזן את סיסמת השורש והפעל את פקודות ה- SQL הבאות ליצירת מסד נתונים חדש, צור טבלה במסד הנתונים הזה והכנס כמה רשומות בטבלה זו.



הפקודה הבאה תיצור מסד נתונים בשם mydb .





לִיצוֹר מאגר מידע mydb;

הפקודה הבאה לבחירת מסד הנתונים לביצוע פעולות מסד נתונים.

להשתמש mydb;

הפקודה הבאה תיצור טבלה בשם סֵפֶר במאגר הנתונים mydb.



לִיצוֹר שולחן סֵפֶר(
תְעוּדַת זֶהוּת INT (6) לא חתום AUTO_INCREMENT מפתח ראשי ,
כותרת VARCHAR (חמישים) לֹא ריק ,
מְחַבֵּר VARCHAR (חמישים) לֹא ריק ,
מחיר int (5));

הפקודה הבאה תוסיף ארבע רשומות סֵפֶר שולחן.

לְהַכנִיס לְתוֹך סֵפֶר ערכים
( ריק ,'לימוד PHP ו- MySQL', 'רובין ניקסון', ארבע חמש),
( ריק ,'למידת JQuery', 'יונתן', 35),
( ריק ,'זוויתי בפעולה', 'ג'רמי', חמישים),
( ריק ,'מאסטרינג לאראבל', 'כריסטופר', 55);

התקן את לקוח mysql עבור nodejs:

הפעל את הפקודה הבאה כדי לבדוק nodejs מותקן במערכת לפני הפעלת הפקודה להתקנת לקוח mysql של nodejs. הוא יציג את הגירסה המותקנת של nodejs.

$צוֹמֶת-v

אם הוא לא מותקן, עליך להתקין אותו על ידי הפעלת הפקודה הבאה.

$סודו apt-get להתקיןnodejs

תזדקק לחבילה נוספת בשם מעל פני הים להתקנה במערכת להתקנת לקוח mysql עבור nodejs. אם הוא אינו מותקן לפני הפעל את הפקודה הבאה להתקנה מעל פני הים .

$סודו apt-get להתקיןמעל פני הים

כעת, הפעל את הפקודה הבאה כדי לעדכן את המערכת.

$סודו עדכון apt-get

הפקודה הבאה תתקין mysql מודול עבור nodejs שיעבוד כלקוח mysql.

$מעל פני היםלהתקיןmysql

חיבור MySQL פשוט באמצעות NodeJS:

צור קובץ JS בשם connection1.js עם התסריט הבא ליצירת חיבור עם מסד הנתונים שנוצר בעבר בשם mydb ולקרוא נתונים מ סֵפֶר שולחן. mysql המודול מיובא ומשמש ליצירת חיבור פשוט עם שרת MySQL. לאחר מכן, תתבצע שאילתה לקריאת כל הרשומות סֵפֶר טבלה, אם מסד הנתונים מחובר כראוי. אם השאילתה בוצעה כראוי אז כל הרשומות של סֵפֶר הטבלה תודפס במסוף וחיבור מסד הנתונים ייסגר.

connection1.js

// ייבא מודול mysql
תן ל- mysql=לִדרוֹשׁ('mysql');

// הגדרת פרמטר חיבור למסד נתונים
תנו לחיבור=mysql.ליצור חיבור({
מנחה: 'מארח מקומי',
מִשׁתַמֵשׁ: 'שורש',
סיסמה: '1234',
מאגר מידע: 'mydb'
});

// התחבר למסד הנתונים
חיבור.לְחַבֵּר(פוּנקצִיָה(וכן) {
אם (וכן) {

// הצג הודעת שגיאה על כישלון
לַחֲזוֹרלְנַחֵם.שְׁגִיאָה('שגיאה:' +וכן.הוֹדָעָה);
}

// הצג הודעת הצלחה אם אתה מחובר
לְנַחֵם.עֵץ(' nמחובר לשרת MySQL ... n');
});

// הגדר את הודעת השאילתה
שאילתת $= 'בחר * מתוך הספר';

// בצע את שאילתת מסד הנתונים
חיבור.שאילתא(שאילתת $, פוּנקצִיָה(וכן,שורות) {
אם(וכן){

// הצג את הודעת השגיאה
לְנַחֵם.עֵץ('אירעה שגיאה בביצוע השאילתה.');
לַחֲזוֹר;
}
/* הצג את הנתונים המעוצבים שאוחזרו מטבלת 'ספר'
שימוש עבור לולאה */

לְנַחֵם.עֵץ('הרשומות של שולחן הספרים: n');
לְנַחֵם.עֵץ('כותרת t t t tמְחַבֵּר t tמחיר n');
ל(תנו לשורת שורות) {
לְנַחֵם.עֵץ(שׁוּרָה['כותרת'],' t t',שׁוּרָה['מְחַבֵּר'],' t','$',שׁוּרָה['מחיר']);
}
});

// סגור את חיבור מסד הנתונים
חיבור.סוֹף(פוּנקצִיָה(){
לְנַחֵם.עֵץ(' nהחיבור נסגר. n');
});

תְפוּקָה:

הפעל את הפקודה הבאה לביצוע התסריט.

$צומת חיבור1.js

הפלט הבא יופיע לאחר הפעלת התסריט.

חיבור MySQL מאוחד באמצעות NodeJS:

יצירת חיבור MySQL פשוט עם NodeJS באמצעות mysql המודול מוצג בדוגמה הקודמת. אך משתמשים רבים יכולים להתחבר לשרת מסד הנתונים בכל פעם באמצעות האפליקציה כאשר האפליקציה נוצרת עם MySQL מסד נתונים לצורכי ייצור. אתה תדרוש את אֶקְסְפּרֶס מודול לטיפול במשתמשי מסד נתונים במקביל ותמיכה בחיבורי מסד נתונים מרובים.

הפעל את הפקודה הבאה כדי להתקין את אֶקְסְפּרֶס מודול.

$מעל פני היםלהתקיןאֶקְסְפּרֶס

צור קובץ JS בשם connection2.js עם התסריט הבא. אם אתה מתחבר עם MySQL עם הסקריפט הבא, 10 משתמשים בו זמנית יוכלו ליצור חיבור עם שרת מסד הנתונים ולאחזר נתונים מהטבלה על סמך השאילתה. זה יבצע חיבור בנמל 5000.

connection2.js

// ייבא מודול mysql
איפהmysql=לִדרוֹשׁ('mysql');

// ייבוא ​​מודול אקספרס
איפהאֶקְסְפּרֶס=לִדרוֹשׁ('אֶקְסְפּרֶס');

// הגדר את האובייקט של מודול אקספרס
איפהאפליקציה=אֶקְסְפּרֶס();

// צור חיבור למסד נתונים כדי להתמודד עם 10 משתמשים במקביל
איפהבריכה=mysql.createPool({
connectionLimit:10,
מנחה: 'מארח מקומי',
מִשׁתַמֵשׁ: 'שורש',
סיסמה: '1234',
מאגר מידע: 'mydb',
לנפות: נָכוֹן
});

/* צור חיבור מאוחד עם מסד נתונים וקרא רשומות ספציפיות מתוך טבלה של זה
מאגר מידע */

פוּנקצִיָהhandle_database(בַּקָשָׁה,תְגוּבָה) {

// צור קשר
בריכה.getConnection(פוּנקצִיָה(וכן,חיבור){
אם (וכן) {

// שלח הודעת שגיאה לחיבור שלא הצליח וסיים
תְגוּבָה.json({'קוד' : 300, 'סטָטוּס' : 'טעות בחיבור מסד נתונים'});
לַחֲזוֹר;
}

// הצג הודעת הצלחה במסוף
לְנַחֵם.עֵץ('מסד נתונים מחובר');

// קרא רשומות מסוימות משולחן הספרים
חיבור.שאילתא('SELECT * מתוך הספר שבו כותרת כמו'%PHP%'או כותרת כמו
'%Laravel%' '
,פוּנקצִיָה(וכן,שורות){חיבור.לְשַׁחְרֵר();
אם(!וכן) {

// החזר את קבוצת התוצאות של השאילתה אם היא בוצעה בהצלחה
תְגוּבָה.json(שורות);
}
});

// בדוק אם מתרחשת שגיאת החיבור או לא
חיבור.עַל('שְׁגִיאָה', פוּנקצִיָה(וכן) {
תְגוּבָה.json({'קוד' : 300, 'סטָטוּס' : 'טעות בחיבור מסד נתונים'});
לַחֲזוֹר;
});
});
}

// התקשר לפונקציה ליצירת חיבורים
אפליקציה.לקבל('/',פוּנקצִיָה(בַּקָשָׁה,תְגוּבָה){-
handle_database(בַּקָשָׁה,תְגוּבָה);
});

// האזן לבקשת החיבור ביציאה 5000
אפליקציה.להקשיב(5000);

תְפוּקָה:

הפעל את הסקריפט מהמסוף כמו הדוגמה הקודמת. הוא יחכה לבקשת החיבור לאחר הפעלת הסקריפט.

$צומת חיבור2.js

כעת, פתח כל דפדפן ועבור אל כתובת האתר הבאה כדי לשלוח בקשת חיבור.

http: // localhost: 5000

הפלט הבא יופיע כתגובה לאחר ביצוע השאילתה.

אם תפתח את הטרמינל כעת, תראה את הפלט הבא.

ניתן לשלוח בכל פעם עשר בקשות חיבור מ -10 דפדפנים באופן שהוזכר לעיל.

סיכום:

הדרכים הפשוטות ביותר לעבודה עם MySQL ו- NodeJS מוצגות על ידי שתי דוגמאות במדריך זה. אם אתה מפתח צומת חדש ורוצה לעבוד עם מסד נתונים MySQL אז אני מקווה שתוכל לבצע את המשימה שלך לאחר קריאת הדרכה זו.