簡單的 Oracle 腳本
來源:易賢網(wǎng) 閱讀:1021 次 日期:2015-04-29 13:57:56
溫馨提示:易賢網(wǎng)小編為您整理了“簡單的 Oracle 腳本”,方便廣大網(wǎng)友查閱!

Oracle用了很久,但是一般使用還是通過PL/SQL Developer下面執(zhí)行.

以前用過相關的腳本是 awrrpt.sql 生成awr報告使用.

最近有這樣一個想法,寫一個SQL腳本放在用戶目錄下,系統(tǒng)出問題時由同事負責執(zhí)行.等我有時間時去查看相關信息.所以嘗試寫SQL腳本.也可以寫成定時任務去處理某些事情.

中間遇到的問題:

1 字符集的問題.Windows下默認GBK編碼,在數(shù)據(jù)庫服務器上可能會執(zhí)行報錯,很可能是字符集的原因.當時使用Eclipse把字符集改成UTF-8 解決這個問題.

2 關于注釋.SQL語句里注釋很重要,做一引起必要的說明,不然自己被自己搞昏了頭.

SQL腳本:

--初始化參數(shù)

define user = "'HLWL'";

define operate = "'zhouxianglh'";

define log_name;

--初始化設置

--顯示輸出

set echo on;

--指定每行長度

set LINESIZE 999;

--指定每頁大小,pagesize=0,則不會顯示表頭

set pagesize 10000;

--顯示實際執(zhí)行的SQl(包含參數(shù)執(zhí)行時能過 old,new 的方式分別顯示)

set verify ON;

--輸出文本去除首尾空格

set trimspool on;

--顯示字段名稱

set heading ON;

--set autotrace on;對執(zhí)行SQL進行分析

--開始寫入文件

select '/home/oracle/zx_'||lower(name)||'_'||&user||'_'||to_char(sysdate,'yyyy-mm-dd-hh24-mi')||'.sql' log_name from v$database;

spool &logname;

--開始執(zhí)行SQL

--查找當進程,找出導致系統(tǒng)當前性能問題的SQL

select inst_id,sid,serial#,seq#,taddr,sql_id,sql_child_number child,username,machine,last_call_et call_et,module,

(select object_name from dba_objects where a.row_wait_obj#=object_id) object_name,action,event from gv$session a

where a.status = 'ACTIVE' and a.username is not null order by last_call_et;

--記錄操作完成

select sysdate from dual;

--關閉文件

spool off;

更多信息請查看IT技術專欄

更多信息請查看數(shù)據(jù)庫
易賢網(wǎng)手機網(wǎng)站地址:簡單的 Oracle 腳本
由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復僅供參考,敬請考生以權威部門公布的正式信息和咨詢?yōu)闇剩?/div>

2025國考·省考課程試聽報名

  • 報班類型
  • 姓名
  • 手機號
  • 驗證碼
關于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 加入群交流 | 手機站點 | 投訴建議
工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網(wǎng)安備53010202001879號 人力資源服務許可證:(云)人服證字(2023)第0102001523號
聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關注公眾號:hfpxwx
咨詢QQ:526150442(9:00—18:00)版權所有:易賢網(wǎng)