On 7/2/07, Tom Lane <tgl@xxxxxxxxxxxxx> wrote:
David Fetter <david@xxxxxxxxxx> writes: > On Sun, Jul 01, 2007 at 03:55:11PM -0400, Alvaro Herrera wrote: >> So mount a ramdisk and initdb in there. > You could also put a tablespace on a ramdisk and create the table > there.
Thanks for this hint. That looks like what I was looking for.
The fresh-initdb approach is more likely to work without any strange corner cases. If you try a setup where the system catalogs are on persistent storage but you have a tablespace on ramdisk, then after restart you'll have pg_class entries referencing files that don't exist anymore, which I believe will provoke errors.
I believe error will occur if trying to access these objects. To avoid this pg_dump/pg_restore may be useful and recreating the tables/indexes after restart. This will emulate the MySQL behaviour where tables definitions is kept on disk and contents kept in memory.