Sun GlassFish Enterprise Server v3 Prelude Administration Guide

Administering JDBC Connection Pools

A JDBC connection pool is a group of reusable connections for a particular database. Because creating each new physical connection is time consuming, Enterprise Server maintains a pool of available connections. When an application requests a connection, it obtains one from the pool. When an application closes a connection, the connection is returned to the pool.

A JDBC resource is created by specifying the connection pool with which the resource is associated. Multiple JDBC resources can specify a single connection pool. The properties of connection pools can vary with different database vendors. Some common properties are the database name (URL), the user name, and the password.

The following tasks and information are used to administer JDBC connection pools:

ProcedureTo Create a JDBC Connection Pool

The remote create-jdbc-connection-pool command enables you to register a new JDBC connection pool with the specified JDBC connection pool name. A JDBC connection pool or a connector connection pool can be created with authentication. You can either use a command option to specify user, password, or other connection information using the asadmin utility, or specify the connection information in the XML descriptor file.

When you are building the connection pool, certain data specific to the JDBC driver and the database vendor will be required. You can find some of the following specifics inConfiguration Specifics for JDBC Drivers:

Creating a JDBC connection pool is a dynamic event and does not require server restart.

Before You Begin

Before creating the connection pool, you must first install and integrate the database and its associated JDBC driver. For instructions, see Setting Up the Database.

  1. Ensure that the server is running.

    Remote commands require a running server.

  2. Create the JDBC connection pool by using the create-jdbc-connection-pool(1) command.


Example 5–3 Creating a JDBC Connection Pool

The following example command creates a JDBC connection pool named sample_derby_pool on localhost:


asadmin create-jdbc-connection-pool 
--datasourceclassname org.apache.derby.jdbc.ClientDataSource 
--restype javax.sql.XADataSource 
--property portNumber=1527:password=APP:user=APP:serverName=
localhost:databaseName=sun-appserv-samples:connectionAttribut
es=\;create\\=true sample_derby_pool

Information similar to the following is displayed:


Command create-jdbc-connection-pool executed successfully.

See Also

To see the full syntax and options of the command, type asadmin create-jdbc-connection-pool --help at the command line.

ProcedureTo List JDBC Connection Pools

The remote list-jdbc-connection-pools command enables you to list all existing JDBC connection pools.

  1. Ensure that the server is running.

    Remote commands require a running server.

  2. List the JDBC connection pools by using the list-jdbc-connection-pools(1) command.


Example 5–4 Listing JDBC Connection Pools

The following example command lists the JDBC connection pools that are on localhost:


asadmin list-jdbc-connection-pools

Information similar to the following is displayed:


sample_derby_pool2
poolA
__TimerPool
DerbyPool
sample_derby_pool
Command list-jdbc-connection-pools executed successfully.

See Also

To see the full syntax and options of the command, type asadmin list-jdbc-connection-pools --help at the command line.

ProcedureTo Contact (Ping) a Connection Pool

The remote ping-connection-pool command tests if a connection pool is usable. For example, if you create a new JDBC connection pool for an application that is expected to be deployed later, you can test the JDBC pool with this command before the application is deployed.

Before You Begin

Before you can contact a connection pool, the connection pool must be created with authentication, and the server or database must be running.

  1. Ensure that the server is running.

    Remote commands require a running server.

  2. Ping a connection pool by using the ping-connection-pool(1) command.


Example 5–5 Contacting a Connection Pool

The following example command tests to see if the DerbyPool connection pool is usable:


asadmin ping-connection-pool DerbyPool

Information similar to the following is displayed if the connection pool is usable:


Command ping-connection-pool executed successfully

See Also

To see the full syntax and options of the command, type asadmin ping-connection-pool --help at the command line.

ProcedureTo Delete a JDBC Connection Pool

The remote delete-jdbc-connection-pool command enables you to delete an existing JDBC connection pool. Deleting a JDBC connection pool is a dynamic event and does not require server restart.

Before You Begin

Before deleting a JDBC connection pool, all associations to the resource must be removed.

  1. Ensure that the server is running.

    Remote commands require a running server.

  2. Obtain the exact name of the JDBC connection pool that you are deleting.

    To list the existing JDBC connection pools:


    asadmin list-jdbc-connection-pools
    
  3. If necessary, notify users that the JDBC connection pool is being deleted.

  4. Delete the connection pool by using the delete-jdbc-connection-pool(1) command.


Example 5–6 Deleting a JDBC Connection Pool

The following example command deletes the JDBC connection pool named DerbyPool:


asadmin delete-jdbc-connection-pool jdbc/DerbyPool

Information similar to the following is displayed if the connection pool is usable:


Command delete-jdbc-connection-pool executed successfully.

See Also

To see the full syntax and options of the command, type asadmin delete-jdbc-connection-pool --help at the command line.