কম্পিউটার

মাইএসকিউএল রিস্টার্ট না করে কিভাবে আমি মাইএসকিউএল ধীরগতির ক্যোয়ারী লগ সক্ষম করতে পারি?


আমরা SET স্টেটমেন্টের সাহায্যে MySQL ধীরগতির ক্যোয়ারী লগ সক্রিয় করতে পারি।

নিচের সিনট্যাক্স।

SET GLOBAL slow_query_log ='মান';

উপরের সিনট্যাক্সে, মান ON/OFF দিয়ে পূরণ করা যেতে পারে। ধীরগতির ক্যোয়ারী লগ সক্ষম করতে, আসুন আমরা ক্যোয়ারীটি দেখি।

mysql> SET GLOBAL slow_query_log ='ON'; কোয়েরি ঠিক আছে, 0 সারি প্রভাবিত (0.00 সেকেন্ড)

ধীরগতির কোয়েরি চালু আছে কিনা তা পরীক্ষা করতে, নিম্নলিখিত ক্যোয়ারীটি প্রয়োগ করুন -

mysql> 'ধীর\_%' এর মত বিশ্বব্যাপী ভেরিয়েবল দেখান;

এখানে আউটপুট।

<পূর্ব>+---------------------------------- --+| পরিবর্তনশীল_নাম | মান |+---------+------------------------- -+| ধীরে_লঞ্চের_সময় | 2 || slow_query_log | চালু | | slow_query_log_file | DESKTOP-QN2RB3H-slow.log |+-------------------------+------------------- -------+3 সারি সেটে (0.00 সেকেন্ড)

আমরা সেকেন্ডের মধ্যে ধীর ক্যোয়ারী সময় সেট করেছি কারণ যদি কোনো প্রশ্ন প্রদত্ত সেকেন্ডের বাইরে হয়, তাহলে এটি ধীরগতির ক্যোয়ারী লগ ফাইলে প্রবেশ করবে।

আমরা সেকেন্ডও সেট করতে পারি। এখানে সেকেন্ড সেট করার জন্য ক্যোয়ারী আছে।

mysql> GLOBAL long_query_time =20 সেট করুন; কোয়েরি ঠিক আছে, 0 সারি প্রভাবিত (0.00 সেকেন্ড)

সময় ঢোকানো হয়েছে কিনা তা পরীক্ষা করতে।

mysql> 'long_query_time'-এর মতো বিশ্বব্যাপী ভেরিয়েবল দেখান;

এখানে উপরের ক্যোয়ারীটির আউটপুট।

<প্রে>+-----------------+------------+| পরিবর্তনশীল_নাম | মান |+-----------------+------------+| long_query_time | 20.000000 |+------+---------+1 সারি সেটে (0.00 সেকেন্ড)

উপরের কাজটি করার পর, আমাদের লগগুলি ফ্লাশ করতে হবে।

mysql> FLUSH LOGS; কোয়েরি ঠিক আছে, 0 সারি প্রভাবিত (0.25 সেকেন্ড)

দ্রষ্টব্য − আমরা my.cnf ফাইলের সাহায্যে এটিকে স্থায়ীভাবে নিষ্ক্রিয় করতে পারি। স্লো_কোয়েরি_লগ =0 সেট করুন; নিষ্ক্রিয় করতে।


  1. মাইএসকিউএল-এ সাউন্ডএক্স() কীভাবে প্রশ্ন করবেন?

  2. যদি একটি প্রশ্ন MySQL এ একটি শূন্য মান প্রদান করে তাহলে আমি কিভাবে 0 সেট করতে পারি?

  3. আমি কিভাবে MySQL এ innoDB ইনস্টল বা সক্ষম করতে পারি?

  4. কিভাবে আমি একটি MySQL ক্যোয়ারীতে অনেক বা বিবৃতি এড়াতে পারি?