valor utilizados tablas son más motores motor migradas los leer incremento glpi error ejemplo bdb automático almacenamiento mysql terminal storage-engines

tablas - son los motores de almacenamiento más utilizados en mysql



Vea qué motor de almacenamiento utiliza la base de datos MySQL a través de la terminal (7)

¿Hay un comando en la terminal para averiguar qué motor de almacenamiento está usando mi base de datos MySQL?


Esta es una solución más larga, pero puede ser útil si quieres aprender algo sobre information_schema

mysql> select table_name,engine from information_schema.tables where table_name = ''table_name'' and table_schema = ''db_name'';


Puedes usar este comando:

mysql -u[user] -p -D[database] -e "show table status/G"| egrep "(Index|Data)_length" | awk ''BEGIN { rsum = 0 } { rsum += $2 } END { print rsum }''


Una base de datos en MySQL puede usar múltiples motores de almacenamiento, por lo que deberá verificar por tabla. Lo más simple es hacer

show create table yourtable;

y vea cuál es la línea ''motor'' al final de la declaración DDL. por ejemplo, engine=InnoDB , engine=MyISAM , etc ...

Si desea verificar todas las tablas en su DB:

select TABLE_NAME, ENGINE from information_schema.TABLES where TABLE_SCHEMA=''yourdbname''


Esto está disponible en algunos lugares.

Desde la salida SHOW CREATE TABLE .

mysql> SHOW CREATE TABLE guestbook.Guestbook; +-----------+-------------------------------------------+ | Table | Create Table | +-----------+-------------------------------------------+ | Guestbook | CREATE TABLE `Guestbook` ( `NAME` varchar(128) NOT NULL DEFAULT '''', `MESSAGE` text NOT NULL, `TIMESTAMP` varchar(24) DEFAULT NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1 | +-----------+-------------------------------------------+ 1 row in set (0.00 sec)

De information_schema

También puede encontrarlo en information_schema.TABLES si desea consultar los motores de varias tablas.

SELECT ENGINE FROM information_schema.TABLES WHERE TABLE_NAME=''yourtable'' AND TABLE_SCHEMA=''yourdatabase'';


MOSTRAR ESTADO DE LA TABLA DONDE Name = ''user_tbl''


SHOW ENGINES;

devuelva los motores a su soporte de base de datos MySQL y le dirá cuál es el predeterminado si no se especifica lo contrario en el momento de la creación.


mysql -u[user] -p -D[database] -e "show table status/G" | egrep "(Engine|Name)"

Esto mostrará una lista de todas las tablas y su motor correspondiente. Bueno para obtener una visión general de todo!

Es una respuesta modificada de @ yago-riveiro donde mostró cómo obtener el tamaño de las tablas, en lugar de los motores en uso. Además, es mejor tener una explicación sobre lo que hace un comando.