পিএইচপির গত সংখ্যায় আমরা ডাটাবেজ শুরু করেছিলাম৷ আমরা দেখেছি কিভাবে ডাটাবেজ তৈরি করতে হয়৷ সেই সঙ্গে আমরা দেখেছি টেবিল তৈরি করাসহ ডাটাবেজের প্রাথমিক কিছু কাজ৷ অনেকেই ই-মেইল করেছেন যে ডাটাবেজ কিভাবে কনফিগার করতে হবে তা নিয়ে আলোচনা করার জন্য৷ তাদের পরামর্শ মাথায় রেখে সিস্টেমে কিভাবে মাই এসকিউএল কনফিগার করতে হয় তা নিয়ে এবারের আলোচনা৷
মাই এসকিউএলের ডিফল্ট লোকেশনেই ইনস্টল করা যেতে পারে৷ ইনস্টলের পর প্রোগ্রামস থেকে MySQL Server Instance Config Wizard চালু করতে হবে৷ ইনস্টল করার পরপরই এই কনফিগারেশন উইজার্ড স্বংয়ক্রিয়ভাবে চালু হয়ে যায়৷ তখন কনফিগার করে নেয়া যায়৷ তবে তখন কনফিগার না করলে পরেও এভাবে কনফিগার করা যায়৷
MySQL Server Instance Config Wizard চালু হলে শুরুতেই জানতে চাইবে কেমন করে সিস্টেমে ডাটাবেজ কনফিগার করতে চান? দুই ভাবে ডাটাবেজ কনফিগার করা যায়৷ একটি হচ্ছে ডিটেইল্ড কনফিগারেশন, আরেকটি হচ্ছে স্ট্যান্ডার্ড কনফিগারেশন৷ স্ট্যান্ডার্ড কনফিগারেশন দিয়ে কনফিগার করলে সিস্টেম ডাটাবেজ ডিফল্টভাবে কনফিগার করে নেবে৷ আমরা ডিটেইল্ড কনফিগারেশন সিলেক্ট করব৷
সিস্টেমকে তিনভাবে কনফিগার করা যায়৷ এগুলো হচ্ছে ডেভেলপারদের সিস্টেম, ডাটাবেজ সার্ভার এবং শুধু মাই এসকিউএলের সার্ভার হিসেবে৷ মাই এসকিউএলের সার্ভার হিসেবে সিস্টেম কনফিগার করলে সিস্টেম ডাটাবেজ সার্ভারে পরিণত হবে এবং ডাটাবেজ হিসেবে শুধু মাই এসকিউএল থাকবে৷ তাই বলে অন্যান্য সার্ভার হিসেবে সিস্টেম কনফিগার করা যাবে না, ঠিক তা নয়৷ মেইল সার্ভার বা ওয়েব সার্ভার হিসেবে ব্যবহার করা গেলেও অন্য কোনো ডাটাবেজ সার্ভার হিসেবে ব্যবহার করা যাবে না৷ যেহেতু আমরা প্রজেক্ট তৈরি করব, তাই সিস্টেমকে ডেভেলপার মেশিন হিসেবে কনফিগার করতে হবে৷
পরের মেনুতে সিলেক্ট করতে হবে কিভাবে সিস্টেমের ডাটাবেজ নিয়ে কাজ করা যাবে৷ এখানে নির্বাচন করতে হবে ডাটাবেজগুলো কী ধরনের হবে৷ নির্বাচন করার জন্য তিনটি অপশন পাওয়া যাবে৷ এগুলো হচ্ছে মাল্টিফাংশনাল ডাটাবেজ, ট্রানজ্যাকশনাল ডাটাবেজ এবং ননট্রানজ্যাকশনাল ডাটাবেজ৷ প্রাথমিকভাবে মাল্টিফাংশনাল ডাটাবেজ হিসেবে সিস্টেমকে কনফিগার করে নিন৷ ট্রানজ্যাকশনাল ডাটাবেজ এবং ননট্রানজ্যাকশনাল ডাটাবেজ শুধু অনলাইনভিত্তিক লেনদেন ধরনের অ্যাপ্লিকেশনের ক্ষেত্রে ব্যবহার করা হয়৷ আর মাল্টি ফাংশনাল ডাটাবেজ সব ধরনের উদ্দেশ্যে কাজ করার জন্য ব্যবহার করা হয়৷ কোন লোকেশনে ডাটাবেজ সেভ হবে তা পরবর্তী ধাপে ঠিক করে দিতে হবে৷ এই লোকেশন পরিবর্তন করা যায়৷ তবে ডিফল্ট লোকেশনে ডাটাবেজ রাখাই ভালো৷ সেক্ষেত্রে ডিস্ক ক্যাশ বা অন্য কোনো কারণে প্রয়োজন পড়লে ডাটাবেজ খুঁজে পেতে সুবিধা হয়৷ অনেক ডাটাবেজ অ্যাডমিনিস্ট্রেটর শুধু ডাটাবেজের জন্য আলাদা ড্রাইভ ব্যবহার করেন৷ মাই এসকিউএলেও সেই ব্যবস্থা আছে৷ এই ধাপে ডাটাবেজ স্টোর করার কাস্টোমাইজড ব্যবস্থা রাখা হয়েছে৷
ডাটাবেজে খুব গুরুত্বপূর্ণ একটি বিষয় হচ্ছে একই সঙ্গে সে ঠিক কতগুলো ট্রানজ্যাকশন করতে পারে৷ সহজ কথায় বলা যায় একসঙ্গে সে কতগুলো ডাটা নিয়ে কাজ করতে পারে৷ এক্ষেত্রে সম্ভবত এখনো ওরাকল এগিয়ে আছে৷ তবে এসকিউএল সার্ভার এবং মাই এসকিউএল দ্রুত এগিয়ে আসছে৷ সিস্টেম কনফিগারেশনের এই ধাপে আপনাকে ঠিক করে দিতে হবে আপনি একসঙ্গে ক্লায়েন্টদেরকে কতগুলো কানেকশনে কাজ করতে দিতে চান৷ এটি নির্ভর করবে আপনি কি ধরনের ডাটাবেজ ডিজাইন করতে চান তার ওপর৷ বেশিরভাগ সময় এটি নির্ভর করে ক্লায়েন্টদের চাহিদা এবং প্রোডাক্টিভিটির ওপরে৷ এই ধাপে তিনটি অপশন আছে৷ প্রথমটি ডিসিশন সাপোর্ট কানেকশন, যা ২০টি কানেকশন নিয়ে কাজ করতে পারে৷ পরেরটি হচ্ছে অনলাইনে ট্রানজ্যাকশন প্রসেসিং সাপোর্ট কানেকশন৷ এটি একসঙ্গে ৫০০ কানেকশন হ্যান্ডেল করতে পারে৷ সবশেষেরটি হচ্ছে ম্যানুয়াল কানেকশন সেটিং অপশন৷ এটি দিয়ে ইচ্ছেমতো কানেকশন নির্ধারণ করা যায়৷
পরের ধাপে নেটওয়ার্কিংয়ের জন্য পোর্ট নির্ধারণ করে দিতে হবে৷ নেটওয়ার্কের বিভিন্ন প্রটোকলের জন্য আলাদা আলাদা পোর্ট ব্যবহার করা হয়৷ বিশ্বব্যাপী বিভিন্ন প্রটোকলের জন্য কিছু পোর্ট নম্বর নির্ধারণ করে দেয়া আছে৷ তবে ডাটাবেজ যদি কোনো ইন্ট্রানেট সিস্টেমে ব্যবহার করা হয়, তাহলে ডাটাবেজ অ্যাডমিনিস্ট্রেটর তার নিজের ইচ্ছেমতো পোর্ট নম্বর ব্যবহার করতে পারবেন৷ আবার পোর্ট ফায়ারওয়াল গ্রহণ করবে কি করবে না, তাও নির্ধারণ করে দিতে হবে এই ধাপে৷ আন্তর্জাতিকভাবে ব্যবহার করা হয় এমন কয়েকটি পোর্ট নম্বর পাওয়া যাবে এই ওয়েবসাইট থেকে : http://en.wikipedia.org/ wiki/List_of_TCP_and_ UDP_port_numbers
আপনার সিস্টেমে কি ধরনের পোর্ট ব্যবহার করা হবে, সে অনুযায়ী সিস্টেমে পোর্ট নম্বর কনফিগার করে নিতে হবে৷
পরের ধাপে ডাটাবেজে ক্যারেক্টার সাপোর্টিং কেমন হবে তা নির্ধারণ করে দিতে হবে৷ এক্ষেত্রে ডাটাবেজ পুরোপুরি লোকাল না হলে সর্বোচ্চ সাপোর্ট দেয়াই ভালো৷ ম্যানুয়ালিও এই সাপোর্ট নির্ধারণ করা যায়৷ তবে মনে রাখতে হবে মাল্টি ল্যাঙ্গুয়াল সাপোর্টের ক্ষেত্রে কী-বোর্ডের সাপোর্টও থাকতে হবে৷ এই ধরনের ক্ষেত্রে কী-বোর্ডের ঝামেলায় না জড়ানোই ভালো৷ সেক্ষেত্রে সফটওয়্যারের ফ্রন্ট এজেন্ড এই সাপোর্ট নিয়ে কাজ করা যেতে পারে৷
পরের ধাপে আপনাকে অপারেটিং সিস্টেমে স্টার্টআপ সার্ভিসে এই মাই এসকিউএল রাখবেন কি না তা নির্ধারণ করে দিতে হবে৷ যদি ডাটাবেজ নিয়ে নিয়মিত কাজ করেন, তাহলে স্টার্টআপে এই সার্ভিস যুক্ত করাই ভালো৷ স্টার্টআপে না রাখলে প্রতিবার সিস্টেম স্টার্ট হবার সময়ে প্রোগ্রামস থেকে মাই এসকিউএল চালু করে দিতে হবে৷ উইন্ডোজের পাথে এর ডিরেক্টরি অবশ্যই দেখিয়ে দিতে হবে৷ এজন্য এই ধাপের Include Bin Directory in Windows Path অপশনে টিক মার্ক দিয়ে দিতে হবে৷
পরের ধাপে পাসওয়ার্ড এবং ইউজার নেম দিয়ে সেভ করে কনফিগারেশন সম্পন্ন করতে হবে৷ আর ডাটাবেজে কোড লেখার জন্য মাই এসকিউএল কমান্ড লাইন ক্লায়েন্ট চালু করে কমান্ড লিখে দিলেই তা ডাটাবেজে কাজ করবে৷
কজ ওয়েব
ফিডব্যাক : mortuza_ahmad@yahoo.com