Oracle
SERV_MOD_ACT_TRACE_ENABLE 問題
SQL> EXECUTIVE DBMS_MONITOR.SERV_MOD_ACT_TRACE_ENABLE(service_name=>'ACC_SRV',waits=>TRUE,binds=>FALSE,instance_name=>'inst1');
為什麼這個函式需要 instance_name 參數?我認為實例和服務之間的關係如下(http://docs.oracle.com/cd/B19306_01/network.102/b14212/concepts.htm):
- 一個實例一個服務
- 一個實例的多服務
如果我呼叫 SERV_MOD_ACT_TRACE_ENABLE,則會為使用 ACC_SRV 服務的每個會話創建一個跟踪文件。這個不為空的實例參數有什麼作用?
不需要實例名稱,如您在文件中所見
除非指定了 instance_name,否則此過程將為給定的 Service Name、MODULE 和 ACTION 組合全域啟用 SQL 跟踪。
instance_name 有一個預設值 null 暗示它不是必需的參數。在 RAC 數據庫中,這只會在所有打開的實例中啟用對您的服務的跟踪。