ভারী InnoDB কাজের চাপের জন্য আপনি কীভাবে মাইএসকিউএল টিউন করবেন?


39

প্রধানত ইনোডিবি টেবিল সহ একটি উত্পাদন ওলটিপি সিস্টেম ধরে নেওয়া হচ্ছে

  • একটি অপব্যবহৃত / ভুল কনফিগার্ড সিস্টেমের সাধারণ লক্ষণগুলি কী কী?
  • আপনি সাধারণত কি ডিফল্ট থেকে কনফিগারেশন প্যারামিটারগুলি পরিবর্তন করেন?
  • কোনও সমস্যা হওয়ার আগে আপনি কীভাবে সম্ভাব্য বাধা চিহ্নিত করবেন?
  • আপনি কীভাবে সক্রিয় সমস্যাগুলি সনাক্ত এবং সমাধান করতে পারেন?

নির্দিষ্ট statusভেরিয়েবল এবং ডায়াগনস্টিকস সম্পর্কিত কোনও উপাখ্যান প্রশংসিত হবে।


2
এই প্রশ্নটি ভয়াবহভাবে বিস্তৃত। আপনি এটি 4 টি প্রশ্নে বিভক্ত করতে পারেন? (এবং এমনকি আপনার বুলেটযুক্ত প্রশ্ন অবিশ্বাস্যভাবে বিস্তৃত আপনি আপনার নির্দিষ্ট সমস্যা তাদের instantiate যাবে না।?)
ব্রায়ান Ballsun-স্টানটন

উত্তর:


16

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


4
জেনি চেন কে?
পেসারিয়ার

19

মজার বিষয় হল, মাইএসকিউএল 5.5-এ, আপনি এখন একাধিক ইনোডাব বাফার পুল রাখতে পারেন।

আপনার প্যারামিটারগুলি যত্নশীল

প্রায় এক মাসে, আমি একজন ক্লায়েন্টের জন্য 112 ইন্নাডব বাফার পুল বাস্তবায়ন করতে চলেছি। আমি আপনাকে জানাতে পারি যে এটি কীভাবে চলেছে।

আপডেট করুন 2011-02-27 21:57 ইডিটি

আমি ইনোডাব_ফুফার_পুল_সংশ্লিষ্টগুলির সর্বাধিক মান জানতে পেরেছি I৪ টি আমি 144 গিগাবাইট কনফিগার করার সিদ্ধান্ত নিয়েছি, তাই আমি ইনোডাব_বফার_পুল_সিনটিশনস 18 এবং ইনোডাব_বফার_পুল_সাইজ 8 সেট করে রেখেছি I আমি বর্তমানে 450 জিবি দিয়ে সার্ভারটি লোড করছি

আপডেট ২০১১-০৪-২৮ ১৩:৪৪ ইডিটি

আমি একাধিক InnoDB বাফার পুল চেষ্টা করেছিলাম। অনেক বেশি থ্রেডিং লকিং এবং বিতর্ক ছিল। আমি একক 162 গিগাবাইটের বাফার পুল + এ রিডিং_আই_থ্রেড এবং সেটিং_ইও_থ্রেডগুলিকে 64 (সর্বোচ্চ মান) এ সেট করেছি setting এই উপায় ভাল কাজ।

আপডেট 2012-07-03 17:27 ইডিটি

আমি মাইএসকিউএল সম্পর্কে আশ্চর্যজনক কিছু শিখেছি। যদি আপনি একটি একক একক ইন্নোডিবি বাফার পুল বরাদ্দ করেন যা মোট ইনস্টলড ফিজিক্যাল সিপিইউ সংখ্যার দ্বারা বিভক্ত হয়ে থাকে তবে সম্পূর্ণ ইনোডিবি বাফার পুলের কারণে আপনার ওএসকে নিয়মিত বিরতি মেমরি অদলবদল করতে উত্সাহিত করবে। মাইএসকিউএল 5.5 এর বিকল্পটি ইনোডাব_ফার_পুল_সামান্য হিসাবে পরিচিত বাফার পুলটি বিভক্ত করতে ব্যবহার করা যেতে পারে। গতকাল, আমি গত বছর আমার উত্তরে যে ক্লায়েন্টটির উল্লেখ করেছি তার জন্য আমি এটি যথাযথভাবে প্রয়োগ করেছি। ক্লায়েন্টের বাফার পুলের জন্য এখনও আমার কাছে 162 জিবি রয়েছে। প্রতিটি ডিবি সার্ভার দ্বৈত হেক্সাকোর হওয়ায় আমি সার্ভারের ইনোডাব_ফুফার_পুল_ইনস্ট্যান্ট বিকল্পটি 2 তে সেট করে রেখেছি। আমি এটি 12 এ সেট করার কথা ভাবছিলাম কিন্তু তার পরে একজন সহকর্মী আমাকে মাইএসকিউএল এবং অদলবদল সম্পর্কিত জেরেমি কোলের একটি ব্লগ দেখিয়েছিলেন। এটি পড়ার পরে, আমি তা আমার ক্লায়েন্টের জন্য অবিলম্বে অনুশীলনে রেখেছি। আমি এই আদেশ চালিয়েছি

numactl --hardware

আমি প্রতিটি শারীরিক কোরকে 96 গিগাবাইট হিসাবে 192 গিগাবাইট সার্ভার র‌্যামের ম্যাপিং দেখেছি। অতএব, আমি ইনোডাব_বফার_পুল_সামগ্রীগুলিকে 2 তে সেট করেছি Th এটি পরবর্তী 2 মন্টনের জন্য মেমরির অদলবদলকে কীভাবে প্রভাবিত করে তা দেখতে আমি আমার উত্তর আপডেট করব।


হাই @ রোল্যান্ডোমাইএসকিউএলডিবিএ, জেরেমির ব্লগগুলি থেকে আমি এমন কোনও সংযোগ বা উপসংহার পাচ্ছি না যা ইনোডাব উদাহরণটি শারীরিক সিপিইউয়ের সংখ্যার সমান হয়ে ওঠা সমস্যা সমাধান করবে। মাইনাল নোডের মধ্যে একাধিক ইনোডাব উদাহরণগুলি স্বয়ংক্রিয়ভাবে ভারসাম্য বজায় রাখবে নম্বাকটল --interleave = all না রেখে, লিনাক্সের বাফার ক্যাশেগুলি ফ্লাশ করছে বা ওএসকে InnoDB এর বাফার পুল বরাদ্দ করতে বাধ্য করবে?
ওয়েন রেন

@ রোল্যান্ডো, নিস 2x 100 জিবি র‌্যাম। এটি কোন ক্লায়েন্ট?
পেসারিয়ার

আমি ভেবেছিলাম "দৃষ্টান্তগুলি" এভাবে প্রয়োগ করা হয়েছিল: (ব্লক নম্বর) এমওডি (নাম্বার উদাহরণ) -> (কোন উদাহরণটি ব্লকটি স্থাপন করা উচিত)। এর NUMA এর সাথে কোনও সম্পর্ক নেই
রিক জেমস

7

আপনি নিম্নলিখিত সংস্থানগুলি অন্বেষণ করতে চাইতে পারেন:


4

প্রথমে my.cnf- এ ডিফল্ট InnoDB বাফার পুলের আকার বাড়ান (আমি এটি 8MB তে ডিফল্ট বিশ্বাস করি)

আপনার র‌্যাম আকারের সম্ভবত 75% এ সেট করা উচিত (সাধারণভাবে)


-1

আপনি সাধারণত কি ডিফল্ট থেকে কনফিগারেশন প্যারামিটারগুলি পরিবর্তন করেন?

মেমরি কনফিগারেশন


আপনি আরও ব্যাখ্যামূলক উত্তর দিতে পারেন? তাদের সম্পর্কে আপনি কি পরিবর্তন করবেন? আপনি কেন এই পরিবর্তনগুলি করেন? পরিবর্তনের পরে আপনার প্রত্যাশিত পর্যবেক্ষণগুলি কী কী? কীভাবে আপনি তাদের কীভাবে পরিবর্তন করবেন তা জানবেন?
jcolebrand

বাক্সের বাইরে মাইএসকিএল কনফিগারেশনটি মাইসাম টেবিলগুলি দ্রুত সেটআপ করার জন্য প্রস্তুত করা হয় (বেশিরভাগ ব্যবহারকারী এটি সেভাবে ব্যবহার করেন) পাশাপাশি ভালতর অনুকূলিত সার্ভারের জন্য আপনাকে ব্যবহার করতে "প্রাথমিক" ইঞ্জিনটি বেছে নেওয়া উচিত (ইনোডাবড বা মাইএসকিএল) কারণ এটি বেশ কার্যকর বুথ ইঞ্জিনগুলির জন্য দুর্দান্ত পারফরম্যান্সের জন্য ডাটাবেস কনফিগার করা শক্ত, মাইএসকিউএলে মাইসাম এবং ইনানোডব ইঞ্জিনগুলির জন্য পৃথক বাফার রয়েছে
sbczk
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.