這裏是問題:我需要知道如何從執行的.sql腳本獲取所有PostgreSQL輸出以記錄到文件,包括錯誤和查詢結果。PostgreSQL對.sql腳本的查詢/錯誤日誌記錄
我已經用\ o和\ o打開和關閉標記來包圍我的腳本,但是這隻記錄了查詢的結果,這些結果告訴我什麼都沒有,也沒有成功。我曾嘗試使用Unix工具像這樣管道調用的結果到PostgreSQL:
$~: psql < filename.sql | tee &> filename.log
...沒有成功。這種情況下的Filename.log完全是空的。
我不想激活通用日誌記錄,因爲我只關心我編寫的腳本的成功/失敗並保存這個記錄以供將來參考。
在Oracle中,我使用了SPOOL,在MySQL中我使用了TEE。這兩種方法對我的需求都很好,但是\ o沒有這個功能,也沒有激活日誌記錄,因爲這會記錄到單個文件中,並且我希望根據哪個文件產生這些日誌來分離日誌。
任何幫助,將不勝感激。
編輯:我使用的版本是9.1
編輯:我遇到的問題是,使用-f和使用<執行.sql文件給我本質上是相同的結果;它不記錄錯誤,它只記錄查詢結果。我需要以某種方式得到stderr(如果這是使用的),將它的消息打印到文件而不僅僅是命令行,使得該文件基本上看起來與運行該文件的命令行結果相同,其中查詢結果和錯誤混合我需要這樣做的原因是因爲它使調試.sql文件變得更加容易,它允許我保留目標記錄,同時避免通用的錯誤日誌記錄。
謝謝!這正是我正在尋找的答案和解釋。再次感謝! – 2012-12-22 00:47:35