কম্পিউটার

মাইএসকিউএল পুনরায় চালু হলেও গ্লোবাল ইভেন্ট_শেডিউলার=ON কিভাবে সেট করবেন?


মাইএসকিউএল পুনরায় চালু হলেও আপনি একটি বিশ্বব্যাপী ইভেন্ট_শেডিউলার=ON সেট করতে পারেন এমন একটি একক উপায় রয়েছে। আপনাকে গ্লোবাল সিস্টেম ভেরিয়েবল চালু করতে হবে এবং MySQL রিস্টার্ট হলেও এই সিস্টেম ভেরিয়েবল ব্যবহার করতে হবে।

এই জন্য, আমি নির্বাচন বিবৃতি ব্যবহার করে সিস্টেম ভেরিয়েবল @@event_scheduler ব্যবহার করছি। প্রশ্নটি নিম্নরূপ:

mysql> select @@event_scheduler;

নিম্নলিখিত আউটপুট:

+-------------------+
| @@event_scheduler |
+-------------------+
| ON                |
+-------------------+
1 row in set (0.00 sec)

এখন, MySQL পুনরায় চালু করুন। প্রশ্নটি নিম্নরূপ:

mysql> restart;
Query OK, 0 rows affected (0.00 sec)

সার্ভার পুনরায় চালু করার পরে কিছু সময়ের জন্য সংযোগ বিচ্ছিন্ন হয়। আপনি যদি কোনো প্রশ্ন ব্যবহার করেন তবে আপনি নিম্নলিখিত ত্রুটি বার্তা পাবেন:

mysql> select @@event_scheduler;
ERROR 2013 (HY000): Lost connection to MySQL server during query

কিছু সময়ের পর আপনি যদি সিলেক্ট স্টেটমেন্ট ব্যবহার করে আবার সিস্টেম ভেরিয়েবল @@event_scheduler ব্যবহার করেন, তাহলে আউটপুট আপনি একই পাবেন অর্থাৎ অন। প্রশ্নটি নিম্নরূপ:

mysql> select @@event_scheduler;
ERROR 2006 (HY000): MySQL server has gone away
No connection. Trying to reconnect...
Connection id: 8
Current database: *** NONE ***
+-------------------+
| @@event_scheduler |
+-------------------+
| ON                |
+-------------------+
1 row in set (0.04 sec)

অথবা আপনি my.cnf ফাইল বা my.ini ফাইলে event_scheduler ON সেট করতে পারেন। বিবৃতিটি নিম্নরূপ:

[mysqld]
event_scheduler = ON;

এখন আপনার ইভেন্ট_শিডিউলার চালু আছে। আপনার সার্ভার পুনরায় চালু হোক বা না হোক, এটি সর্বদা চালু থাকবে।


  1. কিভাবে MySQL এ একটি ভেরিয়েবল ঘোষণা করবেন?

  2. কিভাবে একটি MySQL ডাটাবেসে একটি একক টেবিলের ব্যাকআপ নিতে হয়?

  3. কিভাবে MySQL এ স্থায়ীভাবে sql_mode সেট করবেন?

  4. MySQL-এ INFORMATION_SCHEMA.key_column_usage-এর খারাপ কর্মক্ষমতা কীভাবে ঠিক করবেন?