有没有办法创建一个运行十几秒的查询?我不需要真正的数据只是一种长时间运行查询的方法,因此我可以测试系统在那段时间的工作方式。
我不想创建一个巨大的表,只为此做一个简单的选择。任何技巧?
答案 0 :(得分:6)
答案 1 :(得分:4)
SET statement_timeout to '10s';
SELECT 1 FROM pg_class CROSS JOIN pg_class CROSS JOIN pg_class ...; -- be careful ;-)
请注意,这会对CPU和RAM造成压力,但不一定会影响磁盘。如果你想强调磁盘,你可能只需要创建一个非常大的表。为此,您可以将上述查询的结果或任何其他解决方案的结果保存到新表(CREATE TABLE AS
)中。
答案 2 :(得分:0)
您也可以使用-T开关运行pgbench。所以......
pgbench -i -s 10
pgbench -c 10 -T 10