When end users cannot use MySQL, mixed use of InnoDB and MYISAM may occur. In this case, you need to consider configuring cache and other resources for the two engines, even if InnoDB is used only in the end, this will lead to the failure to make full use of resources, it also increases the difficulty of resource restrictions. At the same time, due to the stability of the MYISAM engine
When end users cannot use MySQL, mixed use of InnoDB and MYISAM may occur. In this case, you need to consider configuring cache and other resources for the two engines, even if InnoDB is used only in the end, this will lead to the failure to make full use of resources, it also increases the difficulty of resource restrictions. At the same time, due to the stability of the MYISAM engine
When end users cannot use MySQL, mixed use of InnoDB and MYISAM may occur. In this case, you need to consider configuring cache and other resources for the two engines, even if InnoDB is used only in the end, this will lead to the failure to make full use of resources, it also increases the difficulty of resource restrictions. At the same time, due to the stability of the MYISAM engine, in order to reduce O & M work, users are generally not expected to use the MYISAM engine. In this case, you want to disable it. However, the MYISAM engine is used by MySQL system tables and may be used for internal temporary tables, so it is impossible to directly disable it. Therefore, mysqld does not have parameters such as-skip-myisam. Therefore, you can only find other methods. For example, only creating a new MYISAM table is prohibited, but it does not affect the original table. So we made such a plug-in.
Https://github.com/xiezhenye/mysql-plugin-disable-myisam
In fact, this plug-in is very simple. It only replaces the create entry of the MYISAM engine, returns a packaged object, and replaces the ha_myisam object of the create method. An error is returned when you try to create a table.
After the plug-in is installed, no new MYISAM table can be created.
mysql> CREATE TABLE `test4` ( `id` int(11) AUTO_INCREMENT, `value` varchar(30), PRIMARY KEY (`id`)) ENGINE=MyISAM;ERROR 1030 (HY000): Got error 1 from storage engine
Original article address: Disable the MySQL plug-in of MYISAM engine. Thank you for sharing it with me.