Tedious: خطأ في الاتصال: فشل الاتصال بـ {{host}}: 1433 - لا يمكن الاتصال بالكتابة بعد إتلاف التدفق

تم إنشاؤها على ٢٩ يوليو ٢٠١٩  ·  14تعليقات  ·  مصدر: tediousjs/tedious

خطأ أثناء الاتصال بقاعدة البيانات (Sql Server 2008 R2)

أنا أستخدم "mssql": "^ 5.1.0"

أنا قادر على الاتصال بالمضيف المحلي و SQL Server 2017

[Nest] 29632 - 07/29/2019 ، 9:34 مساءً [TypeOrmModule] غير قادر على الاتصال بقاعدة البيانات. إعادة المحاولة (1) ... + 876 مللي ثانية
خطأ في الاتصال: فشل الاتصال بـ {{host}}: 1433 - لا يمكن الاتصال بالكتابة بعد إتلاف التدفق
في اتصال.(nrwlnode_modulesmssqllibtedious.js: 244: 17)
في Object.onceWrapper (events.js: 288: 20)
في Connection.emit (events.js: 200: 13)
في Connection.socketError (nrwlnode_modulestediouslibconnection.js: 1098: 12)
في المقبس.(nrwlnode_modulestediouslibconnection.js: 971: 14)
في Socket.emit (events.js: 205: 15)
عند الخطأ OrDestroy (داخلي / تيارات / إتلاف.جس: 107: 12)
في onwriteError (_stream_writable.js: 432: 5)
في onwrite (_stream_writable.js: 459: 5)
في doWrite (_stream_writable.js: 413: 11)

يرجى اقتراح بعض الحلول :)

Idle

التعليق الأكثر فائدة

انسى ذلك! encrypt غير مشفر

ال 14 كومينتر

مرحبًا @ bj9215 ،

ما هو إصدار مملة الذي تستخدمه؟ يستخدم Mssql package.json إصدارًا قديمًا من مملة (الإصدار الحالي الممل هو v6.2.0). حاول تحديث ذلك ومعرفة ما إذا كان يساعد؟ :)

ما هو إصدار Node.js الذي تعمل عليه؟ هل لديك تمكين التشفير؟

نظرًا لأنك تحاول الاتصال بإصدار أقدم من SQL Server ، فأنت على الأرجح بحاجة إلى تعديل إعدادات التشفير لاستخدام إصدار أقدم من TLS واستخدام ciphersuite المدعوم على كل من SQL Server 2008 وإصدار Node.js الذي تستخدمه يستخدمون.

@ bj9215 هل ما زلت تواجه هذه المشكلة؟

لدي نفس الفكرة "مملة": "6.6.2" ،

const config = {
    server: 'local-sql-host',
    authentication: {
        type: 'default',
        options: {
            userName: process.env.AUTH_LOCAL_USR,
            password: process.env.AUTH_LOCAL_PWD,
        },
    },
    options: {
        database: 'DATABASE_NAME',
        encrypted: false,
    },
}
debug connected to {local-sql-host}:1433
debug State change: Connecting -> SentPrelogin
debug State change: SentPrelogin -> SentTLSSSLNegotiation
debug Failed to connect to {local-sql-host}:1433 - Cannot call write after a stream was destroyed
connect $db> test.(): ConnectionError: Failed to connect to {local-sql-host}:1433 - Cannot call write after a stream was de
stroyed
    at ConnectionError (C:\workspace\api-v3\dist\webpack:\node_modules\tedious\lib\errors.js:13:1)
    at Connection.socketError (C:\workspace\api-v3\dist\webpack:\node_modules\tedious\lib\connection.js:1258:1)
    at Socket.<anonymous> (C:\workspace\api-v3\dist\webpack:\node_modules\tedious\lib\connection.js:1093:1)
    at Socket.emit (events.js:215:7)
    at errorOrDestroy (internal/streams/destroy.js:108:12)
    at onwriteError (_stream_writable.js:446:5)
    at onwrite (_stream_writable.js:473:5)
    at doWrite (_stream_writable.js:427:11)
    at writeOrBuffer (_stream_writable.js:415:5)
    at Socket.Writable.write (_stream_writable.js:305:11) {
  message: 'Failed to connect to {local-sql-host}:1433 - Cannot call write after a stream was destroyed',
  code: 'ESOCKET'
}
debug State change: SentTLSSSLNegotiation -> Final
debug Connection lost - 99404:error:1425F102:SSL routines:ssl_choose_client_version:unsupported protocol:c:\ws\deps\o
penssl\openssl\ssl\statem\statem_lib.c:1929:

ConnectionError: Connection lost - 99404:error:1425F102:SSL routines:ssl_choose_client_version:unsupported protocol:c
:\ws\deps\openssl\openssl\ssl\statem\statem_lib.c:1929:

    at ConnectionError (C:\workspace\api-v3\dist\webpack:\node_modules\tedious\lib\errors.js:13:1)
    at Connection.socketError (C:\workspace\api-v3\dist\webpack:\node_modules\tedious\lib\connection.js:1262:1)
    at Socket.<anonymous> (C:\workspace\api-v3\dist\webpack:\node_modules\tedious\lib\connection.js:1093:1)
    at Socket.emit (events.js:210:5)
    at emitErrorNT (internal/streams/destroy.js:92:8)
    at emitErrorAndCloseNT (internal/streams/destroy.js:60:3)
    at processTicksAndRejections (internal/process/task_queues.js:80:21)
[ERROR] 12:23:11 ConnectionError

انسى ذلك! encrypt غير مشفر

@ bj9215 الإغلاق الآن. لا تتردد في إعادة الفتح إذا كنت لا تزال تواجه هذه المشكلة!

مليون شكر !!

واجهتني نفس المشكلة. يبدو أن node-mssql غيرت التشفير الافتراضي من خطأ إلى صحيح في PR هذا:
https://github.com/tediousjs/node-mssql/pull/977

ساعدني تعليق مشكلتي أيضًا - حيث أدى تعيين "تشفير" على خطأ إلى حل

@ crazyx13th شكرا ، هذا ساعدني

انسى ذلك! encrypt ، غير مشفر ~

هذا ما إذا كنت تحاول الإصلاح في أسبوع واحد.
رسالة الخطأ غير مفهومة للغاية.

ما هو إصدار Node.js الذي تعمل عليه؟ هل لديك تمكين التشفير؟

نظرًا لأنك تحاول الاتصال بإصدار أقدم من SQL Server ، فأنت على الأرجح بحاجة إلى تعديل إعدادات التشفير لاستخدام إصدار أقدم من TLS واستخدام ciphersuite المدعوم على كل من SQL Server 2008 وإصدار Node.js الذي تستخدمه يستخدمون.

شكرا. هذا حل المشكلة. لقد أضفت للتو علم _

مرحبًا ، لدي نفس الخطأ وقد حاولت بالفعل فعل ما علقوا عليه سابقًا وما زلت أتلقى نفس الخطأ
خطأ في الاتصال: فشل الاتصال بـ {host}: 1433 - لا يمكن الاتصال بالكتابة بعد إتلاف الدفق

هذه هي سلسلة الاتصال الخاصة بي.

تكوين const = {
المستخدم: "المستخدم" ،
كلمة المرور: "كلمة المرور" ،
الخادم المضيف'،
قاعدة البيانات: "name-dataBase"،
حمام سباحة: {
الحد الأقصى: 230 ،
الحد الأدنى: 0
}
} ؛

لقد استخدمت للتو هذه المعلمة في خيارات اتصال قاعدة البيانات ، الخيارات: {encrypt: false}

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات