Вечное подключение к SQL, через Node js
const connection = mysql.createConnection({
host : 'localhost',
user : 'sa',
password : '1234',
database: 'TodoList',
port: 3306
});
connection.connect();
connection.query('SELECT * FROM Todo',function(err, rows, fields) {
if (err) throw err;
console.log('The solution is: ', rows);
});
connection.end();
К самому серверу я успешно подключался, через SQL server management, как через windows аутентификацию, так и через юзера sa. Порт 3306 открыл в SQL server configuration manager Вот лог ошибки после 2 минут ожидания
Error: read ECONNRESET
at TCP.onStreamRead (node:internal/stream_base_commons:217:20)
--------------------
at Protocol._enqueue (C:\Users\Лера\Documents\html\sqltest\node_modules\mysql\lib\protocol\Protocol.js:144:48)
at Protocol.handshake (C:\Users\Лера\Documents\html\sqltest\node_modules\mysql\lib\protocol\Protocol.js:51:23)
at Connection.connect (C:\Users\Лера\Documents\html\sqltest\node_modules\mysql\lib\Connection.js:116:18)
at Object.<anonymous> (C:\Users\Лера\Documents\html\sqltest\app.js:10:12)
at Module._compile (node:internal/modules/cjs/loader:1159:14)
at Module._extensions..js (node:internal/modules/cjs/loader:1213:10)
at Module.load (node:internal/modules/cjs/loader:1037:32)
at Module._load (node:internal/modules/cjs/loader:878:12)
at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12)
at node:internal/main/run_main_module:23:47 {
errno: -4077,
code: 'ECONNRESET',
syscall: 'read',
fatal: true
}
Подскажите решение проблемы UPDATE Я переопределил зависимости и переписал код
{
"dependencies": {
"express": "^4.18.2",
"mssql": "^9.0.1"
},
"name": "sqltest",
"version": "1.0.0",
"main": "app.js",
"scripts": {
"start": "node app.js"
},
"author": "",
"license": "ISC",
"description": ""
}
const sql = require('mssql')
const sqlConfig = {
user: 'sa',
password: '1234',
database: 'TodoList',
server: 'localhost',
port: 1433,
pool: {
max: 10,
min: 0,
idleTimeoutMillis: 30000
},
options: {
encrypt: true, // for azure
trustServerCertificate: false // change to true for local dev / self-signed certs
}
}
async () => {
try {
// make sure that any items are correctly URL encoded in the connection string
await sql.connect(sqlConfig)
const result = await sql.query`select * from Todo`
console.log('test')
console.dir(result)
} catch (err) {
// ... error checks
}
}
однако соединение, все равно не работает ничего не выводит, даже ошибки
PS C:\Users\Лера\Documents\html\sqltest> npm run start
> [email protected] start
> node app.js
PS C:\Users\Лера\Documents\html\sqltest>
