我正在从命令行创建PostgreSQL数据库(即使用psql)。
我的SQL语句中有一些错误,我想找出错误发生的位置(填充屏幕缓冲区的对象太多 - 所以我需要将thios保存到文件中)
我已经尝试了几乎所有东西,从使用-o选项,-L选项和使用tee - 我仍然无法捕获在屏幕上滚动过去的信息。
如何记录?
这是我到目前为止所尝试的:
没有导致屏幕上的数据闪烁记录到文件中 - 我该怎么做?
答案 0 :(得分:12)
您需要重定向stderr。在Un * x和Linux上:
psql ... 2>error.log
或stdout和stderr:
psql ... &>error.log
另一方面,如果您想逐个调查错误:
psql -v ON_ERROR_STOP=1 ...
有关使用psql执行SQL脚本的有用文章 - here。