Apache::Session::Lock::MySQL - Provides mutual exclusion using MySQL

NAME  SYNOPSIS  DESCRIPTION  CONFIGURATION  AUTHOR  SEE ALSO 

NAME

Apache::Session::Lock::MySQL − Provides mutual exclusion using MySQL

SYNOPSIS

use Apache::Session::Lock::MySQL;
my $locker = Apache::Session::Lock::MySQL−>new();
$locker−>acquire_read_lock($ref);
$locker−>acquire_write_lock($ref);
$locker−>release_read_lock($ref);
$locker−>release_write_lock($ref);
$locker−>release_all_locks($ref);

DESCRIPTION

Apache::Session::Lock::MySQL fulfills the locking interface of Apache::Session. Mutual exclusion is achieved through the use of MySQL’s GET_LOCK and RELEASE_LOCK functions. MySQL does not support the notion of read and write locks, so this module only supports exclusive locks. When you request a shared read lock, it is instead promoted to an exclusive write lock.

CONFIGURATION

The module must know how to connect to your MySQL database to acquire locks. You must provide a datasource name, a user name, and a password. These options are passed in the usual Apache::Session style, and are very similar to the options for Apache::Session::Store::MySQL. Example:

tie %hash, 'Apache::Session::MySQL', $id, {
LockDataSource => 'dbi:mysql:database',
LockUserName => 'database_user',
LockPassword => 'K00l'
};

Instead, you may pass in an already opened DBI handle to your database.

tie %hash, 'Apache::Session::MySQL', $id, {
LockHandle => $dbh
};

AUTHOR

This module was written by Jeffrey William Baker <[email protected]>.

SEE ALSO

Apache::Session


Updated 2024-01-29 - jenkler.se | uex.se