簡體   English   中英

如何在IBM Mainframe zos DB2上識別遠程Type 4 JDBC工作負載

[英]How to identify remote Type 4 JDBC workload on IBM Mainframe zos DB2

我需要能夠確定IBM大型機DB2 v10 zos數據庫上的Type 4 jdbc工作負載。

我們的大型機db2監視器可以過濾以下字段

SYSTEM ID
DB2 SUBSYSTEM ID
DATA SHARING GROUP
AUTHORIZATION ID
PLAN NAME
CONNECTION ID
OPERATOR ID
CORRELATION ID
DBRM/PACKAGE ID
BUFFER POOL ID
COLLECTION ID
LOCAL LOCATION
REQUESTING LOCATION
OTHER LOCATION
DATABASE.PAGESET
LOCK RESOURCE

我猜想其中許多值都無法更改。

但是這些項目似乎是候選對象

CONNECTION ID
CORRELATION ID
REQUESTING LOCATION
OTHER LOCATION

我的問題是:

一世)。 可以在我的Java客戶端jdbc代碼中設置“可能的候選人”嗎?

ii)。 如何設置這些“可能的候選人”?

如果我不能使用任何這些字段,那么我已經設法修改了與我的JDBC連接關聯的clientInfo ,如jdbc trace的此代碼段所示

[jcc][Time:2015-12-10-14:39:24.851][Thread:main][Connection@3b6eb2ec] getClientInfo () called
[jcc][Time:2015-12-10-14:39:24.851][Thread:main][Connection@3b6eb2ec] getClientInfo () returned {ClientUser=XXXXXX00, ApplicationName=db2jcc_application, ClientHostname=L0513039, ClientAccountingInformation=JCC04130L0513039                                      '}
[jcc][SystemMonitor:stop] core: 0.28737999999999997ms | network: 0.0ms | server: 0.0ms
[jcc][SystemMonitor:start] 
[jcc][Time:2015-12-10-14:39:24.852][Thread:main][Connection@3b6eb2ec] setClientInfo ({ApplicationName=crsJCC_application}) called
[jcc][SystemMonitor:stop] core: 3.613203ms | network: 0.0ms | server: 0.0ms
[jcc][SystemMonitor:start] 
[jcc][Time:2015-12-10-14:39:24.856][Thread:main][Connection@3b6eb2ec] getClientInfo () called
[jcc][Time:2015-12-10-14:39:24.856][Thread:main][Connection@3b6eb2ec] getClientInfo () returned {ClientUser=XXXXXX00, ApplicationName=xxxxxx_application, ClientHostname=L0513039, ClientAccountingInformation=JCC04130L0513039                                      '}
[jcc][SystemMonitor:stop] core: 0.24718099999999998ms | network: 0.0ms | server: 0.0ms
[jcc][Time:2015-12-10-14:39:24.857][Thread:main][Connection@3b6eb2ec] createStatement () called
[jcc][Time:2015-12-10-14:39:24.863][Thread:main][Connection@3b6eb2ec] createStatement () returned Statement@5ebec15
[jcc

在這種情況下,我在ClientInfo修改了ApplicationName ,我想要的是自定義的初始值,例如,初始值WAS'NT“ db2jcc_application ”但“開始為” xxxxxx_application “,這可能嗎?

使用DB2Driver,您應該能夠像這樣設置應用程序名稱:

Properties p= new Properties();
p.put("user", "admin");
p.put("password", "secret");
p.put("clientProgramName", "xxxx_application");
Connection conn = DriverManager.getConnection(
    "jdbc:db2://localhost:50000/yourdb", props);

如果您使用的是DB2DataSource,請從IBM簽出以下信息

       com.ibm.db2.jcc.DB2DataSource ds = 
          new com.ibm.db2.jcc.DB2DataSource();                                       

       ds.setDriverType(4);
       ds.setServerName("localhost");                             
       ds.setPortNumber(50000);                                   
       ds.setDatabaseName("sample");                              
       ds.setUser("username");                                  
       ds.setPassword("password");                              
       ds.setClientProgramName("My application");       

如前所述這里

clientProgramName

指定在客戶端的物理連接期間固定的應用程序ID。 該屬性的值成為DB2 for z / OS服務器上的關聯ID 數據庫管理員可以使用此屬性將DB2 for z / OS服務器上的工作與客戶端應用程序相關聯。 此屬性的數據類型為String。 最大長度為12個字節。 如果該值為null,則IBM DB2 Driver for JDBC和SQLJ提供db2jccthread-name的值。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM