我定期保存并稍后还原用于测试的较小的PostgreSQL数据库。测试会定期更新其数据,然后必须进行新的转储,并定期使用转储以良好定义的状态重新创建数据库。
我注意到转储(使用pg_dump -Fc database
)仅需花费几秒钟,而还原(pg_restore -d database
)则需要大约一分钟。这看起来很奇怪。我本来希望这两个过程都花费大约相同的时间(假设两个任务都受I / O约束)。
还原是否存在问题?我可以加快速度吗?还是恢复比转储花费更长的时间是正常的?(如果是,那为什么呢?)
转储文件通常具有大约3-4 MiB;DBMS是PostgreSQL V8.4,在Ubuntu Linux下运行于具有1GiB RAM的Pentium4 3GHz上。