2010-09-20 27 views
9

Trong máy chủ sql 2005, autogrowth được kích hoạt theo kích thước. Có cách nào để kiểm tra khi tự động phát triển dữ liệu và tệp nhật ký xảy ra cuối cùng không?Làm thế nào để kiểm tra khi nào autogrowth được thực hiện cuối cùng?

+0

Hãy xem [Làm thế nào để Xem gần đây sự kiện autogrowth trên cơ sở dữ liệu trong SQL Server] (https : //www.brentozar.com/archive/2015/05/how-to-see-recent-autogrowth-events-on-databases-sql-server/) – Lijo

Trả lời

17

SSMS, nhấp chuột phải vào db của bạn, chuyển đến báo cáo-> báo cáo chuẩn-> sử dụng đĩa và tìm kiếm sự kiện Autogrow/Autoshrink.

Hy vọng rằng bạn đã thiết lập đúng mức độ theo dõi, nếu không bạn có thể gặp một số vấn đề khi tìm hiểu lịch sử.

+0

Bạn có thể cho tôi biết nếu tôi thay đổi kích thước autogrowth này? nó có khóa cơ sở dữ liệu và chặn các giao dịch khác không? Việc đó mất bao lâu? – Jango

15

Dưới đây là làm thế nào để làm điều đó mà không sử dụng các báo cáo sql (liên kết, tiếp theo là TSQL liên quan): http://sqlblog.com/blogs/aaron_bertrand/archive/2007/01/11/reviewing-autogrow-events-from-the-default-trace.aspx

DECLARE @path NVARCHAR(260); 

SELECT 
    @path = REVERSE(SUBSTRING(REVERSE([path]), 
    CHARINDEX('\', REVERSE([path])), 260)) + N'log.trc' 
FROM sys.traces 
WHERE is_default = 1; 

SELECT 
    DatabaseName, 
    [FileName], 
    SPID, 
    Duration, 
    StartTime, 
    EndTime, 
    FileType = CASE EventClass 
     WHEN 92 THEN 'Data' 
     WHEN 93 THEN 'Log' 
    END 
FROM sys.fn_trace_gettable(@path, DEFAULT) 
WHERE 
    EventClass IN (92,93) 
ORDER BY 
    StartTime DESC; 
Các vấn đề liên quan