কম্পিউটার টিউটোরিয়াল

MySQL my.cnf-এ অপ্টিমাল কনফিগারেশন সেট করা (InnoDB বাফার ও লগ)

MySQL পারফরম্যান্স অপ্টিমাইজ করতে my.cnf (Linux) বা my.ini (Windows) ফাইলে InnoDB সেটিংস সমন্বয় করুন।

কনফিগ ফাইল খুঁজে বের করুন

SELECT @@datadir;

উইন্ডোজে সাধারণত: C:\ProgramData\MySQL\MySQL Server 8.0\my.ini

মূল InnoDB সেটিংস

[mysqld]
# InnoDB বাফার পুল - র‍্যামের ৭০-৮০% (ডেডিকেটেড সার্ভারের জন্য)
innodb_buffer_pool_size = 1024M

# InnoDB লগ ফাইল সাইজ - বাফার পুলের ২৫% পর্যন্ত
innodb_log_file_size = 256M

# লগ ফাইল গ্রুপ সংখ্যা
innodb_log_files_in_group = 2

# ফ্লাশ মেথড (লিনাক্সে O_DIRECT ভালো)
innodb_flush_method = O_DIRECT

# কমিট প্রতি ফ্লাশ (ACID জন্য 1, পারফরম্যান্সের জন্য 0/2)
innodb_flush_log_at_trx_commit = 1

# ফাইল-পার-টেবিল (ডিফল্ট অন)
innodb_file_per_table = 1

পরিবর্তন অনুপ্রয়োগ

  1. MySQL সার্ভার বন্ধ করুন
  2. পুরনো লগ ফাইল মুছুন (ib_logfile*)
  3. MySQL সার্ভার চালু করুন

মনিটরিং

SHOW ENGINE INNODB STATUS\G
-- Buffer pool hit rate, log waits, etc. দেখুন

সুপারিশ: প্রোডাকশনে mysqltuner.pl বা MySQLTuner স্ক্রিপ্ট চালিয়ে সাজেশন পান।

  1. MySQL-এ my.cnf ফাইলে ডিফল্ট ক্যারেক্টার সেট UTF-8 এ পরিবর্তন করা

  2. MySQL-এ sql_mode স্থায়ীভাবে (Permanently) সেট করা (Windows-এ my.ini)

  3. MySQL-এ SELECT ফলাফল কাস্টম ভেরিয়েবলে সংরক্ষণ করা

  4. MySQL ব্যাচ মোডে ব্যবহার (Using MySQL in Batch Mode)