匿名用户pg中临时文件使用情况,怎么查看?来判断work_mem是否够用
pg中临时文件使用情况,怎么查看?目的是想来判断work_mem是否够用
我来答
添加附件
收藏
分享
问题补充
4条回答
默认
最新
回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
墨值悬赏
匿名用户pg中临时文件使用情况,怎么查看?目的是想来判断work_mem是否够用
也通过打开log_temp_files配置(以bytes为单位),判断需要多少空间;打开之后,可以在日志中看到:
LOG: temporary file: path "base/pgsql_tmp/pgsql_tmp5323.0", size 82332
上述信息表示查询需要82332 bytes;因此work_mem设置为大于等于82332 bytes,可以在内存中进行排序;
对于应用的查询,只能在用户级别配置work_mem;做这个之前了解一下该用户的连接数,防止oom;
评论
有用 1
利用 explain analyze可以检查是否有足够的work_mem
例如:在执行计划中出现了Sort Method: external merge Disk:13696kb,这说明需要从硬盘走13MB的数据,这时应该在会话级设置参数work_mem(SET work_mem = ‘14MB’;)有足够的值。
评论
有用 0
墨值悬赏