অপ্টিমাইজেশন ব্যবহার করতে পারে এমন কোনও প্রশ্নের শনাক্ত করার জন্য আমি আমাদের সার্ভারে স্লো কোয়েরি লগিং সক্ষম করার চেষ্টা করছি। যথেষ্ট সহজ মনে হচ্ছে, তবে আমার ফাইলটি লিখিত হচ্ছে না। আমি কোনও ত্রুটি বা এর মতো কোনও কিছুই পাই না, এটি ধীর অনুসন্ধানগুলিতে লগইন করে বলে মনে হয় না। আমার কনফিগারেশনের পরিবর্তনের পরে মাইএসকিএল পুনরায় চালু করার কথা মনে আছে।
আমি মাইএসকিউএল ভেরি 5.1.61 ব্যবহার করছি। আমার মাই সিএনএফ-এ যা আছে তা এখানে:
slow-query-log=1
slow-query-log-file=/var/logs/my.slow.log
long_query_time=1
/var/logs/my.slow.log ফাইলটির মালিক হিসাবে মাইএসকিএল রয়েছে, ডিবাগিংয়ের স্বার্থে আমি লগ ফাইলটিতে সকলকে পড়তে / লিখতে দিয়েছি।
আমি ঠিক_এটি কাজ করে কিনা তা দেখতে চাই হিসাবে উপরের 1 টির উপরে দীর্ঘ_ প্রশ্ন_সামগ্রী সেট করা আছে। আমি এটিকে কম সেট করার চেষ্টা করেছি (উদাঃ ০.০) তবে আমি এখনও কোনও লগইন পাচ্ছি না। আমি জানি যে আমার অ্যাপ্লিকেশন যে প্রশ্নগুলি চালাচ্ছে সেগুলি 1 সেকেন্ডেরও বেশি সময় নেয় এবং আমি SELECT sleep(10);
পরীক্ষার জন্য ইচ্ছাকৃতভাবে টার্মিনালে লগ ক্যোয়ারী ( ) লগ করেছি এবং লগটি এখনও খালি রয়েছে।
আমি ডক্সটি দেখেছি, যা দেখতে পাচ্ছি তা থেকে কাজ করা উচিত। আমি কী ভুল করছি সে সম্পর্কে কারও কোনও পরামর্শ আছে? কোন পরামর্শ প্রশংসা করা হবে, অনেক ধন্যবাদ!
সম্পাদনা: মন্তব্যে জিজ্ঞাসা করা হিসাবে আমি ক্যোয়ারী চালিয়েছি:
`SELECT variable_value FROM information_schema.global_variables WHERE variable_name IN ('slow_query_log','slow_query_log_file','long_query_time');`
ফলাফল:
10.0000000
/var/run/mysqld/mysqld-slow.log
OFF
স্পষ্টতই আমার কনফিগারেশনের পরিবর্তনগুলি আমলে নেওয়া হচ্ছে না কারণ আমি বিশ্বাস করি যে এগুলি পূর্বনির্ধারিত। আমি যথেষ্ট নিশ্চিত যে আমার যে সিএনএনএফ ফাইলটি পরিবর্তন করছি তা পার্স করা হচ্ছে যেন আমি কোনও অবৈধ মান মাইএসকিএল রেখে দিলে পুনরায় চালু করার সময় ত্রুটি ঘটবে। এখানে কি হচ্ছে হতে পারে?
অন্য সম্পাদনা:
@ রোল্যান্ডোমাইএসকিউএলডিবিএ'র পরামর্শ নেওয়ার পরে এবং আমার ধীরে ধীরে ক্যোয়ারী কনফিগার লাইনগুলিকে [mysqld]
আমার সেটিংসের আওতায় নিয়ে যাওয়ার পরে মনে হচ্ছে এটি সংরক্ষণ করা হচ্ছে। এখন উপরের পরিবর্তনশীল_মূল্য ক্যোয়ারির ফলাফল:
1.0000000
/var/logs/my.slow.log
ON
তবে আমি এখনও আমার.স্লো.লগ ফাইলটি দেখছি না। ফাইলটি মাইএসকিএল এর মালিকানাধীন বলে আমি মনে করি এটি কোনও অনুমতি সংক্রান্ত সমস্যা নয় এবং আমি ফাইলটিতে সমস্ত ব্যবহারকারীর জন্য সমস্ত অনুমতি যুক্ত করেছি। কেউ কাজ করে না কেন এমন কোনও কারণ চিন্তা করতে পারে?
সম্পাদনা: সলভ! ধীর ক্যোয়ারী লগের পথটি ভুল ছিল, এটি / var / লগ * গুলি * / আমার.স্লো.লগের পরিবর্তে /var/log/my.slow.log হওয়া উচিত । সহায়তার জন্য সকলকে ধন্যবাদ, আমি বরাদ্দ শিখেছি!
SET GLOBAL log_output=FILE
এটা আমার জন্য স্থির কর
SELECT variable_value FROM information_schema.global_variables WHERE variable_name IN ('slow_query_log','slow_query_log_file','long_query_time');
এবং এর আউটপুট পোস্ট করুন।