MariaDB সার্ভারের কার্যক্ষমতা এবং নিরাপত্তা বাড়ানোর জন্য my.cnf ফাইল কনফিগার করা হয়। এটি MariaDB সার্ভারের প্রধান কনফিগারেশন ফাইল, যেখানে ডেটাবেসের সেটিংস, স্টোরেজ ইঞ্জিন, লগিং, এবং অন্যান্য প্যারামিটার নির্ধারণ করা যায়।
my.cnf ফাইলের অবস্থান
MariaDB-এর my.cnf ফাইলের অবস্থান অপারেটিং সিস্টেমের উপর নির্ভর করে:
- Linux:
/etc/mysql/my.cnfবা/etc/my.cnf - Windows:
C:\Program Files\MariaDB XX\my.ini - macOS:
/usr/local/etc/my.cnf
my.cnf ফাইলের স্ট্রাকচার
my.cnf ফাইলটি বিভিন্ন সেকশন নিয়ে গঠিত। প্রতিটি সেকশন একটি নির্দিষ্ট MariaDB কম্পোনেন্টের জন্য কনফিগারেশন ধারণ করে। নিচে সেকশনগুলো বর্ণিত হলো:
[mysqld]: MariaDB সার্ভারের মূল সেটিংস।[client]: ক্লায়েন্ট কনফিগারেশন।[mysqld_safe]: MariaDB নিরাপদ স্টার্টআপ অপশন।[mysql]: MariaDB ক্লায়েন্ট টুলের জন্য সেটিংস।
গুরুত্বপূর্ণ কনফিগারেশন অপশন
[mysqld] সেকশন: সার্ভার সেটিংস
১. সার্ভারের পোর্ট নির্ধারণ
ডিফল্ট পোর্ট ৩৩০৬ (3306)। এটি পরিবর্তন করতে:
[mysqld]
port = 3307
২. ডেটা ডিরেক্টরি পরিবর্তন
MariaDB ডেটার অবস্থান নির্ধারণ:
datadir = /var/lib/mysql
৩. বাইন্ড অ্যাড্রেস পরিবর্তন
রিমোট কানেকশন সক্রিয় করতে:
bind-address = 0.0.0.0
ডিফল্ট অবস্থায় এটি 127.0.0.1 থাকে, যা শুধুমাত্র লোকালহোস্ট কানেকশনকে অনুমতি দেয়।
৪. ম্যাক্স কানেকশন সংখ্যা
MariaDB-তে সর্বোচ্চ কতজন ইউজার একসঙ্গে কানেক্ট করতে পারবে তা নির্ধারণ:
max_connections = 200
৫. লোগিং সক্রিয় করা
MariaDB সার্ভারের জেনারেল লোগিং চালু করতে:
general_log = 1
general_log_file = /var/log/mariadb/mariadb.log
৬. কুইক স্টার্টআপ উন্নত করতে
skip_name_resolve = 1
এই অপশনটি IP রেজোলিউশন বন্ধ করে, ফলে সার্ভার দ্রুত স্টার্টআপ করতে পারে।
[client] সেকশন: ক্লায়েন্ট সেটিংস
MariaDB ক্লায়েন্টের জন্য ডিফল্ট প্যারামিটার নির্ধারণ:
[client]
port = 3306
socket = /var/run/mysqld/mysqld.sock
[mysqld_safe] সেকশন: নিরাপদ স্টার্টআপ
MariaDB সার্ভার স্টার্টআপ অপশন:
[mysqld_safe]
log-error = /var/log/mariadb/mariadb.err
pid-file = /var/run/mysqld/mysqld.pid
[mysql] সেকশন: ক্লায়েন্ট টুলের সেটিংস
MariaDB ক্লায়েন্ট টুল ব্যবহারের জন্য ডিফল্ট কনফিগারেশন:
[mysql]
default-character-set = utf8mb4
my.cnf ফাইল এডিট করার নিয়ম
১. my.cnf ফাইল এডিট করতে nano বা vim এর মতো টেক্সট এডিটর ব্যবহার করুন:
sudo nano /etc/mysql/my.cnf
২. প্রয়োজনীয় পরিবর্তন করুন এবং ফাইলটি সংরক্ষণ করুন।
৩. পরিবর্তন কার্যকর করতে MariaDB সার্ভার পুনরায় চালু করুন:
sudo systemctl restart mariadb
MariaDB সার্ভার অপ্টিমাইজেশনের জন্য অতিরিক্ত সেটিংস
১. ক্যাশ সাইজ বাড়ানো
MariaDB সার্ভারের ক্যাশ পারফরম্যান্স উন্নত করতে:
query_cache_size = 64M
query_cache_type = 1
২. ইনোডিবি স্টোরেজ ইঞ্জিনের অপ্টিমাইজেশন
innodb_buffer_pool_size = 1G
innodb_log_file_size = 256M
innodb_flush_log_at_trx_commit = 1
৩. টাইমজোন নির্ধারণ
default_time_zone = '+00:00'
MariaDB-এর my.cnf ফাইল সঠিকভাবে কনফিগার করলে এটি সার্ভারের পারফরম্যান্স, নিরাপত্তা, এবং স্কেলেবিলিটি বাড়াতে উল্লেখযোগ্য ভূমিকা রাখে। পরিবর্তন করার আগে মূল ফাইলের একটি ব্যাকআপ রাখা সর্বদা উত্তম।
Read more