1. 程式人生 > >Websphere 命令列配置DB2資料來源連線池

Websphere 命令列配置DB2資料來源連線池

      WAS ND的資料來源連線池在控制檯中很好配置,同樣通過命令列也可以配置,WAS支援兩種語法,Jacl與Jython,個人更喜歡Jython,Jython語法中不用分號結尾,下面是Jython語法的命令列資料來源配置:

      1)進入WAS安裝目錄/bin中,執行./wsadmin -user 使用者名稱 -password 密碼 -lang jython啟動WAS命令列控制檯,所有的配置均可以在這裡完成,前提是WAS Node啟動。

      2)首先建立JDBCProvider

            domain = AdminConfig.getid('/Cell:cellname/Node:nodename/')    /*可以通過print provider檢視是否成功建立 ,Cell=AdminControl.getCell()   Node=AdminControl.getNode()*/

            classpath = ['classpath', 'jar包位置:jar包位置....']

            name = ['name', 'GlobalJDBCProvider']

            implCN = ['implementationClassName', 'com.ibm.db2.jcc.DB2ConnectionPoolDataSource']

            providerType = ['providerType', 'DB2 Universal JDBC Driver Provider']

            providerAttrs = [classpath, name, implCN, providerType]

            AdminConfig.create('JDBCProvider', domain , providerAttrs)

            AdminConfig.save()

            建立完成並儲存後,可以在整合控制檯中看到

      3)建立J2CAuthentation

            security = AdminConfig.getid('/Cell:cellname/Security:/')

            alias = ['alias', 'alias']

            userid = ['userId', 'userId']

            password = ['password', 'password']

            securityAttrs = [alias, userid, password]

            AdminConfig.create('JAASAuthData', security, securityAttrs)

            AdminConfig.save()

            建立完成並儲存後,可以在整合控制檯中看到

      4)建立DataSource

            ds = AdminConfig.getid('/Cell:cellname/Node:nodename/JDBCProvider:jdbcprovidername/')

            adas = ['authDataAlias', 'alias'] 與上一步中的alias對應

            dhc = ['datasourceHelperClassname', 'com.ibm.websphere.rsadapter.DB2UniversalDataStoreHelper']

            jndiName = ['jndiName', 'jndiName']

            name = ['name', 'name']

            dsAttrs = [adas, dhc, jndiName, name]

            AdminConfig.create('DataSource', ds, dsAttrs)

            AdminConfig.save()

            建立完成並儲存後,可以在整合控制檯中看到

      5)配置DataSource連線的DB資訊

ds = AdminConfig.getid('/Cell:cellname/Node:nodename/JDBCProvider:jdbcprovidername/DataSource:ds/')

            jps = AdminConfig.create('J2EEResourcePropertySet', ds, [])

            databaseName = [['name', 'databaseName'], ['value', 'databaseName']]

            driverType = [['name', 'driverType'], ['value', '4']]

            serverName = [['name', 'serverName'], ['value', 'hostname']]

            portNumber = [['name', 'portNumber'], ['value', 'portNumber']]

            AdminConfig.create('J2EEResourceProperty', jps, databaseName)

            AdminConfig.create('J2EEResourceProperty', jps, driverType)

            AdminConfig.create('J2EEResourceProperty', jps, serverName)

            AdminConfig.create('J2EEResourceProperty', jps, portNumber)

            AdminConfig.save()

            建立完成並儲存後,可以在整合控制檯中看到

      6)建立ConnectionPool

            AdminConfig.create('ConnectionPool', ds, [['maxConnections','10']])

            AdminConfig.save()

            建立完成並儲存後,可以在整合控制檯中看到

      7)測試連線

            AdminControl.testConnection(ds)

      至此,資料來源配置完成