transacciones tablas predeterminado por motor establece defecto crear convert cambiar mysql

mysql - tablas - myisam vs innodb



cambiar el motor por defecto de mysql a innodb (2)

Estoy usando mac y instalé mysql usando homebrew.

brew install mysql

Instalación bastante estándar.

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 | +------------+---------+------------------------------------------------------------+--------------+------+------------+

Me gustaría que innodb sea el motor de almacenamiento predeterminado. ¿Que necesito hacer?


Bajo la sección [mysqld] en su archivo ini, agregue:

default-storage-engine = innodb

Normalmente es /etc/my.cnf , pero no estoy seguro acerca de Mac.

De la docs :

En Unix, Linux y Mac OS X, los programas MySQL leen las opciones de inicio de los siguientes archivos, en el orden especificado (los elementos superiores se usan primero).

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

El último nunca es usado por el demonio.


Puedo ver en phpMyAdmin que MySQL tiene una base de datos llamada information_schema , y contiene una tabla llamada ENGINES . Aparte del escenario más global de cambiar un archivo ini, ¿no sería una solución simple cambiar los campos SUPPORT la tabla para MyISAM e InnoDB (a ''SÍ'' y ''DEFAULT'' respectivamente)? No lo he hecho yo mismo, así que procede bajo tu propio riesgo ... y hazme saber cómo van las cosas si lo haces.