[20130207]tracefile_identifier引數設定的問題.txt
[20130207]tracefile_identifier引數設定的問題.txt
設定tracefile_identifier引數的主要目的就是為了很好的定位跟蹤檔案。
我同事提出一個要求就是修改回話的tracefile_identifier包含IP地址。我做了一些簡單的測試:
--如果英文,數字(沒有小數點)開頭不需使用引號。
--必須使用引號!
--這樣有1點小問題,生成的檔案沒有.trc字尾。
最後的程式碼如下:
--實際上你還可以利用這段程式碼控制在回話級別設定cursor_sharing引數。
我在生產系統的例子:
設定tracefile_identifier引數的主要目的就是為了很好的定位跟蹤檔案。
我同事提出一個要求就是修改回話的tracefile_identifier包含IP地址。我做了一些簡單的測試:
SQL> alter session set tracefile_identifier = aaa;
Session altered.
SQL> alter session set tracefile_identifier = 172;
Session altered.
--如果英文,數字(沒有小數點)開頭不需使用引號。
SQL> alter session set tracefile_identifier = 172.16.11.100;
alter session set tracefile_identifier = 172.16.11.100
*
ERROR at line 1:
ORA-02017: integer value required
--必須使用引號!
SQL> alter session set tracefile_identifier = '172.16.11.100';
Session altered.
SQL> column name format a20
SQL> column value new_value file format a86
SQL> select * from v$diag_info where name='Default Trace File';
INST_ID NAME VALUE
---------- -------------------- --------------------------------------------------------------------------------------
1 Default Trace File /u01/app/oracle11g/diag/rdbms/test/test/trace/test_ora_12667_172.16.11.100
--這樣有1點小問題,生成的檔案沒有.trc字尾。
最後的程式碼如下:
/* Formatted on 2013/02/07 15:08 (Formatter Plus v4.8.8) */
--
-- ON_LOGON_TRIGGER (Trigger)
--
-- Dependencies:
-- STANDARD (Package)
-- DBMS_APPLICATION_INFO (Package)
-- V$SESSION (View)
-- V$MYSTAT (View)
--
CREATE OR REPLACE TRIGGER SYS.on_logon_trigger
AFTER LOGON ON DATABASE
DECLARE
v_client_info v$session.client_info%TYPE;
v_sid v$session.SID%TYPE;
BEGIN
SELECT SYS_CONTEXT ('userenv', 'ip_address')
INTO v_client_info
FROM DUAL;
DBMS_APPLICATION_INFO.set_client_info (v_client_info);
-- -- Get user SID information
-- SELECT SID
-- INTO v_sid
-- FROM v$mystat
-- WHERE ROWNUM < 2;
---- Get Program executable,OSUSER Details,Machine Details for this session
-- SELECT nvl(replace(client_info,'.','_'),'local')
-- INTO v_client_info
-- FROM v$session
-- WHERE SID = v_sid;
EXECUTE IMMEDIATE 'alter session set tracefile_identifier = ''' || REPLACE (NVL (v_client_info, 'local'), '.', '_') || '''';
END;
/
--實際上你還可以利用這段程式碼控制在回話級別設定cursor_sharing引數。
我在生產系統的例子:
CREATE OR REPLACE TRIGGER SYS.enable_para_cursor_sharing
AFTER LOGON ON DATABASE
DECLARE
v_exe v$session.program%TYPE;
v_sid v$session.SID%TYPE;
v_osuser v$session.osuser%TYPE;
v_machine v$session.machine%TYPE;
v_ok VARCHAR (10);
BEGIN
-- add and set clint_ip to application_info
DBMS_APPLICATION_INFO.set_client_info (SYS_CONTEXT ('userenv', 'ip_address'));
-- Get user SID information
SELECT SID
INTO v_sid
FROM v$mystat
WHERE ROWNUM < 2;
-- Get Program executable,OSUSER Details,Machine Details for this session
SELECT program, osuser, machine
INTO v_exe, v_osuser, v_machine
FROM v$session
WHERE SID = v_sid;
IF ( (USER = 'XXX' AND LOWER (v_exe) = 'aaa.exe')
OR (USER = 'YYY' AND LOWER (v_exe) = 'bbb.exe')
)
THEN
EXECUTE IMMEDIATE 'alter session set cursor_sharing =force';
--EXECUTE IMMEDIATE 'alter session set timed_statistics=true';
--EXECUTE IMMEDIATE 'alter session set max_dump_file_size=unlimited';
--EXECUTE IMMEDIATE 'alter session set tracefile_identifier=''session_trace_trigger''';
--EXECUTE IMMEDIATE 'alter session set events ‘’10046 trace name context forever, level 8'' ';
--DBMS_SESSION.set_identifier ('SQL TRACE ENABLED VIA LOGIN TRIGGER');
END IF;
END;
/
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/267265/viewspace-754003/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle歸檔引數設定問題Oracle
- 系統引數nofile設定不生效問題
- Oracle Sequence不設定cache引數的幾個潛在問題Oracle
- Oracle RAC引數設定優先順序別問題分析Oracle
- linux定時任務url帶引數的問題Linux
- [20121207]例項與引數設定.txt
- [20221111]bash eval設定變數問題.txt變數
- Oracle CSS的引數設定 心跳時間設定OracleCSS
- 關於環境變數設定的問題變數
- vsftpd設定引數FTP
- RAC 特定引數設定
- 兩個引數設定
- DB_FILE_MULTIBLOCK_READ_COUNT引數和區間尺寸的設定問題BloC
- Oracle Extent引數問題Oracle
- [20221125]設定hugepages遇到的問題.txt
- [20201221]spfile設定問題.txt
- shmmax的設定問題HMM
- curl CURLOPT_WRITEFUNCTION 的引數設定Function
- Metasploit設定LHOST引數技巧
- Metasploit設定VERBOSE引數技巧
- pandas引數設定小技巧
- Metasploit設定HttpTrace引數技巧HTTP
- tomcat vm 引數設定Tomcat
- JVM常見引數設定JVM
- JVM引數設定大氣JVM
- SAP系統引數設定
- SAP 系統引數設定
- ORACLE JOB INTERVAL引數設定Oracle
- chrome啟動引數設定Chrome
- 設定NLS_LANG引數
- 函式定義、函式的引數、函式的預設引數函式
- MySQL的配置檔案的引數設定MySql
- 儲存過程輸入引數型別定義引起的問題儲存過程型別
- Swift語言中為外部引數設定預設值可變引數常量引數變數引數輸入輸出引數Swift變數
- [20200220]windows設定keepalive引數.txtWindows
- ORACLE_SID環境變數設定的問題Oracle變數
- mysql的日誌引數修改的問題.MySql
- STM32埠IO方向設定問題的IO方向設定問題