কম্পিউটার

INNODB কি মাইএসকিউএল-এ ডিফল্টরূপে সক্রিয় করা আছে?


হ্যাঁ, এটি MySQL সংস্করণ 4.0 থেকে ডিফল্টরূপে সক্রিয় করা হয়েছে৷ এখানে, আমরা MySQL সংস্করণ 8.0.1 −

ব্যবহার করছি
mysql> select version();
+-----------+
| version() |

+-----------+
| 8.0.12    |
+-----------+
1 row in set (0.00 sec)

আসুন এখন my.ini পরীক্ষা করি যেখানে ডিফল্ট ইঞ্জিন টাইপ InnoDB দৃশ্যমান হয় -

INNODB কি মাইএসকিউএল-এ ডিফল্টরূপে সক্রিয় করা আছে?

প্রথমে দুটি টেবিল তৈরি করা যাক। তাদের মধ্যে একটি ইঞ্জিনের প্রকারের সাথে সেট করা হবে, যেখানে অন্যটি ইঞ্জিনের প্রকারের সাথে সেট করা হবে না৷

প্রথম টেবিল -

mysql> create table DemoTable1(Id int NOT NULL AUTO_INCREMENT PRIMARY KEY);
Query OK, 0 rows affected (0.80 sec)

ENGINE InnoDB −

এর সাথে সেট করা দ্বিতীয় টেবিল
mysql> create table DemoTable2(
   Id int NOT NULL AUTO_INCREMENT PRIMARY KEY
) ENGINE=InnoDB;
Query OK, 0 rows affected (0.76 sec)

উপরের দুটি টেবিলেই ইঞ্জিনের ধরন InnoDB আছে আপনি ইঞ্জিনের ধরন উল্লেখ করেছেন বা না করেছেন।

আসুন প্রথম টেবিলের ইঞ্জিনের ধরন পরীক্ষা করি -

mysql> select engine from information_schema.TABLES where TABLE_SCHEMA = 'web' and table_name='DemoTable1';
+--------+
| ENGINE |
+--------+
| InnoDB |
+--------+
1 row in set (0.56 sec)

এখন দ্বিতীয় টেবিলের ইঞ্জিনের ধরন পরীক্ষা করা যাক -

mysql> select engine from information_schema.TABLES where TABLE_SCHEMA = 'web' and table_name='DemoTable2';
+--------+
| ENGINE |
+--------+
| InnoDB |
+--------+
1 row in set (0.00 sec)

আপনি উপরের টেবিলের উভয় ইঞ্জিনের ধরণটিকে "InnoDB" হিসাবে প্রদর্শন করতে পারেন। আমরা DemoTable1 এ ইঞ্জিনের ধরন উল্লেখ না করলেও দৃশ্যমান ইঞ্জিনের ধরনটি হল "InnoDB"৷


  1. একটি MySQL টেবিল myISAM বা InnoDB ইঞ্জিন ব্যবহার করছে কিনা তা আমি কিভাবে জানব?

  2. আমি কিভাবে MySQL এ innoDB ইনস্টল বা সক্ষম করতে পারি?

  3. মাইএসকিউএলে কি ডিফল্ট শূন্য যোগ করা প্রয়োজন?

  4. মাইএসকিউএল - টেবিল ইঞ্জিন innoDB থেকে MyISAM এ পরিবর্তন করছেন?