須藤です。 In <CAF1BLYEf6_gsMamp1eEbhtxX2kw=uiEHG****@mail*****> "[groonga-dev,04984] Re: [ANN] Mroonga 12.03" on Fri, 6 May 2022 16:42:26 +0900, Mitsuo Yoshida <y****@ceek*****> wrote: >> > sudo apt update; sudo apt dist-upgrade >> > でアップデートし、 >> >> このときのログが残っていたら見せてもらえませんか? > > 以下、抜粋します! ありがとうございます! これはとても助かります。 > /var/log/apt/term.log こんなファイルがあったとは!知りませんでした! > ERROR 1968 (HY000) at line 19: Plugin 'mroonga' already installed > Run the following command lines to re-register Mroonga: > mysql --defaults-file=/etc/mysql/debian.cnf < /usr/share/mroonga/uninstall.sql > mysql --defaults-file=/etc/mysql/debian.cnf < /usr/share/mroonga/install.sql Mroongaをアップグレードしたときはインストールスクリプトの中 でuninstall.sqlを実行→install.sqlを実行として確実に新しい ha_mroonga.soを読み込むようにしているんですが、それの uninstall.sqlの実行だけ成功していますね。(その後の install.sqlの実行が失敗しています。) それぞれのSQLは次のような感じになっていて、UNINSTALL PLUGIN Mroongaした後にFLUSH TABLESすれば確実にSELECT * FROM mysql.plugin WHERE NAME = 'mroonga'で見つからなくなる(キレ イにアンインストールされる)想定なんですが、FLUSH TABLESした 跡でもmysql.pluginの中にMroongaのエントリーが残っている感じ がしますね。。。 https://github.com/mroonga/mroonga/blob/master/data/uninstall.sql https://github.com/mroonga/mroonga/blob/master/data/install.sql.in どうするといいのかしら。uninstall.sqlとinstall.sqlの間に mysqldの再起動を挟むのが確実かしら。 復旧方法はログにある通り手動で↓を実行することなので今回の対 応で問題ありません。 > mysql --defaults-file=/etc/mysql/debian.cnf < /usr/share/mroonga/uninstall.sql > mysql --defaults-file=/etc/mysql/debian.cnf < /usr/share/mroonga/install.sql