title: Use pg_restore to restore from a newer version of PostgreSQL
body: <p>I have a (production) DB server running PostgreSQL v9.0 and a development machine running PostgreSQL v8.4. I would like to take a dump of the production DB and use it on the development machine. I cannot upgrade the postgres on the dev machine.</p>
  
  <p>On the production machine, I run:</p>
  
  <pre><code>pg_dump -f nvdls.db -F p -U nvdladmin nvdlstats
  </code></pre>
  
  <p>On the development machine, I run:</p>
  
  <pre><code>pg_restore -d nvdlstats -U nvdladmin nvdls.db
  </code></pre>
  
  <p>And I got this error:</p>
  
  <pre><code>pg_restore: [archiver] unsupported version (1.12) in file header
  </code></pre>
  
  <p>This occurs regardless of whether I choose the custom, tar, or plain_text format when dumping.</p>
  
  <p>I found <a href="http://forums.enterprisedb.com/posts/list/2112.page" rel="noreferrer">one discussion online</a> which suggests that I should use a newer version of <code>pg_restore</code> on the dev machine. I tried this by simply copying the 9.0 binary to the dev machine, but this fails (not unexpectedly) due to linking problems.</p>
  
  <p>I thought that the point of using a plain_text dump was that it would be raw, portable SQL. Apparently not.</p>
  
  <p>How can I get the 9.0 DB into my 8.4 install?</p>