สถิติฐานข้อมูลที่ล้าสมัยลดประสิทธิภาพการทำงานของ SharePoint Server ทำให้หมดเวลา และสร้างข้อผิดพลาดขณะทำงาน

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

ต่อไปนี้เป็นฉบับภาษาอังกฤษของบทความนี้:3103194
เกี่ยวกับสถิติฐานข้อมูล
สถิติสำหรับแบบสอบถามการปรับให้เหมาะสมเป็นวัตถุที่ประกอบด้วยข้อมูลทางสถิติเกี่ยวกับการกระจายของค่าในคอลัมน์อย่าง น้อยหนึ่งของตารางหรือมุมมองที่มีการทำดัชนี ตัวเพิ่มประสิทธิภาพการสอบถามใช้สถิติเหล่านี้ในการประเมินจำนวนนับ หรือส่งผลให้จำนวนแถว ในแบบสอบถาม การประเมินจำนวนนับเหล่านี้เปิดใช้งานตัวเพิ่มประสิทธิภาพการสอบถามเพื่อสร้างแผนการสอบถามคุณภาพสูง

ตัวอย่างเช่น ตัวเพิ่มประสิทธิภาพการสอบถามสามารถปรับปรุงประสิทธิภาพการทำงาน โดยใช้การประเมินจำนวนนับเพื่อเลือกดัชนีค้นหาผู้ปฏิบัติงานแทนที่เป็นตัวดำเนินการสแกนดัชนีเพิ่มเติมเน้นในด้านทรัพยากรแบบสอบถาม มิฉะนั้น สถิติที่ล้าสมัยอาจลดประสิทธิภาพการทำงานของแบบสอบถาม โดยใช้แผนแบบสอบถามที่ต่ำ

การปรับใช้ SharePoint ขององค์กรขนาดใหญ่ต้องมีแผนการบำรุงรักษาฐานข้อมูลเพื่อปรับปรุงสถิติฐานข้อมูลบนฐานข้อมูลเนื้อหาที่มีอยู่ใน Microsoft SQL Server ไม่ควรลูกค้าเฉพาะในงานการบำรุงรักษาฐานข้อมูล SharePoint เพื่อทำงานเหล่านี้ สำหรับข้อมูลเพิ่มเติม ให้ดู แนวทางปฏิบัติสำหรับ SQL เซิร์ฟเวอร์ในฟาร์มเซิร์ฟเวอร์ SharePoint.
อาการ
เมื่อฐานข้อมูลสถิติกลายเป็นล้าสมัย โปรแกรมอาจพบการติดตั้ง SharePoint Server อย่างน้อยหนึ่งอาการดังต่อไปนี้:
  • เวลาโหลดช้าและประสิทธิภาพการทำงานลดลงที่อาจสร้างข้อผิดพลาด HTTP 500 เมื่อคุณเปิดเพจที่ไซต์
  • ช้ากว่าประสิทธิภาพการทำงานที่สร้างข้อความข้อผิดพลาดเช่นต่อไปนี้:

    บริการไม่พร้อมใช้งาน

    ข้อยกเว้น SQL ที่ไม่รู้จัก 53

    ข้อผิดพลาดเซิร์ฟเวอร์ใน '/' โปรแกรมประยุกต์ข้อผิดพลาดรันไทม์
  • Preforming ค้นหาตระเวนสาเหตุประสิทธิภาพของเซิร์ฟเวอร์ SQL ที่ไม่คาดคิด ล็อกฐานข้อมูล และบล็อก
  • งานตัวจับเวลาที่รันเป็นเวลานานเช่นงาน " Microsoft SharePoint Foundation การใช้ประมวลผลข้อมูล" ที่ใช้เวลานานขึ้นเรื่อย ๆ เพื่อให้เสร็จสิ้นในระหว่างการเกิดซ้ำแต่ละครั้ง
  • ไม่สามารถเปิดไซต์ SharePoint และข้อผิดพลาดที่คล้ายกับต่อไปนี้:

    System.Web.HttpException ที่ไม่คาดคิด: หมดเวลาการร้องขอ
  • ไซต์แสดงเวลาเมื่อคุณโหลดนำทาง และข้อความแสดงข้อผิดพลาดต่อไปนี้:

    PortalSiteMapProvider ไม่สามารถดึงเด็กสำหรับโหนด
  • การใช้งาน CPU สูงบนเซิร์ฟเวอร์ที่กำลังเรียกใช้ SQL Server เมื่อประมวลผลแบบสอบถามของ SharePoint
สาเหตุ
ปัญหาเหล่านี้อาจมีสาเหตุมาจากสถิติฐานข้อมูลที่ล้าสมัย SharePoint เรียกใช้งานตัวจับเวลาทุกวันเพื่อปรับปรุงสถิติฐานข้อมูล โดยใช้กระบวนงาน SQL proc_updatestatistics อย่างไรก็ตาม สำหรับเหตุผลต่าง ๆ งานตัวจับเวลานี้ไม่อาจเสร็จสมบูรณ์ หรืออาจไม่ปรับปรุงตารางทั้งหมดอย่างสม่ำเสมอ ตัวอย่างเช่น ถ้ามีการสำรองข้อมูลกำลังทำงานกับฐานข้อมูลเนื้อหาจาก SQL Server พร้อมกันกับงานตัวจับเวลาของ SharePoint งานจะไม่ดำเนินต่อไป

เมื่อเสร็จงานตัวจับเวลาของ SharePoint ที่ปรับปรุงสถิติ เหตุการณ์ followings อาจถูกเขียนลงในแฟ้มบันทึก ULS:
  • e9bf "เกิดข้อผิดพลาดขณะปรับปรุงสถิติในฐานข้อมูล, { 0 }"
  • cm1y "Updating สถิติในฐานข้อมูล, { 0 }"
  • dbl2 "สถิติ Skipping ปรับปรุงฐานข้อมูล {0} ได้เนื่องจากสถานะของ { 1 }"
  • cm1x "Updating สถิติในฐานข้อมูลทั้งหมดใน { 0 }"
ถ้าเงื่อนไขเหล่านี้ไม่ได้รับการตรวจสอบอย่างใกล้ชิด และไม่ได้ใช้การดำเนินการแก้ไข สถิติฐานข้อมูลกลายเป็นล้าสมัย และเกิดปัญหาประสิทธิภาพการทำงานของ SharePoint ในที่สุด
การแก้ไข
แผนการบำรุงรักษา SQL Server ควรดำเนินการเก็บสถิติฐานข้อมูลเนื้อหาของ SharePoint โดยใช้ตัวเลือก FULLSCAN การปรับปรุงเพื่อป้องกันอาการเหล่านี้และการขัดข้องการบริการที่เป็นไปได้ สำหรับข้อมูลเพิ่มเติม ให้ดู สถิติดัชนี.

เมื่อต้องการปฏิบัติตามแผนการบำรุงรักษา SQL Server เพื่ออัพเดตสถิติบนฐานข้อมูลของ SharePoint นั้นไม่จำเป็นเพื่อปิดการใช้งานจาก SharePoint อย่างไรก็ตาม เนื่องจากงานบำรุงรักษาเหล่านี้ทำหน้าที่คล้ายกันจากทั้งสองสถาน จึงเป็นการปิดใช้งานตัวจับเวลาจากฟาร์ม SharePoint สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการจัดการงานการปรับปรุงดัชนีจากเซิร์ฟเวอร์ SharePoint ดู ฐานข้อมูลที่ใช้ โดย SharePoint มีสถิติดัชนี (SharePoint 2013) ที่ล้าสมัย.
ข้อมูลเพิ่มเติม
ปรับปรุงสถิติของฐานข้อมูลเนื้อหาของ SharePoint โดย FULLSCAN ประจำวันจาก SQL Server เป็นการแนะนำแนวทางปฏิบัติ สำหรับข้อมูลเพิ่มเติม ให้ดู แนวทางปฏิบัติสำหรับ SQL เซิร์ฟเวอร์ในฟาร์มเซิร์ฟเวอร์ SharePoint และ การบำรุงรักษาฐานข้อมูลสำหรับ SharePoint Foundation 2010.

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

เมื่อต้องการแสดงข้อมูลสถิติฐานข้อมูลจากฐานข้อมูลเฉพาะ เรียกใช้แบบสอบถามต่อไปนี้:
-- Checking the DB Statsselect a.id as 'ObjectID', isnull(a.name,'Heap') as 'IndexName', b.name as 'TableName', stats_date (id,indid) as stats_last_updated_time from sys.sysindexes as a inner join sys.objects as b on a.id = b.object_id where b.type = 'U'
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการตรวจสอบสถิติฐานข้อมูล DBCC SHOW_STATISTICS.

การปรับปรุงสถิติฐานข้อมูลบนฐานข้อมูลเดี่ยวที่ใช้ตัวเลือก FULLSCAN เรียกใช้แบบสอบถามต่อไปนี้:
-- Update DB StatsEXEC sp_MSforeachtable 'UPDATE STATISTICS ? WITH FULLSCAN'
หมายเหตุสำคัญ ตัวเลือก "sp_MSforeachtable" จะเป็นกระบวนงานที่ไม่เกี่ยวกับเอกสารที่ให้ไว้ "ตามที่เป็นอยู่" และควรจะใช้เพื่อบรรเทาปัญหาในทันทีเท่านั้น เราไม่แนะนำให้ คุณใช้ขั้นตอนนี้เป็นส่วนหนึ่งของแผนการบำรุงรักษาทั่วไป แต่ เห็นของเราอัพเดตสถิติ (Transact SQL) เอกสารประกอบเกี่ยวกับวิธีการใช้แผนการปรับปรุงสถิติ การใช้ตัวเลือก FULLSCAN

ขึ้นอยู่กับวิธีที่ล้าสมัยสถิติฐานข้อมูลกลายเป็น คุณอาจต้องล้างแคชแผนแบบสอบถาม โดยการเรียกใช้การ DBCC FREEPROCCACHE คำสั่งหลังจากที่คุณปรับปรุงฐานข้อมูลสถิติ คุณจะพบไวยากรณ์และอาร์กิวเมนต์สำหรับขั้นตอนนี้ใน FREEPROCCACHE DBCC (Transact SQL). การทำเช่นนี้ทำให้แน่ใจว่า แบบสอบถามใหม่ใช้แผนปฏิบัติการที่ดีที่สุดหลังจากที่มีการอัพเดตสถิติฐานข้อมูล ตัวอย่างเช่น ดูแบบสอบถามต่อไปนี้:
-- Remove all elements from the plan cacheDBCC FREEPROCCACHE
หมายเหตุสำคัญ เรียกใช้คำสั่ง DBCC FREEPROCCACHE ล้างแคชสำหรับทั้งหมดแผนแบบสอบถามในในอินสแตนซ์ของ SQL คำสั่งนี้ควรจะดีเข้าใจก่อนที่คุณดำเนินในเวลาการผลิต

ถ้าการ DBCC FREEPROCCACHE คำสั่งไม่ถูกดำเนินการหลังจากการปรับปรุงสถิติฐานข้อมูลที่ล้าสมัย แบบสอบถามกับแผนการดำเนินการที่ต่ำอาจยังคงอยู่ในแคช และสามารถใช้ ถ้าเป็นกรณีนี้ บังคับให้คอมไพล์อีกตัวบนกระบวนงานที่เก็บที่ระบุ โดยใช้กระบวนงานเก็บไว้ (ให้ดูที่ sp_recompile (คำสั่งกลุ่ม SQL)). ตัวอย่างเช่น ดูแบบสอบถามต่อไปนี้:
USE SP2013_Content_DBGOsp_recompile proc_getwebnavstruct
ทำงานนี้sp_recompile คำสั่งพร้อมกับการดำเนินการ ฟังก์ชัน หรือพารามิเตอร์ตารางเป้าหมายให้องค์ประกอบเดี่ยวในแคชสำหรับการเอาออก โดยไม่มีผลกระทบต่ออินสแตนซ์

คำเตือน: บทความนี้ได้รับการแปลโดยอัตโนมัติ

คุณสมบัติ

รหัสบทความ: 3103194 - การตรวจสอบครั้งสุดท้าย: 10/10/2015 21:43:00 - ฉบับแก้ไข: 1.0

Microsoft SharePoint Server 2013, Microsoft SharePoint Server 2010, Microsoft Office SharePoint Server 2007

  • kbqfe kbsurveynew kbexpertisebeginner kbbug kbfix kbtshoot kbmt KB3103194 KbMtth
คำติชม