2012-05-09 7 views

Antwort

9

Wenn Sie benötigen, um zu bestimmen, ob oder ob nicht InnoDB durch Abfrage der Datenbank aktiviert ist, sollten Sie die INFORMATION_SCHEMA-Tabellen verwenden.

SELECT SUPPORT FROM INFORMATION_SCHEMA.ENGINES WHERE ENGINE = 'InnoDB'; 

, die, wenn InnoDB aktiviert ist und ist die Standarddatenbank, ein Ergebnis von

+---------+ 
| SUPPORT | 
+---------+ 
| DEFAULT | 
+---------+ 

gibt Wenn InnoDB vorhanden ist, aber nicht die Standard-Engine, wird das Ergebnis YES sein. Wenn es nicht verfügbar ist, wird das Ergebnis offensichtlich NO sein.

Bitte siehe http://dev.mysql.com/doc/refman/5.5/en/engines-table.html und http://dev.mysql.com/doc/refman/5.5/en/information-schema.html als Referenz.

Wenn InnoDB verfügbar ist, sind auch die in einem Kommentar erwähnten INFORMATION_SCHEMA-Tabellen verfügbar.

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

Typ:

SHOW ENGINES

in einer MySQL-Eingabeaufforderung.

InnoDB werden, wie oben in etwa so:

Engine: InnoDB 
Support: YES 
Comment: Supports transactions, row-level locking, and foreign keys 
+0

Ich möchte wissen, innodb_plugin ist installiert oder nicht, innodb_plugin wird die Informationen über Transaktionen in Informationsschema Tabellen geben. http://dev.mysql.com/doc/innodb-plugin/1.0/en/innodb-information-schema-transactions.html – Sandy

0

show plugins“ ist verfügbar, aber mein Server ist die eingebaute in InnoDB-Engine und es ist noch nicht klar, ob es die eingebaute oder Plugin-Version ist.

Es scheint der beste Weg zu überprüfen ist, um die my.cnf Datei zu betrachten. Nach Ansicht der Installation von docs für das Plugin, müssen Sie speziell die integrierte Version ignorieren und das Plugin aktivieren:

[mysqld] 
ignore-builtin-innodb 
plugin-load=innodb=ha_innodb_plugin.so 
;innodb_trx=ha_innodb_plugin.so 
;innodb_locks=ha_innodb_plugin.so 
;innodb_lock_waits=ha_innodb_plugin.so 
;innodb_cmp=ha_innodb_plugin.so 
;innodb_cmp_reset=ha_innodb_plugin.so 
;innodb_cmpmem=ha_innodb_plugin.so 
;innodb_cmpmem_reset=ha_innodb_plugin.so 

(Der Plugin-load-Option Wert als auf mehreren Zeilen für die Anzeige formatiert werden hier gezeigt, aber sollte in my.cnf geschrieben werden, um eine einzelne Zeile ohne Leerzeichen in dem Optionswert verwendet wird. Unter Windows ersetzen .dll für jede Instanz der .so Erweiterung.)

Siehe http://dev.mysql.com/doc/refman/5.1/en/replacing-builtin-innodb.html

das Plugin ersetzt die eingebauten in InnoDB ab v5.5: http://dev.mysql.com/doc/refman/5.5/en/innodb-installation.html

Verwandte Themen