মাইক ঠিক বলেছেন যে আপনি প্রাপ্ত ত্রুটি বার্তাটি ম্যানেজমেন্ট স্টুডিও অ্যাপ্লিকেশন থেকে, এবং এসকিউএল সার্ভার থেকে নয়। এটি আপনার স্থানীয় ওয়ার্কস্টেশনের মেমরি যা ক্লান্ত হয়ে পড়েছে সম্ভবত ক্লায়েন্ট অ্যাপ্লিকেশনটিতে 16 বিলিয়ন সারি টানার চেষ্টা করার কারণে (গ্রিডে প্রচুর ডেটা রেন্ডারিং মেমরির ক্ষেত্রে যথেষ্ট ব্যয়বহুল, তাই TOP
ইত্যাদি ব্যবহার করে আপনার অনুসন্ধানগুলি সীমাবদ্ধ করার চেষ্টা করুন) । - আমি জানি না যে কীভাবে ব্যবহারিক জিনিস (গুলি) আপনার স্থানীয় মেমরির সমস্তভাবেই ব্যবহার করার জন্য আপনি যথেষ্ট পরিমাণ ডেটা দিয়ে করতে পারেন)।
তবে আমি অন্য একটি সমস্যার সমাধান করতে চাই: এসকিউএল সার্ভার যে পরিমাণ মেমরি ব্যবহার করছে তা নির্ধারণ করতে টাস্ক ম্যানেজার ব্যবহার করে। এটি করবেন না; এটি একটি সাহসী মুখের মিথ্যাবাদী। এই উত্তরটি অনুলিপি করা হচ্ছে (আপনার প্রশ্ন দ্বিগুণ, সুতরাং আমি এটি সদৃশ হিসাবে সত্যিই বন্ধ করতে পারি না):
আপনি কখনই, এসকিউএল সার্ভারের কত স্মৃতি ব্যবহার করছেন তা জানাতে কখনই টাস্ক ম্যানেজারের বিশ্বাস করতে পারেন। এর জন্য পিরিয়ডের জন্য টাস্ক ম্যানেজার ব্যবহার বন্ধ করুন। পারফরম্যান্স কাউন্টারটি ব্যবহার করুন - আপনি ডিএমভি ব্যবহার করে পারফরম্যান্স কাউন্টারটিও জিজ্ঞাসা করতে পারেন:
SELECT object_name, cntr_value
FROM sys.dm_os_performance_counters
WHERE counter_name = 'Total Server Memory (KB)';
আপনি এটিকে সরঞ্জামসমূহ> বিকল্পগুলি> পরিবেশ> কীবোর্ড> ক্যোয়ারী শর্টকাটগুলিতে ক্যোয়ারী শর্টকাট হিসাবে সংরক্ষণ করতে পারেন এবং টাস্ক ম্যানেজারের থেকে ভুল ফলাফল পাওয়ার চেয়ে খুব দ্রুত ক্যোয়ারি উইন্ডোতে সঠিক ফলাফল পেতে পারেন।
আপনি এই ক্যোয়ারীগুলি ব্যবহার করে মেমরি চাপ (এবং আপনি এটি সম্পর্কে কিছু করতে পারেন কিনা) তাও পরীক্ষা করতে পারেন:
SELECT object_name, cntr_value
FROM sys.dm_os_performance_counters
WHERE counter_name IN ('Total Server Memory (KB)', 'Target Server Memory (KB)');
-- SQL Server 2012:
SELECT physical_memory_kb FROM sys.dm_os_sys_info;
-- Prior versions:
SELECT physical_memory_in_bytes FROM sys.dm_os_sys_info;
EXEC sp_configure 'max server memory';