MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MyISAMをMySQLのInnoDBストレージエンジンに変換する方法は?


MyISAMエンジンをInnoDBに変換するには、ALTERコマンドを使用できます。エンジンMyISAMを使用してテーブルを作成しましょう。

mysql> create table MyISAMToInnoDBDemo
   -> (
   -> id int,
   -> Name varchar(100)
   -> )ENGINE=MyISAM;
Query OK, 0 rows affected (0.19 sec)

テーブルがエンジンMyISAMで作成されているかどうかを確認します。

mysql> SELECT TABLE_NAME,ENGINE FROM information_schema.TABLES WHERE TABLE_SCHEMA = 'business' and ENGINE = 'MyISAM';

以下は、MyISAMエンジンで作成されたテーブルを表示する出力です。

+-------------------------+--------+
| TABLE_NAME              | ENGINE |
+-------------------------+--------+
| studentrecordwithmyisam | MyISAM |
+-------------------------+--------+
1 row in set (0.00 sec)

ALTERコマンドを使用してMyISAMをInnoDBに変換できます。

mysql> alter table MyISAMToInnoDBDemo engine=InnoDB;
Query OK, 0 rows affected (1.65 sec)
Records: 0  Duplicates: 0  Warnings: 0

変換を確認するには。

mysql> SELECT TABLE_NAME,ENGINE FROM information_schema.TABLES WHERE TABLE_SCHEMA = 'test' and ENGINE = 'InnoDB';

これが出力です。

+--------------------+--------+
| TABLE_NAME         | ENGINE |
+--------------------+--------+
| myisamtoinnodbdemo | InnoDB |
+--------------------+--------+
1 row in set (0.00 sec)

  1. MySQLにinnoDBをインストールまたは有効にするにはどうすればよいですか?

    MySQでinnoDBを有効にするには、 my.iniを回避する必要があります ファイル。ただし、MySQLバージョン8では、デフォルトのストレージエンジンはinnoDBです。 my.iniから同じことを確認してください ファイル- テーブル作成時に設定することもできます- mysql> create table DemoTable    (    StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY,    StudentFirstName varchar(100), &

  2. MySQLではINNODBがデフォルトで有効になっていますか?

    はい、MySQLバージョン4.0からデフォルトで有効になっています。ここでは、MySQLバージョン8.0.1を使用しています- mysql> select version(); +-----------+ | version() | +-----------+ | 8.0.12    | +-----------+ 1 row in set (0.00 sec) ここで、デフォルトのエンジンタイプInnoDBが表示されているmy.iniを確認しましょう- 最初に2つのテーブルを作成しましょう。 1つはエンジンタイプで設定されますが、もう1つはエンジンタイプ