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.