phpman > man > Apache::Session::Lock::MySQL

Markdown | JSON | MCP    

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 <jwbaker AT acm.org>.

SEE ALSO
    Apache::Session

Generated by phpman v3.7.11 Author: Che Dong Under GNU General Public License
2026-06-12 19:39 @216.73.216.28
CrawledBy Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
Valid XHTML 1.0 TransitionalValid CSS!