MySQL 5.5: Wie kann man InnoDB ausschalten?

testit

Well-Known Member
Hallo,

wenn ich in der my.cnf von MySQL Server 5.5 in der mysqld-Section
skip-innodb
eintrage, weil ich keine InnoDBs nutze und daher auch keinen Performance-Verlust durch Logging etc. haben will, führt ein Versuch, den MySQL-Server zu starten stets zu folgender Fehlermeldung mit anschließendem Abbruch (MySQL-Server startet nicht!):

Code:
110410 17:28:59 mysqld_safe Starting mysqld daemon with databases from /var/db/mysql
110410 17:28:59 [Note] Plugin 'InnoDB' is disabled.
110410 17:28:59 [ERROR] Unknown/unsupported storage engine: InnoDB
110410 17:28:59 [ERROR] Aborting

Bin ich ab MySQL-Server 5.5 "zwangsrekrutiert", innoDB aktiviert zu lassen?


Nette Grüße
testit
 
Zuletzt bearbeitet:
Hallo,
ich hatte bei mir das Startscript unter /usr/local/etc/rc.d/ bearbeitet und in der passenden Zeile den Parameter '--skip-innodb' hinzugefügt.
 
Hallo,

danke für den Tipp, aber - was zu erwarten war, weil der Parameter der gleiche ist - tritt wieder die gleiche Fehlermeldung auf:

Code:
110411 07:20:39 mysqld_safe mysqld from pid file /var/db/mysql/PID.pid ended
110411 07:20:39 mysqld_safe Starting mysqld daemon with databases from /var/db/mysql
110411  7:20:39 [Note] Plugin 'InnoDB' is disabled.
110411  7:20:39 [ERROR] Unknown/unsupported storage engine: InnoDB
110411  7:20:39 [ERROR] Aborting
110411  7:20:39 [Note] /usr/local/libexec/mysqld: Shutdown complete
110411 07:20:39 mysqld_safe mysqld from pid file /var/db/mysql/PID.pid ende

Weitere Ideen sind folglich sehr erwünscht :D


Nette Grüße
testit
 
In meiner my.cnf steht:
Code:
# Uncomment the following if you are using InnoDB tables
#innodb_data_home_dir = /var/db/mysql
#innodb_data_file_path = ibdata1:2000M;ibdata2:10M:autoextend
#innodb_log_group_home_dir = /var/db/mysql
# You can set .._buffer_pool_size up to 50 - 80 %
# of RAM but beware of setting memory usage too high
#innodb_buffer_pool_size = 384M
#innodb_additional_mem_pool_size = 20M
# Set .._log_file_size to 25 % of buffer pool size
#innodb_log_file_size = 100M
#innodb_log_buffer_size = 8M
#innodb_flush_log_at_trx_commit = 1
#innodb_lock_wait_timeout = 50

Ist eine 5.1, ist das in deiner anders?
 
Hi,

bei mir steht folgendes in der 5.5 conf:

Code:
# Uncomment the following if you are using InnoDB tables
#innodb_data_home_dir = /usr/local/mysql/data/
#innodb_data_file_path = ibdata1:10M:autoextend
#innodb_log_group_home_dir = /usr/local/mysql/data/
#innodb_log_arch_dir = /usr/local/mysql/data/
# You can set .._buffer_pool_size up to 50 - 80 %
# of RAM but beware of setting memory usage too high
#innodb_buffer_pool_size = 256M
#innodb_additional_mem_pool_size = 20M
# Set .._log_file_size to 25 % of buffer pool size
#innodb_log_file_size = 64M
#innodb_log_buffer_size = 8M
#innodb_flush_log_at_trx_commit = 1
#innodb_lock_wait_timeout = 50

Aber solange
skip-innodb in der mysqld-section der my.cnf keine Wirkung zeigt, werden ja weiterhin die Default-Parameter genommen.

Man könnte glatt meinen, dass das irgendwie fest einkompiliert und nicht abschaltbar ist.


Nette Grüße
testit
 
Hallo,

Deine Idee war wirklich gut!

Leider zeigt aber phpMyAdmin keine INNO-DBs bei der frisch eingerichteten MySQL-Server 5.5-Version an. Zumindest kann ich diesen TYP weder in der mysql- noch in der Performance-Schema oder Information-Schema-DB finden.

Habe nun auch mal versucht, den Parameter
--ignore-builtin-innodb (Disable initialization of builtin InnoDB plugin)
beim Start von MySQLD mit auf den Weg zu geben.

Leider fährt der MySQL-Server dann immer noch nicht hoch und wirft die o.a. Fehler!

Seltsam ...


Nette Grüße
testit
 
Habe nun auch mal versucht, den Parameter
--ignore-builtin-innodb (Disable initialization of builtin InnoDB plugin)
beim Start von MySQLD mit auf den Weg zu geben.

Dann würde ich einfach ohne die Flags starten und darauf achten, dass keine DBs mit der InnoDB-Engine angelegt werden und gut. Wenn keine DB vorhanden ist, die InnoDB nutzt, sollte das auch keinen Overhead mit sich bringen.

Rob
 
Solved!

Hallo,

nach ewig langem Herumsuchen bin ich auf nachtstehende Diskussion (bugs.mysql.com) gestossen, in deren Rahmen ein Hinweis existiert, der das Problem schließlich löste:

--default-storage-engine=MyISAM

in der im Verzeichnis /usr/local/etc/rc.d befindlichen mysqlserver-Datei hat mein Problem gelöst!

Danke Euch für Eure Mithilfe!

Nette Grüße
testit
 
Hmm, hatte gestern schon diese Zeilen im Blick aber nicht weiter gedacht.

von http://dev.mysql.com/doc/refman/5.5/en/innodb-parameters.html#option_mysqld_ignore-builtin-innodb:

--innodb[=value]

Controls loading of the InnoDB storage engine, if the server was compiled with InnoDB support. This option has a tristate format, with possible values of OFF, ON, or FORCE. See Section 5.1.3, “Server Options for Loading Plugins”.

To disable InnoDB, use --innodb=OFF or --skip-innodb. In this case, the server will not start if the default storage engine is set to InnoDB. Use --default-storage-engine to set the default to some other engine if necessary.
 
Zurück
Oben