shell腳本定時查詢數據庫的結果輸出至文件

1. linux定時任務的配置請自行學習。linux

2. 若是數據庫不在本機服務器,須要安裝sqlplus客戶端,請查看筆者的另一篇文章學習sqlplus的安裝。sql

3. shell腳本查詢數據庫結果輸出至文件:shell

$SQLPLUS_HOME/sqlplus username/password@//host:port/sid<< EOF

------------------------------------------------------------------------------
--set echo on/off       是否顯示腳本中的須要執行的命令 
--set feedback on/off   是否顯示 select 結果以後返回多少行的提示
--set linesize n        設置一行最多顯示多少字符,以前就是由於 n 設得過大,致使行與行之間有空白行
--set termout on/off    在執行腳本時是否在屏幕上輸出結果,若是 spool 到文件能夠將其關閉
--set heading on/off    是否顯示查詢結果的列名,若是設置爲 off,將用空白行代替
--set pagesize n        設置每頁的行數,將 n 設爲 0 能夠不顯示全部headings, page breaks, titles, the initial blank line, and other formatting information
--set trimspool on/off  在 spool 到文件時是否去除輸出結果中行末尾的空白行或者空白字符
--set trimout on/off    在屏幕輸出時是否去掉行末尾的空白
--set trimout on/off    是否去掉屏幕上輸出結果行末尾的空白字符
--set space n           輸出列間空格數設置

set echo off
set feedback off
set linesize 32767
set termout off
set heading on
set pagesize 50000
set trimpool on
set space 2

spool $SQLPLUS_HOME/job/result.txt
@$SQLPLUS_HOME/job/sql.sql
spool off
quit;
EOF

4. 將上述腳本複製進data.sh文件,而後執行sh -x data.sh命令,便可獲得想要的結果,注意sql.sql文件要本身根據需求寫sql語句。數據庫

相關文章
相關標籤/搜索