MySQLといえば、巷ではInnoDBばかり注目され、MyISAMの地下アイドル化がにわかに語られる今日この頃、皆様いかがお過ごしでしょうか。
まあカジュアルにストレージエンジンを変換するだけで済むなら、簡単なのです。
-- legacy_my_tableをInnoDBストレージエンジンに変換する ALTER TABLE legacy_my_table ENGINE=InnoDB;
よし終わった!さあランチタイムだ!
…
以下のエラーが起きてしまった時の対処法を紹介します。
2013-06-04 17:36:01 21440 [ERROR] Can't open shared library 'ha_mroonga.so' (errno: 0 API version for STORAGE ENGINE plugin is too different)
mroongaのプラグインインストール時に起きた場合
MySQLとの組み合わせで問題が発生しているようです。
まずはインストールガイドをご確認ください。
MySQLのインストールに使うrpmパッケージは、remiリポジトリなどの派生版ではなく、
…
mroongaのプラグインインストール・アンインストールを手動で行いたい方向けのメモ。
MySQLが起ち上がっていない状態で、プラグインをインストールした時にも必要ですね。
更新履歴
2014年1月8日:mroonga-3.07の新機能であるmroonga_escapeのトピックを追加
インストール時に実行しているクエリ
DELETE IGNORE FROM mysql.plugin WHERE name = 'mroonga'; INSTALL PLUGIN mroonga SONAME 'ha_mroonga.so'; CREATE FUNCTION last_insert_grn_id RETURNS INTEGER SONAME 'ha_mroonga.so'; CREATE FUNCTION mroonga_snippet RETURNS STRING SONAME 'ha_mroonga.so'; CREATE FUNCTION mroonga_command RETURNS STRING SONAME 'ha_mroonga.so';
アンインストール時に実行しているクエリ
DROP FUNCTION mroonga_snippet; DROP FUNCTION last_insert_grn_id; DROP FUNCTION …[さらに読む]
MySQL 5.5より、インデックスへのコメント付与が可能となりました。
全文検索エンジンmroongaは、その機能を用いてFULLTEXTインデックスの生成方法を変えております。
インデックスコメントについての情報が少なかったので、紹介したいと思います。
テーブル構成
CREATE TABLE `foo_table` ( `id` int(11) NOT NULL, `name` varchar(255) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8
mroongaストレージエンジンを使ったサンプルでも紹介します。
これを使っていない限り、そうそうインデックスにコメントを追加する機会は無いと思います。
CREATE TABLE `mroonga_table` …[さらに読む]
storageモードだとデータ型の扱いがMySQLでのそれと違い困っている。
そうだ、wrapperモードにしよう、と思い立った方向けの記事です。
StorageモードからWrapperモードに変換する
InnoDBのWrapperモードへ変更する場合はこうします。
ALTER TABLE foo_table ENGINE=mroonga COMMENT='engine "innodb"';
ダブルクォートの中は大文字小文字の指定はありませんので、以下のように記述しても動きます。
ALTER TABLE foo_table ENGINE=mroonga COMMENT='engine "InnoDB"';
そして、InnoDB以外にも、任意のストレージエンジンを選択することも出来ます。
…