ข้ามไปที่เนื้อหาหลัก
การสนับสนุน
ลงชื่อเข้าใช้
ลงชื่อเข้าใช้ด้วย Microsoft
ลงชื่อเข้าใช้หรือสร้างบัญชี
สวัสดี
เลือกบัญชีอื่น
คุณมีหลายบัญชี
เลือกบัญชีที่คุณต้องการลงชื่อเข้าใช้

สรุป

เมื่อคุณใช้ไดรเวอร์ ODBC ของ SQL Server, SQL Server OLE DB provider หรือผู้ให้บริการที่มีการจัดการ System.Data.SqlClient คุณสามารถปิดใช้งานการเชื่อมต่อร่วมกันโดยแอพลิเคชันที่เกี่ยวข้องเฟซการเขียนโปรแกรม) เมื่อคุณปิดใช้งานการทำพูลเก็บ ความเค้นบนไลบรารีเครือข่าย SQL Server อยู่ภายใต้อาจจะเพิ่มขึ้นถ้าโปรแกรมประยุกต์ของคุณมักเปิด และปิดการเชื่อมต่อ บทความนี้อธิบายการตั้งค่า TCP/IP บางอย่างที่คุณอาจจำเป็นต้องปรับปรุงภายใต้เงื่อนไขเหล่านี้

ข้อมูลเพิ่มเติม

การปิดการทำพูลเก็บอาจทำให้ไดรเวอร์เครือข่าย SQL Server อยู่ภายใต้การเปิด และปิดการเชื่อมต่อซ็อกเก็ตใหม่ไปยังคอมพิวเตอร์ที่กำลังเรียกใช้ SQL Server อย่างรวดเร็ว คุณอาจต้องเปลี่ยนการตั้งค่าการซ็อกเก็ต TCP/IP ค่าเริ่มต้นสำหรับระบบปฏิบัติการและคอมพิวเตอร์ที่กำลังเรียกใช้ SQL Server เพื่อจัดการกับระดับความเค้นสูงกว่า

โปรดสังเกตว่า บทความนี้อธิบายการตั้งค่าที่ส่งผลต่อไลบรารีเครือข่ายของ SQL Server เมื่อคุณใช้โพรโทคอล TCP/IP เท่านั้น การปิดการทำพูลเก็บทำให้เกิดปัญหาความเค้นที่เกี่ยวข้องกับโพรโทคอลอื่น ๆ เซิร์ฟเวอร์ SQL เช่นไปป์ที่ระบุชื่อ แต่บทความนี้ไม่ได้กล่าวถึงหัวข้อนี้ บทความนี้มีไว้สำหรับผู้ใช้ขั้นสูงเท่านั้น หากคุณไม่เข้าใจหัวข้อในบทความนี้ Microsoft แนะนำให้ คุณดูดีหนังสือเกี่ยวกับ TCP/IP sockets

โปรดสังเกตว่า Microsoft ขอแนะนำให้ คุณเสมอใช้ร่วมกับไดรเวอร์ของ SQL Server ใช้ร่วมกันอย่างมากช่วยปรับปรุงประสิทธิภาพโดยรวมบนฝั่งไคลเอ็นต์และฝั่งเซิร์ฟเวอร์ SQL เมื่อคุณใช้ไดรเวอร์ของ SQL Server ใช้ร่วมกันอย่างมากนอกจากนี้ลดปริมาณการใช้เครือข่ายไปยังคอมพิวเตอร์ที่กำลังเรียกใช้ SQL Server ตัวอย่างเช่น การทดสอบตัวอย่างที่ใช้ 20000 SQL Server เชื่อมต่อเปิด และปิด โดยการเปิดใช้งานการทำพูลเก็บ ใช้แพคเก็ตเครือข่าย TCP/IP ประมาณ 160 สำหรับผลรวมของไบต์ 23,520 ของกิจกรรมของเครือข่าย ด้วยการทำพูลเก็บการปิดการใช้งาน การทดสอบตัวอย่างเดียวกันที่สร้างขึ้น 225,129 TCP/IP แพ็คเกจเครือข่าย สำหรับผลรวมของไบต์ 27,209,622 ของกิจกรรมของเครือข่าย

หมายเหตุว่า เมื่อคุณเห็นปัญหาซ็อกเก็ต TCP/IP ที่เกี่ยวข้องกับความเค้นกับไลบรารีเครือข่าย SQL Server คุณอาจได้รับข้อความแสดงข้อผิดพลาดต่อไปนี้อย่างน้อยหนึ่งเมื่อคุณพยายามเชื่อมต่อไปยังคอมพิวเตอร์ที่กำลังเรียกใช้ SQL Server:

ไม่มีเซิร์ฟเวอร์ SQL หรือการเข้าถึงถูกปฏิเสธ

การหมดเวลาหมดอายุ

ข้อผิดพลาดของเครือข่ายทั่วไป

ผู้ให้บริการ TCP: การใช้เพียงหนึ่งของแต่ละที่อยู่ซ็อกเก็ต (โพรโทคอล/พอร์ตเครือข่ายที่อยู่ /) คือโดยปกติได้

หมายเหตุว่า คุณยังสามารถรับข้อความแสดงข้อผิดพลาดเฉพาะเหล่านี้เมื่อมีการเกิดปัญหาอื่น ๆ กับ SQL Server ตัวอย่างเช่น คุณอาจได้รับข้อความแสดงข้อผิดพลาดเหล่านี้ ถ้าคอมพิวเตอร์ระยะไกลที่กำลังเรียกใช้ SQL Server ถูกปิดลง ถ้าคอมพิวเตอร์ระยะไกลที่กำลังเรียกใช้ SQL Server ไม่ฟัง TCP/IP sockets เลย ถ้ามีการเชื่อมต่อเครือข่ายไปยังคอมพิวเตอร์ที่กำลังเรียกใช้ SQL Server จะใช้งานไม่ได้เนื่องจากสายเคเบิลเครือข่ายจะถูกดึงออกมา หรือ ถ้าคุณกำลังมีปัญหาเกี่ยวกับการแก้ปัญหา DNS โดยปกติแล้วสิ่งที่อาจทำให้เกิดการไคลเอ็นต์ล้มเหลวเมื่อต้องการเปิดซ็อกเก็ต TCP/IP ไปยังคอมพิวเตอร์ที่กำลังเรียกใช้ SQL Server สามารถทำให้เกิดข้อผิดพลาด อย่างไรก็ตาม กับประเด็นเกี่ยวข้องกับความเค้นซ็อกเก็ต เกิดปัญหาขึ้นเป็นระยะ ๆ ขณะความเค้น rises และอยู่ คอมพิวเตอร์อาจใช้เวลาสักชั่วโมงที่ไม่มีข้อผิดพลาด จาก นั้นข้อผิดพลาดเกิดขึ้นในเวลาหนึ่ง หรือสอง และคอมพิวเตอร์จาก นั้นเรียกใช้สำหรับหลายชั่วโมงขึ้นไป มีข้อผิดพลาดไม่ นอกจากนี้ เมื่อคุณมีปัญหานี้ ทั่วไปเชื่อมต่อกับ SQL Server ทำงานโต้ตอบแบบทันทีหนึ่ง ล้มเหลวถัดไป แล้วทำงานแบบโต้ตอบแบบทันทีถัดไปอีกใหม่ อีกนัยหนึ่ง การตัดสินค้าจากคลังที่เกี่ยวข้องกับความเค้นซ็อกเก็ตโดยทั่วไปเกิดขึ้น sporadically แต่จริงปัญหาการเชื่อมต่อเครือข่ายกับ SQL Server โดยทั่วไปจะไม่เกิดขึ้น sporadically

สองหลักที่เกี่ยวข้องกับความเค้นปัญหาโดยทั่วไปจะเกิดขึ้นเมื่อคุณปิดการใช้งานร่วมกันในขณะที่คุณใช้โพรโทคอล TCP/IP ของเซิร์ฟเวอร์ SQL: คุณอาจไม่เพียงพอพอร์ตแบบไม่ระบุชื่อบนคอมพิวเตอร์ไคลเอนต์ หรือคุณอาจมีเกินWinsockListenBacklogเริ่มต้นการตั้งค่าบนคอมพิวเตอร์ที่กำลังเรียกใช้ SQL Server


สำหรับข้อมูลเพิ่มเติมเกี่ยวกับพอร์ตแบบไม่ระบุชื่อ คลิกหมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:

319502 PRB: 'WSAEADDRESSINUSE' ข้อผิดพลาดเมื่อคุณพยายามเชื่อมต่อผ่านพอร์ตไม่ระบุชื่อหลังจากที่คุณเพิ่มขีดจำกัดการเชื่อมต่อ IMAP

ปรับการตั้งค่า MaxUserPort และ TcpTimedWaitDelay

โปรดสังเกตว่าการตั้งค่าMaxUserPortและTcpTimedWaitDelayจะใช้ได้เฉพาะกับคอมพิวเตอร์แบบไคลเอ็นต์ที่จะเปิดอย่างรวดเร็ว และปิดการเชื่อมต่อกับคอมพิวเตอร์ระยะไกลที่กำลังเรียกใช้ SQL Server และที่ ไม่ได้ใช้การทำพูลเก็บการเชื่อมต่อ ตัวอย่างเช่น การตั้งค่าเหล่านี้จะใช้ได้บนเซิร์ฟเวอร์ Internet Information Services (IIS) ที่กำลังให้บริการคำขอ HTTP เข้ามาเป็นจำนวนมาก และที่จะเปิด และปิดการเชื่อมต่อกับคอมพิวเตอร์ระยะไกลที่กำลังเรียกใช้ SQL Server และที่ใช้โพรโทคอล TCP/IP ด้วยการปิดใช้งานการทำพูลเก็บ ถ้ามีการทำพูลเก็บการเปิดใช้งาน ไม่ได้ปรับการตั้งค่าMaxUserPortและTcpTimedWaitDelay

เมื่อคุณใช้โพรโทคอล TCP/IP เมื่อต้องการเปิดการเชื่อมต่อไปยังคอมพิวเตอร์ที่กำลังเรียกใช้ SQL Server ไลบรารีเครือข่าย SQL Server อยู่ภายใต้เปิดซ็อกเก็ต TCP/IP ไปยังคอมพิวเตอร์ที่กำลังเรียกใช้ SQL Server เมื่อเปิดซ็อกเก็ตนี้ ไลบรารีเครือข่ายของ SQL Server เปิดใช้งานตัวเลือกของซ็อกเก็ต TCP/IP ที่SO_REUSEADDR สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการตั้งค่าของซ็อกเก็ตSO_REUSEADDRดูหัวข้อ "ระดับ" ใน Microsoft Developer Network (MSDN)


โปรดสังเกตว่า ไลบรารีเครือข่ายของ SQL Server โดยเฉพาะไม่เปิดใช้งานตัวเลือกของซ็อกเก็ตSO_REUSEADDR TCP/IP สำหรับเหตุผลด้านความปลอดภัย เมื่อเปิดใช้งานSO_REUSEADDRผู้ใช้ที่มีเจตนาร้ายสามารถ hijack พอร์ตไคลเอนต์กับ SQL Server และใช้ข้อมูลประจำตัวที่ให้ไคลเอนต์การเข้าถึงคอมพิวเตอร์ที่กำลังเรียกใช้ SQL Server โดยค่าเริ่มต้น เนื่องจากไลบรารีเครือข่ายของ SQL Server ไม่เปิดใช้งานตัวเลือกซ็อกเก็ตSO_REUSEADDRทุกครั้งที่คุณเปิด และปิดซ็อกเก็ตโดยใช้ไลบรารีเครือข่ายของ SQL Server บนฝั่งไคลเอ็นต์ ซ็อกเก็ตเข้าสู่สถานะ TIME_WAIT สี่นาที ถ้าคุณได้อย่างรวดเร็วเปิดและปิดการเชื่อมต่อ SQL Server ผ่าน TCP/IP ด้วยการปิดใช้งานการทำพูลเก็บ คุณได้อย่างรวดเร็วเปิด และปิด TCP/IP sockets อีกนัยหนึ่ง แต่ละการเชื่อมต่อ SQL Server มีการซ็อกเก็ต TCP/IP หนึ่ง ถ้าคุณเปิดอย่างรวดเร็ว และปิด 4000 sockets ในน้อยกว่า 4 นาที คุณจะไปถึงค่าสูงสุดเริ่มต้นสำหรับพอร์ตแบบไม่ระบุชื่อของไคลเอนต์ และความพยายามในการเชื่อมต่อซ็อกเก็ตใหม่ล้มเหลวจนกว่าจะมี ชุดที่มีอยู่ของ TIME_WAIT sockets หมดเวลา

บนฝั่งไคลเอ็นต์ คุณอาจจะต้องเพิ่มการตั้งค่าMaxUserPortและTcpTimedWaitDelayที่มีการกล่าวถึงใน Q319502 เมื่อคุณได้ปิดการใช้งานร่วมกัน การตั้งค่าสำหรับค่าเหล่านี้จะถูกกำหนด โดยจำนวนการเชื่อมต่อ SQL Server เปิดและปิดเกิดขึ้นบนฝั่งไคลเอ็นต์ คุณสามารถตรวจสอบพอร์ตไคลเอนต์กี่อยู่ในสถานะ TIME_WAIT โดยใช้เครื่องมือ Netstat บนคอมพิวเตอร์ไคลเอนต์ เรียกใช้เครื่องมือ Netstat ด้วยค่าสถานะ-nดังนี้ และนับจำนวน sockets ไคลเอ็นต์ไปยังที่อยู่ IP ของเซิร์ฟเวอร์ SQL ของคุณที่อยู่ในสถานะ TIME_WAIT ในตัวอย่างนี้ อยู่ IP ของคอมพิวเตอร์ระยะไกลที่กำลังเรียกใช้ SQL Server คือ 10.10.10.20 อยู่ IP ของคอมพิวเตอร์ไคลเอนต์คือ 10.10.10.10 และสามสร้างการเชื่อมต่อและเชื่อมต่อสองอยู่ในสถานะ TIME_WAIT:

C:\>netstat -n
Active Connections

Proto Local Address Foreign Address State
TCP 10.10.10.10:2000 10.10.10.20:1433 ESTABLISHED
TCP 10.10.10.10:2001 10.10.10.20:1433 ESTABLISHED
TCP 10.10.10.10:2002 10.10.10.20:1433 ESTABLISHED
TCP 10.10.10.10:2003 10.10.10.20:1433 TIME_WAIT
TCP 10.10.10.10:2004 10.10.10.20:1433 TIME_WAIT

หากคุณรันการnetstat - nและคุณเห็นว่า ใกล้เคียงกับ 4000 เชื่อมต่อเสมือน ที่อยู่ของปลายทางคอมพิวเตอร์ที่กำลังเรียกใช้ SQL Server อยู่ในสถานะ TIME_WAIT ทั้งเพิ่มการตั้งค่าการเริ่มต้นMaxUserPortและคุณลดการตั้งค่าTcpTimedWaitDelayเพื่อให้คุณทำงานจากไคลเอนต์พอร์ตที่ไม่ระบุชื่อ ตัวอย่างเช่น คุณสามารถตั้งค่าการตั้งค่าMaxUserPortเป็น 20000 และตั้งค่าการตั้งค่าTcpTimedWaitDelayเป็น 30 การตั้งค่าTcpTimedWaitDelayล่างหมายความ ว่า sockets ที่รอในสถานะ TIME_WAIT เวลาน้อยลง การตั้งค่าMaxUserPortสูงกว่าซึ่งหมายความ ว่า คุณสามารถมี sockets เพิ่มเติมในสถานะ TIME_WAIT

หมายเหตุว่า ถ้าคุณปรับการตั้งค่าMaxUserPortหรือTcpTimedWaitDelayคุณต้องเริ่มการทำงาน Microsoft Windows สำหรับการตั้งค่าใหม่มีผลบังคับใช้ การตั้งค่าMaxUserPortและTcpTimedWaitDelayสำหรับคอมพิวเตอร์ไคลเอ็นต์ที่มีการพูดคุยกับคอมพิวเตอร์ที่กำลังเรียกใช้ SQL Server ผ่าน TCP/IP sockets ได้ การตั้งค่าเหล่านี้ไม่มีผลใด ๆ ถ้ามีการตั้งค่าบนคอมพิวเตอร์ที่กำลังเรียกใช้ SQL Server นอกจากว่าคุณกำลังทำการเชื่อมต่อซ็อกเก็ต TCP/IP ภายในเครื่องไปยังคอมพิวเตอร์ที่กำลังเรียกใช้ SQL Server

หมายเหตุ ถ้าคุณปรับการตั้งค่าMaxUserPortเราขอแนะนำว่า คุณควรจองพอร์ต 1434 สำหรับใช้ โดยบริการ SQL Server Browser (sqlbrowser.exe) สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการทำเช่นนี้ ให้คลิกหมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:

วิธีการจองช่วงของพอร์ตข้อมูลแบบชั่วคราวบนคอมพิวเตอร์ที่กำลังเรียกใช้ Windows Server 2003 หรือ Windows 2000 Server 812873

ปรับการตั้งค่า WinsockListenBacklog

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการตั้งค่ารีจิสทรีเฉพาะของ SQL Server นี้ คลิกหมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:

154628 INF: SQL ล็อก 17832 กับการร้องขอการเชื่อมต่อ TCP\IP หลาย
เมื่อไลบรารีเครือข่ายของ SQL Server ฟังบน TCP/IP sockets ไลบรารีเครือข่ายของ SQL Server ใช้การฟังWinsock API พารามิเตอร์ตัวสองสำหรับการฟังAPI คือ ยอดคงค้างที่ได้รับอนุญาตสำหรับซ็อกเก็ต ยอดคงค้างนี้แสดงถึงความยาวสูงสุดของคิวการรอการเชื่อมต่อสำหรับตัวฟังที่ เมื่อความยาวของคิวเกินความยาวสูงสุด ไลบรารีเครือข่ายของ SQL Server ทันทีปฏิเสธความพยายามเชื่อมต่อซ็อกเก็ต TCP/IP เพิ่มเติม นอกจากนี้ ไลบรารีเครือข่ายของ SQL Server ส่งแพ็คเก็ตระดาษ + ใหม่

ใช้ SQL Server 2000 เป็นค่าเริ่มต้นให้ฟังตั้งรายการคงค้างของ 5 ครั้ง ซึ่งหมายความ ว่า คอมพิวเตอร์ที่กำลังเรียกใช้ SQL Server ส่งผ่านค่า 5 กับพารามิเตอร์รายการงานค้างของการฟังWinsock API เมื่อ APIฟังต้องตั้งค่าโพรโทคอล TCP/IP ฟังเธรดบนคอมพิวเตอร์ที่กำลังเรียกใช้ SQL Server คุณสามารถปรับเปลี่ยนรีจิสทรีคีย์ WinsockListenBacklog เพื่อระบุค่าแตกต่างกันจะส่งผ่านไปสำหรับพารามิเตอร์นี้ เริ่มต้นใน SQL Server 2005 ไลบรารีเครือข่ายส่งผ่านค่าของ SOMAXCONN เป็นการตั้งค่ารายการคงค้างจะการฟังAPI SOMAXCONN ช่วยให้ผู้ให้บริการ Winsock เพื่อตั้งค่าสูงสุดที่เหมาะสมสำหรับการตั้งค่านี้ ดังนั้น คีย์รีจิสทรี WinsockListenBacklog จะไม่ใช้ หรือจำเป็นต้องใช้ใน SQL Server 2005

ยอดคงค้างการตั้งค่าการทำงานดังนี้: สมมติว่ามีการฟังบริการกำหนดสำหรับการร้องขอการซ็อกเก็ต TCP/IP ขาเข้า ถ้าคุณตั้งค่าการตั้งค่ารายการคงค้างเป็น 5 และร้องขอการเชื่อมต่อซ็อกเก็ตจำนวนมากจะส่งกระแสข้อมูลในอย่างต่อเนื่อง การบริการอาจไม่สามารถตอบสนองต่อการร้องขอขาเข้าที่รวดเร็วเท่าที่เข้ามา ณจุดนี้ เลเยอร์ของซ็อกเก็ต TCP/IP คิวคำขอขาเข้าในคิวรายการงานค้าง และบริการสามารถดึงคำขอออกจากคิวนี้ และจัดการการร้องขอการเชื่อมต่อซ็อกเก็ตเข้ามาในภายหลัง หลังจากที่คิวเต็ม เลเยอร์ของซ็อกเก็ต TCP/IP ไม่ยอมรับคำขอซ็อกเก็ตเพิ่มเติมใด ๆ ที่อยู่ในการส่งแพคเก็ตระดาษ + ใหม่กลับไปยังไคลเอนต์ ในทันที เพิ่มเพิ่มขนาดคิวรายการคงค้างที่เลเยอร์ของซ็อกเก็ต TCP/IP คิวก่อนที่จะถูกปฏิเสธการร้องขอการร้องขอจำนวนที่ค้างอยู่รอการเชื่อมต่อซ็อกเก็ต

โปรดสังเกตว่า การตั้งค่าWinsockListenBacklogเป็นข้อมูลเฉพาะกับ SQL Server SQL Server พยายามอ่านการตั้งค่ารีจิสทรีนี้เมื่อบริการ SQL Server เริ่มต้นครั้งแรก ถ้าไม่มีการตั้งค่า ไม่มีใช้ค่าเริ่มต้นของ 5 ถ้าการตั้งค่ารีจิสทรีที่มีอยู่ SQL Server อ่านการตั้งค่า และใช้ค่าให้มาเป็นการตั้งค่ารายการคงค้างเมื่อ WinSock API ฟังจะเรียกว่าเป็นซ็อกเก็ต TCP/IP ฟังเธรดจะถูกตั้งค่าภายใน SQL Server

การตรวจสอบว่า คุณกำลังเรียกใช้เป็นปัญหานี้ คุณสามารถเรียกใช้การติดตามการตรวจสอบเครือข่ายบนไคลเอนต์หรือคอมพิวเตอร์ที่กำลังเรียกใช้ SQL Server และค้นหาคำขอเชื่อมต่อซ็อกเก็ตที่ถูกปฏิเสธทันที ด้วยการระดาษ + ใหม่ ถ้าคุณตรวจสอบแพ็คเก็ต TCP/IP ในตัวตรวจสอบเครือข่าย คุณเห็นแพคเก็ตต่อไปนี้เมื่อเกิดปัญหานี้:

Frame: Base frame propertiesETHERNET:  EType = Internet IP (IPv4) 
IP: Protocol = TCP - Transmission Control; Packet ID = 40530; Total IP Length = 40; Options = No Options
TCP: Control Bits: .A.R.., len: 0, seq: 0-0, ack:3409265780, win: 0, src: 1433 dst: 4364
TCP: Source Port = 0x0599
TCP: Destination Port = 0x110C
TCP: Sequence Number = 0 (0x0)
TCP: Acknowledgement Number = 3409265780 (0xCB354474)
TCP: Data Offset = 20 bytes
TCP: Flags = 0x14 : .A.R..
TCP: ..0..... = No urgent data
TCP: ...1.... = Acknowledgement field significant
TCP: ....0... = No Push function
TCP: .....1.. = Reset the connection
TCP: ......0. = No Synchronize
TCP: .......0 = Not the end of the data
TCP: Window = 0 (0x0)
TCP: Checksum = 0xF1E7
TCP: Urgent Pointer = 0 (0x0)

โปรดสังเกตว่า ท่าเรือต้นทางเป็น 0x599 หรือ 1433 เป็นเลขฐานสิบ ซึ่งหมายความว่าแพ็คเก็ตมาจากคอมพิวเตอร์ที่กำลังเรียกใช้ SQL Server และโดยทั่วไป จะรันบนพอร์ตเริ่มต้นของ 1433 โปรดสังเกตว่าฟิลด์ยอมรับที่สำคัญและค่าสถานะการตั้งค่าการเชื่อมต่อถูกตั้งค่า หากคุณคุ้นเคยกับการกรองการติดตามการตรวจสอบเครือข่าย คุณสามารถกรองค่าสถานะ TCP โดย 0x14 เลขฐานสิบหกเมื่อต้องการดูเฉพาะเก็ตระดาษ + ใหม่ในการสืบค้นกลับการตรวจสอบเครือข่าย

หมายเหตุว่า คุณยังสามารถดูแพคเก็ตระดาษ + ใหม่ที่คล้ายคลึงกัน ถ้าคอมพิวเตอร์ที่กำลังเรียกใช้ SQL Server ไม่ทำงานเลย หรือ ถ้าคอมพิวเตอร์ที่กำลังเรียกใช้ SQL Server ไม่ฟังโพรโทคอล TCP/IP เพื่อให้มองเห็นแพคเก็ตระดาษ + ใหม่ไม่ยืนยันแน่นอนว่า คุณกำลังมีปัญหานี้ ถ้าWinsockListenBacklogนั้นต่ำเกินไป ยอมรับการเชื่อมต่อบางครั้งได้รับแพคเก็ต และการเชื่อมต่อได้รับแพคเก็ตระดาษ + ใหม่ทันทีในกรอบเวลาเดียวกัน

โปรดสังเกตว่า ในกรณีที่ยาก คุณอาจจะต้องปรับการตั้งค่านี้ได้แม้ว่าการทำพูลเก็บการเปิดใช้งานบนคอมพิวเตอร์ไคลเอนต์ ตัวอย่างเช่น ถ้าคอมพิวเตอร์ไคลเอนต์หลายเครื่องจะพูดคุยกับคอมพิวเตอร์ที่กำลังเรียกใช้ SQL Server เดียว ความพยายามในการเชื่อมต่อขาเข้าพร้อมกันเป็นจำนวนมากอาจเกิดขึ้นได้ตลอดเวลาเฉพาะแม้ว่าการทำพูลเก็บการเปิดใช้งาน

หมายเหตุ ถ้าคุณปรับการตั้งค่าWinsockListenBacklogคุณไม่ต้องรีสตาร์ท Windows สำหรับการตั้งค่านี้มีผลบังคับใช้ เพียงแค่หยุด และเริ่มบริการ SQL Server สำหรับการตั้งค่าที่มีผลบังคับใช้ การตั้งค่ารีจิสทรีWinsockListenBacklogเป็นสำหรับคอมพิวเตอร์ที่เรียกใช้ SQL Server เท่านั้น ไม่มีผลใด ๆ บนคอมพิวเตอร์ไคลเอ็นต์ที่มีการพูดคุยกับ SQL Server

ต้องการความช่วยเหลือเพิ่มเติมหรือไม่

ต้องการตัวเลือกเพิ่มเติมหรือไม่

สํารวจสิทธิประโยชน์ของการสมัครใช้งาน เรียกดูหลักสูตรการฝึกอบรม เรียนรู้วิธีการรักษาความปลอดภัยอุปกรณ์ของคุณ และอื่นๆ

ชุมชนช่วยให้คุณถามและตอบคําถาม ให้คําติชม และรับฟังจากผู้เชี่ยวชาญที่มีความรู้มากมาย

ข้อมูลนี้เป็นประโยชน์หรือไม่

คุณพึงพอใจกับคุณภาพภาษาเพียงใด
สิ่งที่ส่งผลต่อประสบการณ์ใช้งานของคุณ
เมื่อกดส่ง คำติชมของคุณจะถูกใช้เพื่อปรับปรุงผลิตภัณฑ์และบริการของ Microsoft ผู้ดูแลระบบ IT ของคุณจะสามารถรวบรวมข้อมูลนี้ได้ นโยบายความเป็นส่วนตัว

ขอบคุณสำหรับคำติชมของคุณ!

×