এসকিউএল সার্ভার কেন আরও সার্ভার মেমরি গ্রহণ করছে?


36

এসকিউএল সার্ভারটি আমার সার্ভারের র্যামের 87.5% গ্রাস করছে। এটি সম্প্রতি অস্তিত্বের মতো প্রচুর পারফরম্যান্সের বাধা সৃষ্টি করেছে। আমি এই বিষয়টি নিয়ে গবেষণা করেছি। একটি সাধারণ সমাধান যা আমি ইন্টারনেটে সন্ধান করতে পারি তা হ'ল এসকিউএল সার্ভারের সর্বাধিক সীমা নির্ধারণ করা। এটি করা হয়েছিল এবং অনেক উন্নতি লাভ করা হয়েছে। আমি যদি জানতে চাই যে কেন সর্বাধিক মেমরির মান সেট না করা হয় কেন এসকিউএল সার্ভার সংস্থানগুলি ব্যবহার করে


3
আপনি কীভাবে নির্ধারণ করেছেন যে এসকিউএল সার্ভারের র‌্যামের ব্যবহার কোনও অচলতার উত্স? আস্তে কোনটি? যদি কিছু হয় তবে এসকিউএল সার্ভার যতটা সম্ভব র্যাম ব্যবহার করে (বা আপনি এটি প্রত্যাশার চেয়েও বেশি বা এটি চান তার চেয়ে বেশি) ব্যবহার করা বেশি দক্ষ হওয়া উচিত । এবং যদি আপনার সার্ভারে এমন অন্যান্য অ্যাপ্লিকেশন রয়েছে যা ভুগছে কারণ এসকিউএল সার্ভার মেমরি ব্যবহার করছে (এটি যেমন নকশাকৃত করা হয়েছে) তবে সেগুলি অন্য সার্ভারে সরিয়ে দিন
অ্যারন বারট্র্যান্ড

আমি এখানে পদ্ধতিটি ব্যবহার করেছি lucidica.com/help/got-sql-eating-up-ram আমাকে সাহায্য করুন কিনা তা আমাকে জানাবেন :) দয়া করে শুভেচ্ছা, নিকিতা।
নিকিতা কোসোসোভ 26'15

উত্তর:


48

এসকিউএল সার্ভার যতটা মেমরির অনুমতি দেবে ততটুকু গ্রাস করবে । ডিফল্টরূপে, এই সংখ্যাটি আপনার মেশিনে আপনার সংখ্যার মেমরির 100% অন্তর্ভুক্ত করবে। এজন্য আপনি যা দেখছেন তা দেখছেন। আপনি যদি এসকিউএল সার্ভারকে 24 গিগাবাইট মেমরি দেন, তবে এসকিউএল সার্ভার 24 গিগাবাইট মেমরির ব্যবহারের সর্বোত্তম চেষ্টা করবে। তারপরে আপনার কাছে এসকিউএল সার্ভার এবং ওএস সংস্থানগুলির জন্য লড়াই করছে এবং এটি সর্বদা খারাপ কর্মক্ষমতা অর্জন করবে।

আপনি যখন max server memoryকনফিগারেশন সীমাটি সেট করেন , আপনি বাফার পুলের জন্য এসকিউএল সার্ভারকে কত বরাদ্দ করতে পারে তা সীমাবদ্ধ করে দিচ্ছেন (কার্যত যেখানে এটি ডেটা পৃষ্ঠা এবং পদ্ধতি ক্যাশে সঞ্চয় করে)। এসকিউএল সার্ভারের মধ্যে অন্যান্য মেমরি ক্লার্ক রয়েছে, সুতরাং আপনার নির্দিষ্ট সংস্করণে (২০০৮ আর 2 এবং নীচে), max server memoryকেবল বাফার পুলটি নিয়ন্ত্রণ করে। তবে এটি সর্বদা বৃহত্তম স্মৃতি গ্রাহক হতে চলেছে।

সর্বনিম্ন এবং সর্বাধিক সার্ভার মেমরির প্রভাব সম্পর্কে টেকনেট রেফারেন্স

ন্যূনতম সার্ভার মেমরি এবং সর্বাধিক সার্ভার মেমরি কনফিগারেশন বিকল্পগুলি মাইক্রোসফ্ট এসকিউএল সার্ভার ডেটাবেস ইঞ্জিনের বাফার পুল দ্বারা ব্যবহৃত মেমরির পরিমাণের উপরের এবং নিম্ন সীমাবদ্ধতা স্থাপন করে।

ওএসের জন্য আমার কতটা মেমোরি ছেড়ে দেওয়া উচিত তা প্রশ্ন , এটি সাধারণভাবে বিতর্কিত মেট্রিক। এটি প্রকৃতপক্ষে সার্ভারে অন্যান্য প্রক্রিয়াগুলি কী চলছে তার উপর নির্ভর করে । প্রদত্ত এটি সত্যই ডেডিকেটেড সার্ভার (এবং এটি প্রায়শই কখনও হয় না)। আমি ওএসের জন্য কমপক্ষে 4 জিবি মেমরি দেখতে চাই (এবং আরও বড়-হার্ডওয়ার বাক্সগুলিতে আরও)। তবে সবচেয়ে গুরুত্বপূর্ণ, সেখানে অব্যবহৃত মেমরিটি কত তা নিরীক্ষণ করুন। উদার হন এবং এসকিউএল সার্ভারকে আরও মেমরি দিন যদি আপনি প্রচুর উপলভ্য লক্ষ্য করেন (পারফোন মাধ্যমে পর্যবেক্ষণ করা যেতে পারে) এবং অব্যবহৃত মেমরি (অবশ্যই, সবসময় এই কোণার পরিস্থিতিতে একটি ছোট বাফার রেখে যান)।


11

এসকিউএল সার্ভারটি ডিফল্টরূপে সার্ভারের সমস্ত মেমরি ব্যবহার করার জন্য ডিজাইন করা হয়েছে। এর কারণটি হ'ল এসকিউএল সার্ভারটি ডাটাবেসে র‌্যামের ডেটা ক্যাশে করে যাতে এটি যতটা দ্রুত ডেটা অ্যাক্সেস করতে পারে যদি কোনও ব্যবহারকারীর যতবার প্রয়োজন ততবার ডিস্ক থেকে ডেটা পড়ার প্রয়োজন হয়। আমাদের যদি ডিস্কে প্রতিবার যাওয়ার প্রয়োজন হয় যে এসকিউএল সার্ভারের ডিস্কের ওপরে একই ডেটার প্রয়োজন হয় IO প্রয়োজনীয়তাগুলি অত্যন্ত বেশি হবে।

সাধারণত আমি মানুষকে উইন্ডোজের জন্য প্রায় 4 জিগ র‌্যাম রাখার পরামর্শ দিই তবে এটি সার্ভারে চলমান কতগুলি সফটওয়্যার, এসকিউএল সার্ভারের কোন উপাদানগুলি আপনি ব্যবহার করছেন (সমস্ত উপাদান সেই সেটিংটি অনুসরণ করে না) ইত্যাদি উপর নির্ভর করে etc.


6

এটি এসকিউএল পুনরায় আরম্ভের প্রয়োজন ছাড়াই তাত্ক্ষণিকভাবে কাজ করে:

সার্ভার মেমরি সার্ভার কনফিগারেশন বিকল্প

এসকিউএল সার্ভারের একটি উদাহরণের জন্য এসকিউএল সার্ভার মেমরি ম্যানেজার দ্বারা পরিচালিত মেমরির পরিমাণ (মেগাবাইটে) পুনরায় কনফিগার করতে দুটি সার্ভার মেমরি বিকল্প এবং মিনি সার্ভার মেমরি এবং সর্বোচ্চ সার্ভার মেমরি ব্যবহার করুন। ডিফল্টরূপে, এসকিউএল সার্ভার উপলব্ধ সিস্টেম সংস্থার ভিত্তিতে গতিশীলভাবে এর মেমরির প্রয়োজনীয়তাগুলি পরিবর্তন করতে পারে।

একটি নির্দিষ্ট পরিমাণ মেমরি কনফিগার করার প্রক্রিয়া একটি নির্দিষ্ট পরিমাণ মেমরি সেট করতে:

  1. অবজেক্ট এক্সপ্লোরারে, একটি সার্ভারে ডান ক্লিক করুন এবং বৈশিষ্ট্যগুলি নির্বাচন করুন।
  2. মেমরি নোড ক্লিক করুন।
  3. সার্ভার মেমোরি বিকল্পের অধীনে, ন্যূনতম সার্ভার মেমরি এবং সর্বোচ্চ সার্ভার মেমরির জন্য আপনি যে পরিমাণটি চান তা লিখুন।

উপলভ্য সিস্টেম সংস্থানগুলির উপর ভিত্তি করে এসকিউএল সার্ভারকে মেমরির প্রয়োজনীয়তাগুলি পরিবর্তনশীলভাবে পরিবর্তন করার অনুমতি দেওয়ার জন্য ডিফল্ট সেটিংস ব্যবহার করুন। মিনিট সার্ভার মেমরির জন্য ডিফল্ট সেটিংস 0 এবং সর্বোচ্চ সার্ভার মেমরির ডিফল্ট সেটিংস 2147483647 মেগাবাইট (এমবি)।

আশা করি এটা কাজে লাগবে!


3

যেমন এরিক বলেছিলেন, অন্যান্য প্রক্রিয়াগুলির জন্য ফাঁকা জায়গা রাখতে আপনাকে মেমরিটি পরিচালনা করতে হবে। সর্বাধিক স্মৃতি কীভাবে সেট করবেন সে সম্পর্কে একটি সাধারণ ব্যাখ্যা এবং কিছু নির্দেশনার জন্য, জোনাথন কেহায়িয়াসের পোস্টটি দেখুন:

http://www.sqlskills.com/blogs/jonathan/how-much-memory-does-my-sql-server-actually-need/

আপনার সার্ভারের ব্যবহার বিবেচনায় রেখে আপনি প্রস্তাবটি পরিবর্তন করতে পারেন।


1

এসকিউএল সার্ভার উপলব্ধ র‌্যামটি ব্যবহার করবে যদি না আপনি ব্যবহারের উপর একটি ক্যাপ রাখেন। একটি নিয়ম হিসাবে আমি ওএসের জন্য 2 জিবি ছাড়াই কম রাখার চেষ্টা করি, অর্থাত্ যদি আপনার হোস্টটিতে 64 গিগাবাইট শারীরিক র‌্যাম থাকে তবে এসকিউএল সার্ভার @ 62 জিবি ক্যাপ করুন।

http://msdn.microsoft.com/en-us/library/ms191144(v=sql.105).aspx

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.