wake-up-neo.com

Wie kann ich die von MySQL verwendete Standardspeicher-Engine festlegen?

Ich habe daran gearbeitet, SQL zu schreiben, um eine MySQL-Datenbank mit mehreren Standardoptionen zu erstellen, einschließlich Zeichensatz und Sortierung. Ist es möglich, die Standardspeicher-Engine für Tabellen in dieser Datenbank auf InnoDB zu setzen?

Ich habe das MySQL 5.1-Handbuch durchgesehen und die Anweisung ENGINE=innodb Gefunden, die an eine CREATE TABLE - Anweisung angehängt wird, aber ich habe nichts gefunden, was mit einer CREATE DATABASE Anweisung.

Gibt es eine normale Möglichkeit, dies im Rahmen der Datenbankerstellung zu tun, oder muss dies tabellenweise angegeben werden?

51
memilanuk

Zitieren des Referenzhandbuchs ( Einstellen der Storage Engine ):

Wenn Sie die Option ENGINE weglassen, wird die Standardspeicher-Engine verwendet. Normalerweise ist dies MyISAM, aber Sie können es ändern, indem Sie --default-storage-engine Server-Startoption oder durch Einstellen der Option default-storage-engine Option in der my.cnf Konfigurationsdatei.

Die Option default-storage-engine muss Teil des Abschnitts mysqld in my.cnf sein.

[mysqld]
default-storage-engine = innodb

Möglicherweise möchten Sie auch die Standardspeicher-Engine nur für die aktuelle Sitzung ändern. Sie können dies tun, indem Sie storage_engine Variable:

SET storage_engine=INNODB;
65
Daniel Vassallo

sie müssen die Standardspeicher-Engine angeben, wenn Sie mysqld starten. beispielsweise:

mysqld --default-storage-engine=InnoDB

http://dev.mysql.com/doc/refman/5.1/de/server-options.html#option_mysqld_default-storage-engine

5
sml