মাইএসকিএল 5.5-এ ওপেন-ফাইল-সীমা পরিবর্তন করা হচ্ছে


9

আমি ওপেন-ফাইলস-সীমা পরামিতি সহ উবুন্টু 12.04 এ চলছে মাইএসকিএল 5.5 এর সাথে আমার একটি সমস্যা রয়েছে।

আমি সম্প্রতি 1024 সীমাবদ্ধতার কারণে কিছু সমস্যা লক্ষ্য করেছি এবং প্রকৃতপক্ষে মূল সিস্টেমের সীমা 1024 এ সেট করা হয়েছিল, সুতরাং আমি নিম্নলিখিতটি দিয়ে /etc/security/limits.conf পরিবর্তন করেছি:

* soft nofile 32000
* hard nofile 32000
root soft nofile 32000
root hard nofile 32000

এর পরে আমি মূলের জন্য এমনকি মাইএসকিএল ব্যবহারকারীর জন্যও ইউলিমিট মানটি যাচাই করেছিলাম, দুজনেই নতুন মানটি ফিরিয়ে দিয়েছি: 32000, সুতরাং আমি ধরে নিলাম পরিবর্তনটি ইতিমধ্যে হয়ে গেছে।

আমি my.cnf ফাইলে মানটিও পরিবর্তন করে, ওপেন-ফাইল-সীমাটি 24000 এ সেট করেছিলাম:

open-files-limit    = 24000

এখন অদ্ভুত অংশটি আসে, যখন আমি মাইএসকিএল পরিষেবাটি পুনরায় চালু করি এবং ওপেন-ফাইলস_মিলিট ভেরিয়েবলটি পরীক্ষা করি, এটি ফিরে আসে যে এটি এখনও 1024 এ সেট করা আছে, সুতরাং আমার একই সমস্যা রয়েছে যা আগে (স্পষ্টতই), আমি ওপেন-ফাইল-সীমা ব্যবহার করার চেষ্টা করেছি পরিবর্তে my.cnf কনফিগারেশন ফাইলটিতে open_files_limit, একই ফলস্বরূপ, তবে যদি আমি পরিষেবাটি আরম্ভ করার জন্য সার্ভিস কমান্ডকে ওভাররাইড করি এবং কেবল mysqld (কোনও অতিরিক্ত প্যারামিটার ব্যবহার না করে) শুরু করি, পরিষেবাটি শুরু হয় এবং আমি যখন প্যারামিটারটি পরীক্ষা করি তখন 32000 ফিরে আসে ... এটি আমার মাই সিএনএফ-তে সেট করা হয়নি এবং এটি কমপক্ষে নিজের জন্য নয়, কমান্ড লাইনের মাধ্যমে দেওয়া হচ্ছে না বলে এটি কোথায় থেকে এই মানটি নিয়েছে তা আমি জানি না।

কেন এটি পরিবর্তনটি কাজ করছে না এবং কীভাবে এটি সাধারণ উপায়ে সমাধান করবেন (সেবার মাধ্যমে এটি চালু করা হচ্ছে ...) সম্পর্কে কোনও ধারণা?

উত্তর:


9

আমি অবশেষে সমস্যাটি পেয়েছি, মনে হচ্ছে আপস্টার্ট /etc/security/limits.conf এ সংজ্ঞায়িত প্যারামিটারগুলি ব্যবহার করে না, সুতরাং যখন আমি সার্ভিস কমান্ডের মাধ্যমে mysql চালু করি (এবং তাই, আপস্টার্টের অধীনে), এটি সেই সংজ্ঞায়িত সীমা ও ব্যবহারগুলিকে ওভাররাইড করে ডিফল্ট 1024।

সমাধানটি হল mysql.conf ফাইলটি সংশোধন করা যা আপস্টার্ট পরিষেবাটি সংজ্ঞায়িত করে, এটি /etc/init/mysql.conf এ অবস্থিত এবং প্রাক-শুরু ব্লকের আগে নিম্নলিখিত লাইনগুলি যুক্ত করুন:

# NB: Upstart scripts do not respect
# /etc/security/limits.conf, so the open-file limits
# settings need to be applied here.
limit nofile 32000 32000
limit nproc 32000 32000

প্রথম মানটি নরম সীমাটি সংজ্ঞায়িত করে, অন্যটি, হার্ড সীমাটি একবার সেই লাইনগুলিকে যুক্ত করে, সার্ভিসটি my.conf ফাইলে সংজ্ঞায়িত মানগুলি প্রত্যাশা অনুযায়ী কাজ করে।

এই সীমাবদ্ধতা প্রতিটি upstart পরিষেবাদির জন্য প্রয়োগ করা উচিত যা এটি / etc / init-এ সংজ্ঞায়িত করা হয়েছে, সুতরাং যদি কোনও সার্ভিসে ওপেন ফাইল সীমাতে একই সমস্যা থাকে তবে এই সমাধানটি কাজ করা উচিত।


1
সেখানে দুর্দান্ত কাজ!
pkhamre

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