SQL Server Management Studio เปิดหน้าต่างใหม่ช้า


29

หลังจากอัปเกรดทั้ง SQL Server และ Management Studio จาก 2008 เป็น 2012 Management Studio 2012 จะช้ามากเมื่อเปิดหน้าต่างแบบสอบถามและกล่องโต้ตอบใหม่

แม้แต่การคลิกขวาที่ตารางก็ช้า โดยทั่วไปจะมีความล่าช้าอย่างน้อย 5 วินาทีก่อนที่ฉันจะเริ่มทำอะไรก็ได้ภายในหน้าต่าง สิ่งนี้เกิดขึ้นทุกครั้งแม้ว่าฉันจะเปิดหน้าต่างเดียวกันสองครั้งติดต่อกัน ทำไมสิ่งนี้ถึงเกิดขึ้นและฉันจะแก้ไขได้อย่างไร

แอปพลิเคชั่นอื่น ๆ สร้างการเชื่อมต่อกับฐานข้อมูลอย่างรวดเร็ว

สิ่งที่ฉันลองซึ่งไม่ได้ช่วย:

  • Hit บน Google ที่ฉันต้องการแก้ไขhostsไฟล์ของฉัน
  • การรีเซ็ต SSMS "การตั้งค่าที่ผู้ใช้กำหนด"
  • การอัปเดตไดรเวอร์วิดีโอปิดการเร่งด้วยฮาร์ดแวร์ปิดการใช้งาน DirectX
  • ปิดใช้งานบริการการรับรองความถูกต้องทางชีวภาพ (ฉันไม่ได้ติดตั้ง)

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

ฉันไม่มีโอกาสติดตั้งการอัปเดต SQL Server 2012 CU1 เนื่องจากดูเหมือนว่ามีความเสี่ยงของข้อผิดพลาดในการติดตั้งโปรแกรมแก้ไขด่วนและฉันไม่สามารถเสี่ยงได้ในขณะนี้


ฉันไม่เห็นพฤติกรรมนี้ ถ้าฉันได้ทำการตรวจสอบเพิ่มเติมฉันอาจลอง (1) ใช้การตรวจสอบกระบวนการเพื่อดูว่ากระบวนการกำลังทำอะไรอยู่และถ้านั่นให้เบาะแสใด ๆ (2) การใช้ SQL Server Profiler เพื่อดูว่าแบบสอบถามใด ๆ ที่ส่งจาก SSMS มีระยะเวลาสูง (เช่นการปิดกั้น) (3) การแนบดีบักเกอร์กับกระบวนการ SSMS และเจาะเข้าไปในระหว่างแฮงค์เพื่อดูว่าชื่อของฟังก์ชั่นใน กองการโทรเปิดเผยอะไรก็ได้
Martin Smith

คำตอบ:


11

SQL Studio Management Studio เริ่มต้น

เมื่อ Microsoft SQL Server Management Studio (SSMS) เริ่มต้นแล้วจะพยายามเชื่อมต่อรายการเพิกถอนใบรับรอง (CRL) ของ Microsoft:

http://crl.microsoft.com/pki/crl/products/MicrosoftRootAuthority.crl

คอมโพเนนต์. NET พื้นฐานของ SSMS พยายามติดต่อรายการเพิกถอนใบรับรองและ SSMS ไม่สามารถทำได้ นี่จะทำให้ขั้นตอนการโหลดโดยรวมช้าลง (15 วินาทีต่อใบรับรอง)

ตกลงนี่คือสิ่งที่เกิดขึ้น SSMS มีรหัสที่จัดการร้อยละสูงรหัสนี้ทั้งหมดจะถูกเซ็นเมื่อเราจัดส่ง เมื่อเริ่มต้นใช้งาน (หากตรวจสอบการตั้งค่านี้). Net Runtime จะพยายามติดต่อ crl.microsoft.com เพื่อให้แน่ใจว่าใบรับรองนั้นถูกต้อง (มีใบรับรองปลอมบางรายการที่ออกในชื่อ Microsoft ในขณะที่กลับมาจึงเป็นข้อกังวลที่ถูกต้องมาก) . หากไม่มีการเชื่อมต่ออินเทอร์เน็ตหรือมีปัญหาในการติดต่อเซิร์ฟเวอร์รายการเพิกถอนใบรับรองนี่จะทำให้การเริ่มต้น SSMS ล่าช้า

การอ้างอิง: คำถามที่พบบ่อย, เหตุใด SSMS จึงใช้เวลา 45 วินาทีในการเริ่มต้น (บล็อก MSDN)

ปัญหาหนึ่งที่อาจทำให้เกิดปัญหานี้คือถ้าเซิร์ฟเวอร์ไม่มีการเข้าถึงอินเทอร์เน็ตดังนั้นเฟรมเวิร์ก. NET ไม่สามารถเข้าถึงเว็บไซต์ crl.microsoft.com เพื่อตรวจสอบว่าลายเซ็นดิจิทัลที่ใช้ในการลงชื่อไบนารีสำหรับแอปพลิเคชันที่ได้รับการจัดการ ถูกต้อง การตรวจสอบใบรับรองแต่ละครั้งมีระยะเวลา 15 วินาทีในการใช้งาน. NET แบบรันไทม์ สิ่งนี้สามารถเพิ่มเวลาเริ่มต้นได้ไม่เกินหนึ่งนาทีสำหรับ Management Studio

อ้างอิง: เวลาเริ่มต้นของ Studio จัดการเซิร์ฟเวอร์ SQL (บล็อก MSDN)

โซลูชั่น

คุณสามารถหลีกเลี่ยงส่วนหนึ่งของปัญหาโดยการดาวน์โหลดใบรับรองโดยตรงเข้าสู่ลิงค์ในเบราว์เซอร์ของคุณแล้วนำเข้าใบรับรองไปยังฐานข้อมูลใบรับรองของคุณ

  • หรือ -

คุณสามารถกำหนดค่าไฟร์วอลล์ (บริษัท ) ของคุณใหม่เพื่ออนุญาตการเชื่อมต่อกับ CRL ของ Microsoft

  • หรือ -

คุณสามารถกำหนดค่าโปรแกรมป้องกันไวรัส / ไฟร์วอลล์ส่วนบุคคลใหม่เพื่ออนุญาตการเชื่อมต่อกับ Microsoft CRL

  • หรือ -

คุณสามารถกำหนดค่าไฟร์วอลล์ (บริษัท ) ของคุณเพื่อส่งการหมดเวลาได้เร็วขึ้นไปยังไคลเอนต์ของคุณสำหรับคำขอเข้าถึง CRL ของ Microsoft

  • หรือ -

คุณสามารถกำหนดค่า IE ให้ไม่ "ตรวจสอบการเพิกถอนใบรับรองของผู้เผยแพร่" ในการตั้งค่าขั้นสูง

(ดูรายละเอียดในบล็อกที่1และ2ข้างต้น)


7

ฉันมีประสบการณ์เช่นเดียวกับคุณเมื่อฉันเชื่อมต่อกับชื่อเซิร์ฟเวอร์ "./" โดยโชคใบ้ฉันพบว่าฉันไม่ประสบปัญหาประสิทธิภาพการทำงานเมื่อฉันเชื่อมต่อกับชื่อเซิร์ฟเวอร์ "(ท้องถิ่น)" อาจมีปัญหากับวิธีที่ SSMS 2012 แก้ไขเซิร์ฟเวอร์ผ่าน "./"

แก้ไข: ฉันไม่คิดว่าเกี่ยวข้องกับ SSMS เนื่องจากฉันสามารถสร้างความช้าด้วย. / ในการเชื่อมต่อ ADO.NET


6

อาจเกิดขึ้นได้ว่า SSMS ได้นำเข้าการตั้งค่าที่ไม่สามารถจัดการได้อย่างถูกต้องอีกต่อไป (เช่นการเชื่อมต่อกับเซิร์ฟเวอร์บางตัวหรืออาจเป็นการตั้งค่า Add-in บางอย่าง)

มีวิธีที่โหดร้ายในการ "รีเซ็ต" การตั้งค่าที่ผู้ใช้กำหนดของ SSMS

ปิด SSMS ไปที่โฟลเดอร์:

C:\Users\YOURWINLOGINNAME\AppData\Roaming\Microsoft\SQL Server Management Studio\

คุณจะพบโฟลเดอร์ย่อย "11.0" เปลี่ยนชื่อเป็น "11.0_" เพื่อให้คุณสามารถเปลี่ยนชื่อได้ตลอดเวลา ตอนนี้เริ่ม SSMS - มันจะสร้างการตั้งค่าใหม่ทั้งหมดและปัญหาของคุณอาจได้รับการแก้ไข ถ้าไม่ใช่ - ลบ "11.0" ที่สร้างขึ้นใหม่และเปลี่ยนชื่อ "11.0_" กลับเป็น "11.0"

นี่อาจเป็นพฤติกรรมของ Add-in บางตัวที่ได้รับความเสียหายหลังการอัพเกรด Add-ins จะลงทะเบียนตัวเองเป็นตัวจัดการสำหรับบางคำสั่งหรือเหตุการณ์และระบบอาจไม่เสถียรหากพวกเขาหายไป / โยนข้อยกเว้น

ที่จริงแล้ว v2012 ใช้กลไกอื่นสำหรับการลงทะเบียน Add-in แต่ Add-in บางตัวจะติดตั้งตัวเองในทุกกรณี วิธีตรวจสอบดูที่รีจิสตรีคีย์นี้:

[HKEY_CURRENT_USER\Software\Microsoft\SQL Server Management Studio\11.0_Config\AutomationOptions\LookInFolder]

คุณจะพบรายชื่อโฟลเดอร์ที่นั่น ทำเครื่องหมายที่โฟลเดอร์เหล่านี้ทั้งหมด - ต้องว่างเปล่า (หมายความว่าคุณไม่มีส่วนเสริม)


4

ลองปิดการใช้งานโปรแกรมป้องกันไวรัสแล้วตรวจสอบประสิทธิภาพสำหรับสตูดิโอการจัดการ sql server 2012


4
เหตุผลสำหรับข้อเสนอแนะนี้คืออะไร?
Martin Smith

3

ฉันไม่ได้ประสบปัญหานี้เป็นการส่วนตัว แต่มีกระทู้ยาว ( ที่นี่ ) ที่หลายคนมี คำแนะนำทั่วไปดูเหมือนจะเกี่ยวข้องกับการทำงานกับไดรเวอร์วิดีโอของคุณด้วย

  1. การติดตั้งไดรเวอร์วิดีโอที่อัปเดต - หรือ -
  2. การลดหรือปิดฮาร์ดแวร์ exceleration - หรือ -
  3. ปิดการรองรับ DirectX

จากเธรดยังมีคำตอบนี้ ... "ขั้นตอนการคลีนบูต Windows 7 เปิดเผยบริการการรับรองความถูกต้องตรวจสอบทางชีวภาพ (DigitalPersona DPHostw.exe) เป็นปัญหาการปิดใช้งานบริการแก้ไขปัญหา"

ฉันสนใจที่จะทราบว่าวิธีการเหล่านี้ทำงานในกรณีของคุณหรือไม่เช่นเดียวกับเธรดที่ฉันพบว่าเกี่ยวข้องกับ SSMS เวอร์ชันเก่าเช่น 2005, 2008, ฯลฯ ...


3

ฉันเดาว่าปัญหาคือการเปิดการเชื่อมต่อใหม่ไปยังเซิร์ฟเวอร์ของคุณใช้เวลา 5 วินาที ทำไมตรงนี้เป็นกรณีที่ฉันไม่สามารถบอกได้และมันจะต้องมีการติดตามสายเพื่อวิเคราะห์และวินิจฉัย คุณควรตรวจสอบว่าพยายามใช้โปรโตคอลใดและโปรโตคอลใดประสบความสำเร็จในที่สุด อาจเป็นไปได้ว่าลูกค้าของคุณพยายามตั้งชื่อไพพ์ก่อน (ซึ่งขึ้นอยู่กับ SMB) จากนั้นกลับสู่ TCP (แม้ว่าการหน่วงเวลาตามปกติในกรณีนี้จะนานกว่ามากประมาณ 20-30 วินาที)

ฉันจะแนะนำให้คุณตรวจสอบการสั่งซื้อของโปรโตคอลลูกค้าในการกำหนดค่าเครือข่ายไคลเอ็นต์ sys.dm_exec_connectionsตรวจสอบลูกค้าโปรโตคอลที่ใช้โดยการหารายการของคุณเองใน


3

ฉันมีปัญหาเดียวกันและปรากฎว่าการสแกน Trend Micro Office ทำให้เกิดปัญหา

ฉันพยายามทุกอย่างที่อธิบายไว้ในหลาย ๆ กระทู้ที่คล้ายกันเกี่ยวกับปัญหานี้โดยไม่มีประโยชน์ ฉันคิดว่าฉันจะลองปิดใช้งานซอฟต์แวร์ AV .. เมื่อการสแกน Trend Micro Office ปิดลง SSMS จะสว่างขึ้นอย่างรวดเร็ว

สิ่งนี้ไม่ได้เกิดขึ้นใน Windows 7


3

ฉันก็ประสบความล่าช้า 5 ถึง 10 วินาทีเมื่อคลิกขวาที่ตารางเพื่อดึงเมนูบริบทขึ้นมา สถานการณ์ของฉันอาจแตกต่างไปเล็กน้อยเนื่องจากฉันใช้ฐานข้อมูลท้องถิ่นเท่านั้น ทางออกของฉัน:

หลังจากอ่านคำตอบจาก imran เกี่ยวกับการปิดใช้งานโปรแกรมป้องกันไวรัสฉันใช้แนวคิดนั้นอีกขั้นหนึ่งเนื่องจากฉันไม่ต้องการปิดการใช้งานโปรแกรมป้องกันไวรัสของฉันเพียงแค่ต้องการเอาชนะปัญหานี้

ฉันลดความล่าช้าลงอย่างมาก (ตอนนี้เป็นสูงสุด 1 วินาที) โดยการเปลี่ยนตำแหน่งฐานข้อมูลเริ่มต้นและจากนั้นไม่รวมไดเรกทอรีนั้นจากโปรแกรมป้องกันไวรัส (ในกรณีของฉันฉันใช้ Microsoft System Center Endpoint Protection 2015)

สำหรับการเปลี่ยนตำแหน่งฐานข้อมูลเริ่มต้นดูบทความต่อไปนี้สำหรับข้อมูลรายละเอียด http://thomaslarock.com/2015/02/changing-default-database-file-locations-in-sql-server/


3

ฉันมีปัญหาเดียวกันกับ SSMS 2016 ฉันใช้procmonเพื่อระบุว่าสิ่งสุดท้ายที่ทำก่อนที่การหน่วงเวลาหลายวินาทีจะทำการเชื่อมต่อเครือข่ายกับที่อยู่ IP ของ Microsoft ฉันก็พยายามปิดประสบการณ์ของลูกค้าโครงการโดยการตั้งค่ารีจิสทรีคีย์HKEY_CURRENT_USER\SOFTWARE\Microsoft\Microsoft SQL Server\130ค่าCustomerFeedbackตั้งแต่ 1 ถึง 0. หลังจากที่เริ่มต้น SSMS ก็ทำงานอย่างรวดเร็วอีกครั้ง สันนิษฐานว่าไม่ได้นำไปสู่การชะลอหน้าต่างแบบสอบถามใหม่เสมอไป แต่สำหรับฉันแล้ว

ฉันไม่ทราบว่าเป็นสิ่งที่เกิดขึ้นกับ SSMS 2012 ของคุณ แต่อาจคุ้มค่าที่จะลอง คีย์รีจิสทรีอาจจะแทน110130


2

เกี่ยวกับ SSMS 2016 และการเปลี่ยนแปลงรีจิสทรี เส้นทางของฉันคือ

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\130\Tools\Setup\UserFeedbackOptIn  

ฉันเปลี่ยนจาก 1 เป็น 0 และ SSMS นั้นรวดเร็วอีกครั้ง


2

บางครั้งปัญหานี้สามารถแก้ไขได้โดยเพียงแค่ปิดหน้าต่างคิวรีจำนวนมาก

อินสแตนซ์ของ SSMS ของฉันมีข้อความค้นหาประมาณ 15 รายการในแคชที่บันทึกไว้ (ซึ่งเปิดทุกครั้งที่ฉันเปิด SSMS) - ฉันปิดหน้าต่างเหล่านี้ทั้งหมด & เริ่ม SSMS ใหม่และปัญหาหายไปทันที


2

ฉันมี SSMS v17.0 ฉันมีปัญหากับเมนูบริบทคลิกขวาช้า

ชื่อของคอมพิวเตอร์มีเครื่องหมายขีดคั่นอยู่เปลี่ยนชื่อคอมพิวเตอร์ที่เรียบง่ายซ่อม

ฉันถอนการติดตั้ง ssms, ถอนการติดตั้งเซิร์ฟเวอร์ sql, เปลี่ยนชื่อคอมพิวเตอร์อย่างง่ายเช่น 'MyBox' แทน 'xja-13-asdfa3' จากนั้นฉันติดตั้งเซิร์ฟเวอร์ sql ใหม่จากนั้น ssms และสิ่งนี้จะแก้ไขปัญหาเมนูบริบทบริบทช้าทั้งหมดของฉันเมื่อคลิกขวาที่ตาราง ฉันจินตนาการว่ามีปัญหา DNS เกิดขึ้นและการรอนั้นเกี่ยวข้องกับการรอหมดเวลา DNS

ฉันมีแล็ปท็อปที่มี ram ขนาด 16 กิ๊ก, ไดรฟ์ ssd, ซีพียู 3 กิกะเฮิร์ตซ์ส่งตรงจากโรงงานโดยใช้ชื่อพีซีแบบสุ่มเริ่มต้น


1

มันรวดเร็วบนคอมพิวเตอร์ของฉัน

SSMS ใน SQL Server 2012 ตอนนี้ใช้เชลล์ Visual Studio 2010 ซึ่งเป็นทรัพยากรที่เข้มข้นกว่าเชลล์ที่ SSMS ใช้ใน SQL Server 2008 ฉันแนะนำให้อัปเกรดคอมพิวเตอร์ของคุณหรือใช้ SSMS จาก SQL Server 2008 R2 คุณควรจะสามารถทำงานส่วนใหญ่กับรุ่นเก่าได้

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

http://support.microsoft.com/kb/2679368/



0

สำหรับฉันมันเป็นไฟร์วอลล์ BitDefender ที่ทำให้ SSM ของฉันช้าลงอย่างเห็นได้ชัดการเรียงลำดับของไฟร์วอลล์บล็อกบางอย่างสำหรับการเข้าถึงรายการฐานข้อมูล


-1

หนึ่งควรตรวจสอบสถานะของสถานที่ให้บริการฐานข้อมูลที่ " ปิดโดยอัตโนมัติ " เป็น " อัตโนมัติ " กลุ่ม

หากเป็นจริงหลังจากแต่ละแบบสอบถามการเชื่อมต่อจะถูกปิดและเปิดใหม่ในแต่ละแบบสอบถามใหม่ นั่นทำให้การทำงานของคุณช้าลงในรูปแบบ SSMS ค่าเริ่มต้นเป็นเท็จ


-2

เป็นไปได้ไหมว่าคุณมี RAM ไม่เพียงพอในคอมพิวเตอร์ของคุณ?

RAM ที่แนะนำสำหรับ SQL 2012 คือ 4 go มันเป็น 2 ไปสำหรับ SQL 2008 http://msdn.microsoft.com/en-us/library/ms143506.aspx

เมื่อคุณอัพเกรดจาก SQL 2008 เป็น 2012 คุณอาจต้องการ RAM เพิ่มหรือไม่


-2

เมื่อฉันเริ่ม SSMS โดยใช้สิทธิ์ผู้ดูแลระบบ (คลิกขวาและเรียกใช้ในฐานะผู้ดูแลระบบ) ก็ใช้งานได้ดีมิฉะนั้นหน้าต่างคิวรีใหม่จะใช้เวลานานกว่า


-3

สาเหตุของเรื่องนี้มักจะเป็นไดรฟ์เครือข่ายที่ขาดหายไปเช่นถ้าคุณมีการแมปไดรฟ์กับแล็ปท็อปของคุณ แต่แล็ปท็อปของคุณถูกปิด

ความละเอียดน่าเสียดายที่การเปิดแล็ปท็อปของคุณ (ดังนั้นไดรฟ์เชื่อมต่อใหม่) หรือยกเลิกการเชื่อมต่อไดรฟ์ของคุณใน Windows Explorer (แต่คุณต้องทำการเชื่อมต่อใหม่ในภายหลัง)

ดูที่นี่สำหรับข้อมูลเพิ่มเติม: http://social.msdn.microsoft.com/Forums/en-US/sqltools/thread/64c13a84-3e62-4b0c-a1ce-65fcc78d6787


1
ปัญหานี้เป็นปัญหาเฉพาะของ SSMS 2012 - ฉันสงสัยว่าเธรด msdn จาก ก.พ. 2010 จะเกี่ยวข้องกัน
JNK
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.