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

MySQL ডেটাবেস ইঞ্জিনগুলো কী কী? (SHOW ENGINES)

স্টোরেজ ইঞ্জিন হলো ডেটাবেস ম্যানেজমেন্ট সিস্টেমের সফ্টওয়্যার মডিউল যা ডেটা তৈরি, পড়া, আপডেট, ডিলিট করে। MySQL-এ ডিফল্ট ইঞ্জিন InnoDB।

সকল ইঞ্জিন দেখানো

mysql> SHOW ENGINES;

আউটপুট:

+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
| Engine             | Support | Comment                                                        | Transactions | XA   | Savepoints |
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
| MEMORY             | YES     | Hash based, stored in memory, useful for temporary tables      | NO           | NO   | NO         |
| MRG_MYISAM         | YES     | Collection of identical MyISAM tables                          | NO           | NO   | NO         |
| CSV                | YES     | CSV storage engine                                             | NO           | NO   | NO         |
| FEDERATED          | NO      | Federated MySQL storage engine                                 | NULL         | NULL | NULL       |
| PERFORMANCE_SCHEMA | YES     | Performance Schema                                             | NO           | NO   | NO         |
| MyISAM             | YES     | MyISAM storage engine                                          | NO           | NO   | NO         |
| InnoDB             | DEFAULT | Supports transactions, row-level locking, and foreign keys     | YES          | YES  | YES        |
| BLACKHOLE          | YES     | /dev/null storage engine (anything you write to it disappears) | NO           | NO   | NO         |
| ARCHIVE            | YES     | Archive storage engine                                         | NO           | NO   | NO         |
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+

প্রধান ইঞ্জিনগুলোর বৈশিষ্ট্য

  • InnoDB: ডিফল্ট, ACID ট্রানজ্যাকশন, রো-লেভেল লকিং, ফরেন কী, ক্র্যাশ রিকভারি
  • MyISAM: ফুল-টেক্সট সার্চ (পুরানো ভার্সন), টেবিল-লেভেল লকিং, ট্রানজ্যাকশন নেই
  • MEMORY: র‍্যাম-তে স্টোর, খুব দ্রুত, রিস্টার্টে ডেটা হারায়
  • CSV: CSV ফাইল ফরম্যাটে ডেটা স্টোর
  • ARCHIVE: কমপ্রেসড, শুধু ইনসার্ট/সিলেক্ট, নো ইনডেক্স
  • BLACKHOLE: ডেটা লেখা যায় কিন্তু স্টোর হয় না (রেপ্লিকেশন ফিল্টারের জন্য)

টেবিল তৈরি সময় ENGINE=InnoDB` নির্দিষ্ট করা বেস্ট প্র্যাকটিস।

  1. MySQL-এ ব্যাকটিক (`) এবং সিঙ্গেল কোট (') এর ব্যবহার ও পার্থক্য

  2. MySQL ডেটাবেসে তারিখ সংরক্ষণ করার সবচেয়ে সহজ পদ্ধতি

  3. MySQL-এ SHOW CREATE DATABASE/TABLE দিয়ে ক্যারেক্টার সেট (charset) জানা

  4. MySQL-র মূল ফিচারগুলো