I set up a private instance of Discourse a while ago, for a project that really only matters once a year, so it got ignored since October 2013.
I went to freshen up the Discourse install so people can use it again this year and find
- Discourse recommends I upgrade, of course: from 0.9.6.4 to current 0.9.9.13
- in the meantime, you’ve rolled out Docker and deprecated the manual install method I previously used
- following the upgrade steps for the old method (which I have successfully followed before), I get a fatal error about
database "discourse" does not exist.
Specifically, when doing the
rake db:migrate step (or the succeeding
rake assets:precompile step), I get
ActiveRecord::NoDatabaseError: FATAL: database "discourse" does not exist. I tried just starting up the new 0.9.9.13 installation anyway and unsurprisingly it doesn’t start; I rolled back to the backup of the previous version.
(See errors upgrading Discourse 0.9.6.4 to 0.9.9.13 · GitHub for the full error message and backtrace.)
I’m wondering if some of the databases or tables have been renamed over time, and the upgrade scripts know how to do this upgrade piecewise (so people who were following along closely with most of the interim releases didn’t have problems) but not all at once; do I need to upgrade to one or more interim versions?
Or is there manual DB surgery possible to make this work?
I’m expecting part of the answer involves moving over to the Docker based install which I’m happy to do, but the instructions there start with “upgrade to the absolute latest version of Discourse” before attempting the transition to Docker, so.
Or if there are snapshots of old known-good Docker-based versions and the Docker-based upgrades are more reliable, maybe I could upgrade the old way to the same version as one of these snapshots, then move to Docker, then upgrade to the present?
I would love to get on the current version (0.9.9.13) and packaging method (Docker) without losing the real user posts that are already in my existing DB. Thanks for any help.