Không đủ bộ nhớ hệ thống trong nhóm tài nguyên mặc định để chạy truy vấn này


15

Tôi đang sử dụng SQL Server 2014 - 12.0.2269.0 (X64) trên Windows Server 2012 và tôi đang gặp một số vấn đề về bộ nhớ. Khi tôi chạy một thủ tục được lưu trữ đang thực hiện một phép tính khá "nặng", tôi sẽ gặp lỗi sau khoảng 10 phút:

Không đủ bộ nhớ hệ thống trong nhóm tài nguyên 'mặc định' để chạy truy vấn này.

Máy chủ SQL của tôi có nhiều cơ sở dữ liệu (như 15, nhưng chúng không phải lúc nào cũng được sử dụng cùng một lúc). Tôi đã xem tệp nhật ký SQL Server (sau khi tôi gặp lỗi) và tôi đã thấy rất nhiều dòng như thế này:

2015-12-17 12: 00: 37.57 spid19s Không cho phép phân bổ trang cho cơ sở dữ liệu 'Database_Name' do không đủ bộ nhớ trong nhóm tài nguyên 'mặc định'. Xem ' http://go.microsoft.com/fwlink/?LinkId=330673 ' để biết thêm thông tin.

Một báo cáo được tạo ra trong nhật ký với bộ nhớ được sử dụng bởi mỗi thành phần (tôi nghĩ). Nếu tôi diễn giải chính xác báo cáo, chúng ta có thể thấy rằng có rất nhiều bộ nhớ bị tiêu tốn MEMORYCLERK_SQLBUFFERPOOL. Bạn có thể tìm thấy báo cáo ở đây: http://pastebin.com/kgmk9dPH

Tôi cũng đã tạo một báo cáo với biểu đồ hiển thị cùng một "kết luận":

! [sử dụng bộ nhớ

Đây có thể là một báo cáo hữu ích khác:

nhập mô tả hình ảnh ở đây

nhập mô tả hình ảnh ở đây

Lưu ý rằng tôi cũng đã thấy lỗi này trong nhật ký:

2015-12-17 12: 04: 52.37 spid70 Trang phân bổ không thành công do áp lực bộ nhớ cơ sở dữ liệu: FAIL_PAGE_ALLOCATION 8

Dưới đây là một số thông tin liên quan đến bộ nhớ của máy chủ:

  • Tổng bộ nhớ trên máy chủ: 16 Gb

  • Bộ nhớ được phân bổ cho máy chủ SQL: 12288 Mb

  • Bộ nhớ vật lý đang sử dụng (từ sys.dm_os_process_memory): 9287 Mb

Nếu nó có thể giúp, máy chủ không lưu trữ bất kỳ cơ sở dữ liệu SharePoint nào.


Bộ nhớ tối đa và tổng RAM trên máy chủ là gì?
Kin Shah

Câu trả lời:


6

Mặc dù đây có thể không phải là một câu trả lời chính xác cho vấn đề của bạn nhưng tôi sẽ đăng nó bằng mọi cách hy vọng nó có thể giúp bạn theo một cách nào đó.

Những gì bạn đang thấy không phải là MEMORYCLERK_SQLBUFFERPOOLMEMORYCLERK_SQLLOGPOOLchiếm hết bộ nhớ.

Có một vấn đề đã biết với SQL 2012 SQL Server 2012 gặp phải lỗi hết bộ nhớ . Mặc dù bạn đang chạy 2014, vẫn có khả năng bạn đang gặp phải vấn đề tương tự (mặc dù tôi không thể tìm thấy một mục kết nối cho năm 2014).

Ngoài ra còn có vấn đề được biết đến cho cả năm 2014 và 2012 liên quan đến việc xây dựng lại chỉ số và always on. Bạn đã không chỉ định bạn đang sử dụng nhưng có thể cùng một lỗi có các kích hoạt khác: CỐ ĐỊNH: Bộ nhớ cache SQL giảm và mức sử dụng CPU tăng khi bạn xây dựng lại một chỉ mục cho một bảng trong SQL Server

Vì vậy, đề xuất tốt nhất của tôi bây giờ là cập nhật lên CU mới nhất và xem liệu nó có còn xảy ra không, vì đã có một vài sửa chữa MEMORYCLERK_SQLLOGPOOLgần đây. Vì bạn đang chạy RTM chỉ với 2 bản sửa lỗi bảo mật có thể có ý nghĩa, nên có sẵn một bản SP1 + nhiều CU.

Kể từ khi còn là sử dụng bộ nhớ khá cao trong MEMORYCLERK_XTPsử dụng bởi in-memory OLTPbài viết này có thể giúp bạn khắc phục sự cố: Màn hình và Khắc phục sự cố sử dụng bộ nhớ

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.