
- Learn MySQL
- MySQL - Home
- MySQL - Introduction
- MySQL - Installation
- MySQL - Administration
- MySQL - PHP Syntax
- MySQL - Connection
- MySQL - Create Database
- MySQL - Drop Database
- MySQL - Select Database
- MySQL - Data Types
- MySQL - Create Tables
- MySQL - Drop Tables
- MySQL - Insert Query
- MySQL - Select Query
- MySQL - Where Clause
- MySQL - Update Query
- MySQL - Delete Query
- MySQL - Like Clause
- MySQL - Sorting Results
- MySQL - Using Join
- MySQL - NULL Values
- MySQL - Regexps
- MySQL - Transactions
- MySQL - Alter Command
- MySQL - Indexes
- MySQL - Temporary Tables
- MySQL - Clone Tables
- MySQL - Database Info
- MySQL - Using Sequences
- MySQL - Handling Duplicates
- MySQL - SQL Injection
- MySQL - Database Export
- MySQL - Database Import
How can I set a MySQL database to use MyISAM by default?
To set the default storage engine, use the following syntax −
set @@default_storage_engine = ’yourEngineType’;
Now implement the above syntax to set the default engine to MyISAM. The query is as follows −
mysql> set @@default_storage_engine = 'MyISAM'; Query OK, 0 rows affected (0.05 sec)
Now you can check the default engine type with the help of SELECT statement. The query is as follows −
mysql> select @@default_storage_engine;
The following is the output displaying the engine as MyISAM −
+--------------------------+ | @@default_storage_engine | +--------------------------+ | MyISAM | +--------------------------+ 1 row in set (0.00 sec)
Now create a table and check for the default engine MyISAM.
Let us create a table. The query to create a table is as follows −
mysql> create table Followers -> ( -> FollowerId int, -> FollowerName varchar(20) -> ); Query OK, 0 rows affected (0.32 sec)
Let us check the default engine type of the above table with the help of SHOW TABLE command. The query is as follows −
mysql> SHOW TABLE STATUS WHERE Name = 'Followers'\G
Output
Name: followers Engine: MyISAM Version: 10 Row_format: Dynamic Rows: 0 Avg_row_length: 0 Data_length: 0 Max_data_length: 281474976710655 Index_length: 1024 Data_free: 0 Auto_increment: 1 Create_time: 2019 - 02 - 12 00: 42: 27 Update_time: 2019 - 02 - 12 00: 42: 28 Check_time: NULL Collation: utf8_general_ci Checksum: NULL Create_options: Comment: 1 row in set(0.00 sec)
In MySQL version 8.0.12 the default engine is InnoDB but we have changed it above to MyISAM only for a session. If you restart the MySQL then the storage engine will be in the default MySQL mode i.e. InnoDB. Let’s restart MySQL. The query is as follows −
mysql> restart; Query OK, 0 rows affected (0.20 sec)
Now check the default engine type once again. It would be InnoDB now −
mysql> select @@default_storage_engine; No connection. Trying to reconnect... Connection id: 8 Current database: sample +--------------------------+ | @@default_storage_engine | +--------------------------+ | InnoDB | +--------------------------+ 1 row in set (0.00 sec)
- Related Articles
- Can I use InnoDB and MyISAM tables in a single database in MySQL?
- How can we change the default MySQL database to the given database?
- How can I use RAND() function in an ORDER BY clause to shuffle MySQL set of rows?
- How can we check the default character sets of a particular MySQL database?
- How do I set the default value for a column in MySQL?
- How can I restore a database dumped by mysqldump?
- How to set MySQL default value NONE?
- How can we use a MySQL stored function in a database query?
- How can I set the default value for an HTML element?
- How can I get enum possible values in a MySQL database?
- How can I move an existing MySQL event to another database?
- How to set default Field Value in MySQL?
- How do I find out the default server character set in MySQL?
- How do I see what character set a MySQL database / table / column is?
- How to set default value to NULL in MySQL?
