# GROWI v3.6.x へのアップグレード
v3.6 では、Node.js v8 はサポートされなくなりました。
また v3.5 より下位のバージョンには、誤って2つのデータベースが作成されてしまうバグ(weseek/growi#1361 (opens new window))が存在します。
# Node.js v8 のサポートを終了
TIP
公式の Docker イメージ (opens new window)を利用しているシステムには影響はありません
# Node.js のアップグレード
- v10 または v12 にアップグレードしてください
# weseek/growi#1361 (opens new window) の回避
WARNING
この問題は、MONGO_URI
が、?key=value
形式のパラメータを含む URL で運用していた場合に限り影響があります
# とにかくアップグレード
- 通常通りアップグレードしてください
- 影響
- これまでの累積 migration が再度実行されます
- 設計上は問題ないはずですが、不整合があるデータが書き換わる可能性があります
# 安全なアップグレード
migrations
コレクションを移植します。mongodump
,mongorestore
を使える環境で以下を実行してください。{dbname}
,{dbname?key=value}
は、実際の環境のDB名に置き換えてください。mongodump -d {dbname?key=value} -c migrations -o backup
mongorestore -d {dbname} -c migrations "./backup/{dbname?key=value}/migrations.bson"
不要な DB を drop します。mongo shell 内で以下を実行してください。
{dbname?key=value}
は、実際の環境のDB名に置き換えてください。use {dbname?key=value} db.dropDatabase()
# アップグレード前にチェックすべきこと
- 運用中のシステムにセットしている
MONGO_URI
が、?key=value
形式のパラメータを含むか - 運用中のシステムが接続している MongoDB に、
?key=value
形式のパラメータを名前に含むデータベースが存在するか