一、Node連接MySQL資料庫
Node.js提供了支持很多資料庫的模塊,其中之一是用於連接MySQL資料庫的模塊。下面我們將介紹如何用Node.js連接MySQL資料庫。
二、Node連接MySQL使用協議
Node.js連接MySQL使用的協議是TCP/IP協議,這意味著要使用MySQL的默認埠(3306埠)來連接。
三、Node連接MySQL失敗
如果連接MySQL失敗,可以通過以下方法進行排查錯誤:
1.檢查MySQL伺服器是否啟動,並且是否允許遠程連接。
2.檢查MySQL用戶名和密碼是否正確。
3.檢查MySQL主機名和埠號是否正確。
四、Node連接MySQL8
如果你正在使用MySQL8,可能會遇到以下錯誤:
Authentication plugin ‘caching_sha2_password’ cannot be loaded
解決方法:
1.在MySQL中,運行以下命令:
ALTER USER 'username'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
其中,’username’和’password’分別是你的MySQL用戶名和密碼。
2.使用mysqljs/mysql模塊的版本大於2.0.0。
五、Node連接MySQL的模塊
Node.js連接MySQL需要使用mysql模塊,可以通過以下命令來安裝該模塊:
npm install mysql
使用mysql模塊,連接MySQL需要進行以下步驟:
1.創建連接對象:使用mysql.createConnection()函數創建連接對象。
2.連接MySQL:使用connection.connect()函數連接MySQL。
3.執行查詢:使用connection.query()函數執行查詢,傳入SQL語句和回調函數。
4.關閉連接:使用connection.end()函數關閉連接。
六、Node連接MySQL輸出undefined
如果在執行查詢時,回調函數的結果輸出undefined,可能是因為回調函數沒有在查詢完成後正確地輸出結果。
正確的查詢代碼應該如下所示:
connection.query('SELECT * FROM table_name', function(error, results, fields) {
if (error) throw error;
console.log(results);
});
七、Node連接MySQL報錯
如果在連接MySQL時,報出以下錯誤:
ER_NOT_SUPPORTED_AUTH_MODE: Client does not support authentication protocol requested by server; consider upgrading MySQL client
解決方法:
1.在MySQL中,運行以下命令:
ALTER USER 'username'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
其中,’username’和’password’分別是你的MySQL用戶名和密碼。
2.使用mysqljs/mysql模塊的版本大於2.0.0。
八、Node連接MySQL命令
以下是Node.js連接MySQL常用的命令:
var mysql = require('mysql');
var connection = mysql.createConnection({
host : 'localhost',
user : 'username',
password : 'password',
database : 'database_name'
});
connection.connect();
connection.query('SELECT * FROM table_name', function(error, results, fields) {
if (error) throw error;
console.log(results);
});
connection.end();
九、Node連接MySQL埠
默認情況下,MySQL使用3306埠。如果想要修改MySQL的連接埠,可以在創建連接對象時指定port選項。
例如,要連接MySQL的8000埠,代碼應該如下所示:
var mysql = require('mysql');
var connection = mysql.createConnection({
host : 'localhost',
user : 'username',
password : 'password',
port : 8000,
database : 'database_name'
});
connection.connect();
connection.query('SELECT * FROM table_name', function(error, results, fields) {
if (error) throw error;
console.log(results);
});
connection.end();
十、Vue連接MySQL
要在Vue中連接MySQL,可以使用axios和express模塊,如下所示:
1.安裝express和mysql模塊:
npm install express mysql
2.連接MySQL:
var mysql = require('mysql');
var connection = mysql.createPool({
connectionLimit : 10,
host : 'localhost',
user : 'username',
password : 'password',
database : 'database_name'
});
3.使用axios在Vue中發送ajax請求,如下所示:
import axios from 'axios';
axios.get('/get_data')
.then(response => {
console.log(response.data);
})
.catch(error => {
console.log(error);
});
4.在Node.js中,使用express處理請求,如下所示:
var express = require('express');
var app = express();
app.get('/get_data', function(req, res) {
connection.query('SELECT * FROM table_name', function(error, results, fields) {
if (error) throw error;
res.send(results);
});
});
app.listen(3000);
其中,’/get_data’是前端請求的URL地址,’SELECT * FROM table_name’是要執行的SQL語句。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/201255.html