Configuring and Managing WebLogic JDBC

     Previous  Next    Contents    View as PDF - New Window  Get Adobe Reader - New Window
Content starts here

Introduction and Roadmap

Document Scope and Audience

Guide to this Document

Related Documentation

JDBC Samples and Tutorials

Avitek Medical Records Application (MedRec) and Tutorials

JDBC Examples in the WebLogic Server Distribution

New and Changed JDBC Features in This Release

Configuring WebLogic JDBC Resources

Understanding JDBC Resources in WebLogic Server

Ownership of Configured JDBC Resources

JDBC Configuration Files

JDBC System Modules

JDBC Application Modules

JDBC Module File Naming Requirements

JDBC Modules in Versioned Applications

JDBC Schema

JMX and WLST Access for JDBC Resources

JDBC MBeans for System Resources

JDBC Management Objects in the Java EE Management Model (JSR-77 Support)

Using WLST to Create JDBC System Resources

How to Modify and Monitor JDBC Resources

Best Practices when Using WLST to Configure JDBC

Overview of Clustered JDBC

Configuring JDBC Data Sources

Understanding JDBC Data Sources

Creating a JDBC Data Source

General Data Source Options

Selecting a JDBC Driver

JDBC Data Source Names

Binding a Data Source to the JNDI Tree with Multiple Names

Transaction Options

Enabling Support for Global Transactions with a Non-XA JDBC Driver

Understanding the Logging Last Resource Transaction Option

Advantages to Using the Logging Last Resource Optimization

Enabling the Logging Last Resource Transaction Optimization

Programming Considerations and Limitations for LLR Data Sources

Administrative Considerations and Limitations for LLR Data Sources

Understanding the Emulate Two-Phase Commit Transaction Option

Limitations and Risks When Emulating Two-Phase Commit Using a Non-XA Driver

Heuristic Completions and Data Inconsistency

Cannot Recover Pending Transactions

Possible Performance Loss with Non-XA Resources in Multi-Server Configurations

Only One Non-XA Participant

Connection Pool Features

Selecting a JDBC Driver

Enabling JDBC Driver-Level Features

Initializing Database Connections with SQL Code

Setting Database Security Credentials

Types of Data Source Pools

Using a User Name/Password

Set Client ID On Connection

Identity-based Connection Pooling

How Heterogeneous Connections are Created

Using Identity-based Pooling with Global Transactions

Using Identity-based Pooling with LLR

Tuning Data Source Connection Pool Options

Increasing Performance with the Statement Cache

Statement Cache Algorithms

LRU (Least Recently Used)

Fixed

Statement Cache Size

Usage Restrictions for the Statement Cache

Calling a Stored Statement After a Database Change May Cause Errors

Using setNull In a Prepared Statement

Statements in the Cache May Reserve Database Cursors

Connection Testing Options for a Data Source

Database Connection Testing Semantics

Connection Testing When Database Connections are Created

Periodic Connection Testing

Testing Reserved Connections

Minimized Connection Test Delay After Database Connectivity Loss

Minimized Connection Request Delay After Connection Test Failures

Minimizing Connection Request Delay with Seconds to Trust an Idle Pool Connection

Database Connection Testing Configuration Recommendations

Default Test Table Name

Enabling Connection Creation Retries

Enabling Connection Requests to Wait for a Connection

Connection Reserve Timeout

Limiting the Number of Waiting Connection Requests

Automatically Recovering Leaked Connections

Avoiding Server Lockup with the Correct Number of Connections

Limiting Statement Processing Time with Statement Timeout

Using Pinned-To-Thread Property to Increase Performance

Changes to Connection Pool Administration Operations When PinnedToThread is Enabled

Additional Database Resource Costs When PinnedToThread is Enabled

Deploying Data Sources on Servers and Clusters

Minimizing Server Startup Hang Caused By an Unresponsive Database

Security for JDBC Data Sources

Setting Security Policies for JDBC Resources

Security Roles for JDBC MBeans

JDBC Domain Configuration MBeans

JDBC System Module MBeans

JDBC Data Source Factories (Deprecated)

Configuring JDBC Multi Data Sources

Multi Data Source Features

Removing a Database Node

Adding a Database Node

Creating and Configuring Multi Data Sources

Choosing the Multi Data Source Algorithm

Failover

Load Balancing

Multi Data Source Fail-Over Limitations and Requirements

Test Connections on Reserve to Enable Fail-Over

No Fail-Over for In-Use Connections

Multi Data Source Failover Enhancements

Connection Request Routing Enhancements When a Data Source Fails

Automatic Re-enablement on Recovery of a Failed Data Source within a Multi Data Source

Enabling Failover for Busy Data Sources in a Multi Data Source

Controlling Multi Data Source Failover with a Callback

Callback Handler Requirements

Callback Handler Configuration

How It Works—Failover

Controlling Multi Data Source Failback with a Callback

How It Works—Failback

Deploying JDBC Multi Data Sources on Servers and Clusters

Using Third-Party JDBC Drivers with WebLogic Server

Third-Party JDBC Drivers Installed with WebLogic Server

Setting the Environment for a Type-4 Third-Party JDBC Driver

Globalization Support for the Oracle 11g Thin Driver

Using the Oracle Thin Driver in Debug Mode

Monitoring WebLogic JDBC Resources

Viewing Runtime Statistics

Data Source Statistics

Prepared Statement Cache Statistics

Collecting Profile Information

Profile Types

Connection Usage (PROFILE_TYPE_CONN_USAGE_STR)

Connection Reservation Wait (PROFILE_TYPE_CONN_RESV_WAIT_STR)

Connection Reservation Failed (PROFILE_TYPE_CONN_RESV_FAIL_STR)

Connection Leak (PROFILE_TYPE_CONN_LEAK_STR)

Connection Last Usage (PROFILE_TYPE_CONN_LAST_USAGE_STR)

Connection Multithreaded Usage (PROFILE_TYPE_CONN_MT_USAGE_STR)

Statement Cache Entry (PROFILE_TYPE_STMT_CACHE_ENTRY_STR)

Statements Usage (PROFILE_TYPE_STMT_USAGE_STR)

Accessing Diagnostic Data

Callbacks for Monitoring Driver-Level Statistics

Debugging JDBC Data Sources

Enabling Debugging

Enable Debugging Using the Command Line

Enable Debugging Using the WebLogic Server Administration Console

Enable Debugging Using the WebLogic Scripting Tool

Changes to the config.xml File

JDBC Debugging Scopes

Request Dyeing

Managing WebLogic JDBC Resources

Testing Data Sources and Database Connections

Managing the Statement Cache for a Data Source

Clearing the Statement Cache for a Data Source

Clearing the Statement Cache for a Single Connection

Shrinking a Data Source

Resetting a Data Source

Suspending a Data Source

Resuming a Data Source

Shutting Down a Data Source

Starting a Data Source

Configuring JDBC Application Modules for Deployment

Packaging a JDBC Module with an Enterprise Application: Main Steps

Creating Packaged JDBC Modules

Creating a JDBC Data Source Module Using the Administration Console

JDBC Packaged Module Requirements

JDBC Application Module Limitations

Creating a JDBC Data Source Module

Creating a JDBC Multi Data Source Module

Encrypting Database Passwords in a JDBC Module

Deploying JDBC Modules to New Domains

Application Scoping for a Packaged JDBC Module

Referencing a JDBC Module in Java EE Descriptor Files

Packaged JDBC Module References in weblogic-application.xml

Packaged JDBC Module References in Other Descriptors

Packaging an Enterprise Application with a JDBC Module

Deploying an Enterprise Application with a JDBC Module

Getting a Database Connection from a Packaged JDBC Module

Using WebLogic Server with Oracle RAC

Overview of Oracle Real Application Clusters

Oracle RAC Scalability with WebLogic Server

Oracle RAC Availability with WebLogic Server

Oracle RAC Load Balancing with WebLogic Server

Oracle RAC Failover with WebLogic Server

Environment

Hardware Requirements

WebLogic Server Cluster

Oracle RAC Cluster

Shared Storage

Software Requirements

Configuration Considerations for Oracle

Configuring the Listener Process for Each Oracle RAC Instance

Disabling Remote Listeners

Configuration Options in WebLogic Server with Oracle RAC

Choosing a WebLogic Server Configuration for Use with Oracle RAC

Required JDBC Drivers

Configuration Considerations for Failover

Multi Data Source-Managed Failover

Connect-Time Failover

Delays During Failover

Failure Handling Walkthrough for Global Transactions

Using Multi Data Sources with Oracle RAC

Attributes of a Multi Data Source

Using Multi Data Sources with Global Transactions

Rules for Data Sources within a Multi Data Source Using Global Transactions

Required Attributes of Data Sources within a Multi Data Source Using Global Transactions

Sample Configuration Code

Using Multi Data Sources without Global Transactions

Attributes of Data Sources within a Multi Data Source Not Using Global Transactions

Sample Configuration Code

Using Connect-Time Failover with Oracle RAC

Using Connect-Time Failover without Global Transactions

Attributes of a Connect-Time Failover Configuration without Global Transactions

Sample Configuration Code

Using Fast Connection Failover

Required JDBC Driver Configuration for use with Oracle Fast Connection Failover

XA Considerations and Limitations with Oracle RAC

Required JDBC Driver Configuration for Use with XA

Oracle RAC XA Requirements

A Global Transaction Must Be Initiated, Prepared, and Concluded in the Same Instance of the RAC Cluster

Transaction IDs Must Be Unique Within the RAC Cluster

Known Limitations When Using Oracle RAC with WebLogic Server

Potential for Inconsistent Transaction Completion (Data Loss) in Some Failure Conditions

Potential for Data Deadlocks in Some Failure Scenarios

Potential for Transactions Completed Out of Sequence

Known Issue Occurring After Database Server Crash

JDBC Store Recovery with Oracle RAC

Configuring a JDBC Store for Use with Oracle RAC

Automatic Retry


  Back to Top       Previous  Next