https://qiita.com/XKYUXSOX/items/a270c28c04fafabfdac0
パターン1との違いは
classpathの部分とnativepathの部分を選択できるようにしている点。
※たいていはデフォルトで作成するだけなので、パターン1で十分だと思う。
jvminfo.txt
yyd1Node01,server1
yyd1Node01,server2
yyd2Node01,server1
yyd1Node01_server1.jdbc
"DB2","DB2 Using IBM JCC Driver","XA data source","DB2 Using IBM JCC DriverXA","${DB2_JCC_DRIVER_PATH}/db2jcc4.jar ${UNIVERSAL_JDBC_DRIVER_PATH}/db2jcc_license_cu.jar ${DB2_JCC_DRIVER_PATH}/db2jcc_license_cisuz.jar ${PUREQUERY_PATH}/pdq.jar ${PUREQUERY_PATH}/pdqmgmt.jar",${DB2_JCC_DRIVER_NATIVEPATH}
"DB2","DB2 Using IBM JCC Driver","Connection pool data source","DB2 Using IBM JCC DriverONE","${DB2_JCC_DRIVER_PATH}/db2jcc4.jar ${UNIVERSAL_JDBC_DRIVER_PATH}/db2jcc_license_cu.jar ${DB2_JCC_DRIVER_PATH}/db2jcc_license_cisuz.jar ${PUREQUERY_PATH}/pdq.jar ${PUREQUERY_PATH}/pdqmgmt.jar",${DB2_JCC_DRIVER_NATIVEPATH}
JDBC_set.py
import csv
with open('jvminfo.txt') as f:
csvreader = csv.reader(f)
for row in csvreader:
nodename=row[0]
servername=row[1]
id=AdminConfig.getid('/Node:'+nodename+'/Server:'+servername+'/')
with open(nodename+'_'+servername+'.jdbc') as f2:
csvreader2 = csv.reader(f2)
for row2 in csvreader2:
J_dtype=row2[0]
J_ptype=row2[1]
J_itype=row2[2]
J_name=row2[3]
J_clspath=row2[4]
J_ntvpath=row2[5]
AdminTask.createJDBCProvider('[-scope Node='+nodename+',Server='+servername+' -databaseType "'+J_dtype+'" -providerType "'+J_ptype+'" -implementationType "'+J_itype+'" -name "'+J_name+'" -classpath "'+J_clspath+'" -nativePath '+J_ntvpath+' ]')
AdminConfig.save()
毎度の設定確認
JDBC_get.py
import csv
with open('jvminfo.txt') as f:
csvreader = csv.reader(f)
for row in csvreader:
nodename=row[0]
servername=row[1]
id=AdminConfig.getid('/Node:'+nodename+'/Server:'+servername+'/')
with open(nodename+'_'+servername+'.jdbc') as f2:
csvreader2 = csv.reader(f2)
for row2 in csvreader2:
J_name=row2[3]
ProcessID = AdminConfig.list('JDBCProvider',id)
JDBCList=AdminUtilities.convertToList(ProcessID)
for jpv in JDBCList:
if AdminConfig.showAttribute(jpv,'name') == J_name:
print nodename + servername
print AdminConfig.showAttribute(jpv,'name')
print AdminConfig.showAttribute(jpv,'xa')