确定InnoDB插件是否安装在MySQL中

San*_*ndy 6 mysql

我们如何检查在MySQL中是否安装了Innodb插件?是否有任何变量可以检查Innodb插件是否安装?

Ket*_*ola 12

如果需要通过查询数据库来确定是否启用了InnoDB,则应使用INFORMATION_SCHEMA表.

SELECT SUPPORT FROM INFORMATION_SCHEMA.ENGINES WHERE ENGINE = 'InnoDB';
Run Code Online (Sandbox Code Playgroud)

其中,如果启用了InnoDB并且是默认数据库,则给出结果

+---------+
| SUPPORT |
+---------+
| DEFAULT |
+---------+
Run Code Online (Sandbox Code Playgroud)

如果InnoDB可用,但不是默认引擎,结果将是YES.如果它不可用,结果显然是NO.

请参阅http://dev.mysql.com/doc/refman/5.5/en/engines-table.htmlhttp://dev.mysql.com/doc/refman/5.5/en/information-schema.html为参考.

当InnoDB可用时,您在评论中提到的INFORMATION_SCHEMA表也可用.

SHOW TABLES FROM INFORMATION_SCHEMA LIKE 'INNODB%';

+----------------------------------------+
| Tables_in_INFORMATION_SCHEMA (INNODB%) |
+----------------------------------------+
| INNODB_CMP_RESET                       |
| INNODB_TRX                             |
| INNODB_CMPMEM_RESET                    |
| INNODB_LOCK_WAITS                      |
| INNODB_CMPMEM                          |
| INNODB_CMP                             |
| INNODB_LOCKS                           |
+----------------------------------------+
Run Code Online (Sandbox Code Playgroud)


Phi*_*hil 7

类型:

SHOW ENGINES

在mysql提示符下.

Innodb会如此:

Engine: InnoDB
Support: YES
Comment: Supports transactions, row-level locking, and foreign keys
Run Code Online (Sandbox Code Playgroud)