SQL 2005: เราสามารถกำหนดงานบำรุงรักษาดัชนีการสร้างใหม่ที่สามารถขยายขนาดไฟล์บันทึกฐานข้อมูลได้หรือไม่?


10

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

หากไม่มีคำตอบที่ตรงแล้วทิศทางใด ๆ จะได้รับการชื่นชมจริงๆ

ขอบคุณล่วงหน้า.

คำตอบ:


9

ใช่คุณควรดู whitepaper ที่ดีเยี่ยมในหัวข้อนี้แม้ว่ามันจะหมายถึงการสร้างดัชนีออนไลน์ แต่ก็ยังมีข้อมูลที่ดีมากมาย

http://technet.microsoft.com/en-us/library/cc966402.aspx

หากไฟล์บันทึกกำลังเติบโตโดยอัตโนมัติคุณสามารถค้นหาข้อมูลโดยใช้การติดตามเริ่มต้นหลังจากการดำเนินการเสร็จสมบูรณ์

DECLARE @filename VARCHAR(255) 
SELECT @FileName = SUBSTRING(path, 0, LEN(path)-CHARINDEX('\', REVERSE(path))+1) + '\Log.trc'  
FROM sys.traces   
WHERE is_default = 1;  

--Check if the data and log files auto-growed. Look for tempdb, log files etc.
SELECT 
    gt.ServerName
    , gt.DatabaseName
    , gt.TextData
    , gt.StartTime
    , gt.Success
    , gt.HostName
    , gt.NTUserName
    , gt.NTDomainName
    , gt.ApplicationName
    , gt.LoginName
FROM [fn_trace_gettable](@filename, DEFAULT) gt 
JOIN sys.trace_events te ON gt.EventClass = te.trace_event_id 
WHERE EventClass in ( 92, 93 ) --'Data File Auto Grow', 'Log File Auto Grow'
ORDER BY StartTime; 
--

7

ไม่สามารถตรวจสอบได้ว่าการดำเนินการของดัชนี DDL เพิ่มล็อกไฟล์หรือไม่ซึ่งเป็นบรรทัดการดำเนินการเริ่มต้น การดำเนินการดัชนีทั้งหมดถูกบันทึกไว้ในฐานข้อมูลที่ใช้แบบจำลองการกู้คืนแบบเต็ม

ผมแนะนำให้คุณอ่านบทความต่อไปนี้ใน MSDN: การกำหนดความต้องการดัชนี Disk Space

จากบทที่ 3 - พื้นที่ดิสก์ธุรกรรมสำหรับการดำเนินงานดัชนีของบทความนั้นฉันจะอ้างอิง:

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

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