changer le moteur par défaut mysql en innodb

j'utilise mac et j'ai installé mysql en utilisant homebrew.

brew install mysql

installation assez standard.

mysql> show engines;
+------------+---------+------------------------------------------------------------+--------------+------+------------+
| Engine     | Support | Comment                                                    | Transactions | XA   | Savepoints |
+------------+---------+------------------------------------------------------------+--------------+------+------------+
| MRG_MYISAM | YES     | Collection of identical MyISAM tables                      | NO           | NO   | NO         |
| CSV        | YES     | CSV storage engine                                         | NO           | NO   | NO         |
| MyISAM     | DEFAULT | Default engine as of MySQL 3.23 with great performance     | NO           | NO   | NO         |
| InnoDB     | YES     | Supports transactions, row-level locking, and foreign keys | YES          | YES  | YES        |
| MEMORY     | YES     | Hash based, stored in memory, useful for temporary tables  | NO           | NO   | NO         |
+------------+---------+------------------------------------------------------------+--------------+------+------------+
<!-Je voudrais que innodb soit le moteur de stockage par défaut. Que dois-je faire?

22
demandé sur Nick Vanderbilt 2011-01-22 02:35:02

2 réponses

[mysqld] section dans votre fichier ini, ajouter:

default-storage-engine = innodb

Il est généralement /etc/my.cnf, mais pas sûr pour Mac.

docs:

sur Unix, Linux et Mac OS X, les programmes MySQL lisent les options de démarrage à partir des fichiers suivants, dans l'ordre spécifié (les principaux éléments sont utilisés en premier).

File Name   Purpose

/etc/my.cnf          Global options
/etc/mysql/my.cnf    Global options (as of MySQL 5.1.15)
SYSCONFDIR/my.cnf    Global options
$MYSQL_HOME/my.cnf   Server-specific options
defaults-extra-file  The file specified with --defaults-extra-file=path, if any
~/.my.cnf            User-specific options

le dernier n'est jamais utilisé par le démon.

34
répondu Quassnoi 2011-01-21 23:44:24

je peux le voir dans phpMyAdmin que MySQL est une base de données appelée information_schema, et il contient une table appelée ENGINES. Mis à part le scénario plus global de changer un fichier ini, ne serait-il pas une solution simple de changer la table SUPPORT champs MyISAM et InnoDB (à 'YES' et 'DEFAULT' respectivement)? Je ne l'ai pas fait moi-même, alors agissez à vos risques et périls ... et laissez-moi savoir comment les choses si vous le faites.

0
répondu KiloVoltaire 2015-11-09 19:48:33