MySQL-এ ব্যবহৃত mysql_plugin ইউটিলিটি বুঝি:
mysql_plugin ইউটিলিটি MySQL অ্যাডমিনিস্ট্রেটরদের MySQL সার্ভার যে প্লাগইনগুলো লোড করে সেগুলো ম্যানেজ করতে দেয়।
এটি সার্ভার স্টার্টআপে ম্যানুয়ালি --plugin-load অপশন নির্দিষ্ট করার অথবা রানটাইমে INSTALL PLUGIN এবং UNINSTALL PLUGIN স্টেটমেন্ট ব্যবহার করার বিকল্প সরবরাহ করে।
mysql_plugin কীভাবে আহ্বান করা হয় (প্লাগইন ইনএবল বা ডিজেবল) তার উপর নির্ভর করে, ইউটিলিটি mysql.plugin টেবিলে সারি ইনসার্ট বা ডিলিট করে যা একটি প্লাগইন রেজিস্ট্রি হিসেবে কাজ করে।
সামান্য সার্ভার স্টার্টআপের জন্য, সার্ভার mysql.plugin-এ লিস্ট করা প্লাগইনগুলো স্বয়ংক্রিয়ভাবে লোড এবং ইনএবল করে।
প্লাগইন এক্টিভেশনের উপর অতিরিক্ত কন্ট্রোলের জন্য, নির্দিষ্ট প্লাগইন জন্য নামকৃত --plugin_name অপশনগুলো ব্যবহার করা যেতে পারে।
mysql_plugin-এর প্রতিটি আহ্বান একটি কনফিগারেশন ফাইল পড়ে যা একটি সিঙ্গল প্লাগইন লাইব্রেরি ফাইলে থাকা প্লাগইনগুলো কীভাবে কনফিগার করা হবে তা নির্ধারণ করতে সাহায্য করে। mysql_plugin আহ্বান করতে নিচের কমান্ড ব্যবহার করা যায়:
mysql_plugin [options] plugin {ENABLE|DISABLE}
এখানে, 'plugin' কনফিগার করা প্লাগইনটির নামকে বোঝায়।
ENABLE বা DISABLE কেস-ইনসেনসিটিভ এবং প্লাগইন লাইব্রেরির কম্পোনেন্টগুলো (যেটি কনফিগারেশন ফাইলে নামांकিত) ইনএবল বা ডিজেবল করতে ব্যবহৃত হয়।
plugin এবং ENABLE বা DISABLE আর্গুমেন্টের অর্ডার মেনে না।
উদাহরণ দেখি:
লিনাক্সে 'myplugins.so' বা উইন্ডোজে 'myplugins.dll' নামে একটি প্লাগইন লাইব্রেরি ফাইলের কম্পোনেন্ট কনফিগার করতে, myplugins মানটি plugin হিসেবে নির্দিষ্ট করতে হবে।
মনে করুন এই প্লাগইন লাইব্রেরিতে তিনটি প্লাগইন রয়েছে: plugin1, plugin2, এবং plugin3, যেগুলো সব mysql_plugin কন্ট্রোলের অধীনে কনফিগার করতে হবে।
প্রথা অনুযায়ী, কনফিগারেশন ফাইলগুলোর সাফিক্স .ini এবং প্লাগইন লাইব্রেরির সাথে একই বেস নাম থাকে, তাই এই প্লাগইন লাইব্রেরির ডিফল্ট কনফিগারেশন ফাইল নাম 'myplugins.ini'।
কনফিগারেশন ফাইলের কন্টেন্ট যেন হবে:
myplugins plugin1 plugin2 plugin3
myplugins.ini ফাইলের প্রথম লাইন লাইব্রেরি ফাইলের নামকে বোঝায়, এক্সটেনশন (.so বা .dll) ছাড়া।
বাকি লাইনগুলো ইনএবল বা ডিজেবল করা কম্পোনেন্টের নাম।
ফাইলের প্রতিটি ভ্যালু আলাদা লাইনে থাকতে হবে।
যেসব লাইনের প্রথম ক্যারেক্টার '#' সেগুলো কমেন্ট বলে মনে করা হয় এবং উপেক্ষা করা হয়।
কনফিগারেশন ফাইলে লিস্ট করা প্লাগইনগুলো ইনএবল করতে নিচের mysql_plugin আহ্বান করতে হবে:
shell> mysql_plugin myplugins ENABLE
প্লাগইনগুলো ডিজেবল করতে ENABLE-র জায়গায় DISABLE ব্যবহার করতে হবে।
যদি mysql_plugin কনফিগারেশন ফাইল বা প্লাগইন লাইব্রেরি ফাইল খুঁজে না পায়, অথবা MySQL সার্ভার স্টার্ট করতে না পারে, তবে এরর দেখায়।
mysql_plugin নিচের অপশনগুলো সমর্থন করে। এগুলো কমান্ড লাইনে বা যেকোনো অপশন ফাইলের [mysqld] গ্রুপে নির্দিষ্ট করা যায়।
--help, -?
হেল্প মেসেজ দেখিয়ে এক্সিট করে।
--basedir=dir_name, -b dir_name
সার্ভার বেস ডিরেক্টরি।
--datadir=dir_name, -d dir_name
সার্ভার ডেটা ডিরেক্টরি।
--my-print-defaults=file_name, -b file_name
my_print_defaults প্রোগ্রামের পাথ।
--mysqld=file_name, -b file_name
mysqld সার্ভারের পাথ।
--no-defaults, -p
কনফিগারেশন ফাইল থেকে কোনো মান পড়া উচিত নয় বলে নির্দেশ করে। এই অপশন অ্যাডমিনিস্ট্রেটরকে কনফিগারেশন ফাইল থেকে ডিফল্ট পড়া বাদ দিতে সক্ষম করে।
--plugin-dir=dir_name, -p dir_name
সার্ভার প্লাগইন ডিরেক্টরি।
--verbose, -v
ভার্বোজ মোড। প্রোগ্রাম কী করছে তার বেশি ইনফরমেশন প্রিন্ট করে। এই অপশন একাধিকবার ব্যবহার করা যায় ইনফরমেশন আউটপুট বেড়াতে।
--version, -V
ভার্সন ইনফরমেশন দেখিয়ে এক্সিট করে।