文字セットや照合など、いくつかのデフォルトオプションを持つMySQLデータベースを作成するSQLの作成に取り組んできました。このデータベースのテーブルのデフォルトストレージエンジンをInnoDBに設定することはできますか?
私はMySQL 5.1のマニュアルを見て、ENGINE=innodb
ステートメントに追加されるステートメントCREATE TABLE
を見つけましたが、CREATE DATABASE
に関連するものは見つかりませんでしたステートメント。
データベース作成の一部としてこれを行う通常の方法はありますか、それともテーブルごとに指定する必要がありますか?
リファレンスマニュアルの引用( Setting the Storage Engine ):
ENGINE
オプションを省略すると、デフォルトのストレージエンジンが使用されます。通常、これはMyISAMですが、サーバーの起動オプション--default-storage-engine
を使用するか、-でdefault-storage-engine
オプションを設定することで変更できます。my.cnf
構成ファイル。
Default-storage-engineオプションはmy.cnf;のmysqldセクションの一部である必要があります。
[mysqld]
default-storage-engine = innodb
また、現在のセッションのためだけにデフォルトのストレージエンジンを変更することもできます。これを行うには、storage_engine
変数を設定します。
SET storage_engine=INNODB;
mysqldの起動時にデフォルトのストレージエンジンを指定する必要があります。例えば:
mysqld --default-storage-engine=InnoDB
http://dev.mysql.com/doc/refman/5.1/en/server-options.html#option_mysqld_default-storage-engine