[groonga-dev,04634] Re: オブジェクト作成後にmroongaをインストールした場合の対処について

Back to archive index

各務 洋 kagam****@pyrol*****
2018年 7月 8日 (日) 23:21:59 JST


大川様。
各務と申します。

もし私がこの環境で修復を行うなら、次の2点が必要になると考えます。

・Plugin を有効にする。
・Table を作り直す。

手順にすると下記のようになると思います。作業はほぼ、Slave 側で行います。

1. Slave への参照を止めて確認する(いわゆる縮退状態に)。
2. Slave を止める。(と言いながら更新が少ない非同期ならそのままにするかも)
3. yum 実行( mysql の root のパスワードは設定解除が推奨)
4. SHOW PLUGINS; で Mroonga が入っているか確認。入っていなければ、
   /usr/share/mroonga/uninstall.sql; /usr/share/mroonga/install.sql の実行
5. ALTER TABLE M_APL ENGINE Mroonga;

あとは念のため Master 側で

SELECT TABLE_SCHEMA TABLE_NAME FROM information_schema.tables WHERE ENGINE = 'Mroonga'

を実行して、他に Mroonga の Table が無いか確認すると思います。
問題なければ Slave を止めていたら戻して、追いついたら縮退を解除します。

ご質問の点の
> スレーブ側にmroonga pluginをインストールする予定ではいるのですが、
が、手順の3,4

> スレーブ側にレプリケーションされているテーブルの再構築等は必要になりますでしょうか?
これが手順5

> また、既に作成されたObjectに対して、mroonga pluginインストール後に実施しなければいけないことはありますでしょうか?
wrapper mode を本番環境で使用したことは無いのですが、
手順5 の ALTER TABLE は TABLE の新規作成&流し込み&差し替えになるようです。
したがって、特に実施しないといけないことは無いと思います。

上記でいかがでしょうか?

P.S
奇遇なことに先週 Slave 側でのみ、何故か Engine InnoDB になっているDBを修復しました。
Plugin は入っていたので、その際の手順は、1と5だけで復旧させています。


------------------------------------------------------------
各務 洋        Email   kagam****@pyrol*****




groonga-dev メーリングリストの案内
Back to archive index