How to start my 9.2 data directory using an 8.4 server?
Only the same major version can read the data files.

You need to upgrade properly. To do that you'll have to install 8.4, then use pg_upgrade, or use pg_dump and pg_restore. See the manual for more information.

That said, the error actually has the versions the other way around - it says you're running 8.4 binaries and trying to point them at a datadir from 9.2. Verify this with postgres --version. If you turn out to have 8.4 binaries and a 9.2 datadir then pg_upgrade won't do you any good - you just need to install 9.2 (or use the correct PATH if it's already installed) and run the 9.2 datadir using 9.2 binaries.



Update given extra info in question:

It is very likely that both 8.4 and 9.2 are running fine on your machine, just on different ports.

sudo netstat -ltnp |grep postgres


will show you listening PostgreSQL servers, and

psql -p 5433


(or whatever) will connect to a different port.

The databases appeared to vanish because when you installed the new PostgreSQL it became the default version that's run.

If you find that the 8.4 install is in fact not running, you probably just need to change the port it starts on in its configuration so it runs on a different port, then connect to it as shown above.