Kann ich einen InnoDB-Master und MyISAM-Slaves mit Volltext für die Suche haben?

8

Ich möchte InnoDB auf dem Master für seine Transaktionsfähigkeit verwenden, aber MyISAM auf den Slaves für die Volltextsuche. Ist das möglich?

Neil McGuigan
quelle

Antworten:

10

Absolut !!!

Führen ALTER TABLE tblname ENGINE=MyISAM;Sie einfach alle Tabellen auf dem Slave aus, für die Sie den FULLTEXT-Index haben möchten. Danach können Sie laufen ALTER TABLE tblname ADD FULLTEXT (column[,column]);.

Bitte achten Sie darauf, DDL nicht für die Tabellen im Master auszuführen, die nur für InnoDB gelten und auf den Slave repliziert werden.

Ich habe in meinen letzten Beiträgen vorgeschlagen, eine andere Speicher-Engine für einen Slave zu verwenden:

RolandoMySQLDBA
quelle
Gute Nachrichten! Du bist der Mann Rolando.
Neil McGuigan
1
Es funktioniert großartig, ich habe ein Syslog-System, bei dem der Master Daten in der BLACKHOLE-Speicher-Engine sammelt, die dann das gesamte schwere Heben auf die Slave-Laufkombinationen von MyISAM und InnoDB entlädt. Auf diese Weise kann ich den Slave anhalten, um die Daten zu analysieren, den Master sammeln zu lassen und nur den Protokollspeicher zu verwenden :)
Dave Rix