man > Apache::Session::Store::MySQL

🚀 Quick Reference

Use CaseCommandDescription
📦 Create session storage tableCREATE TABLE sessions ( id CHAR(32) NOT NULL PRIMARY KEY, a_session BLOB );Schema for MySQL session storage
🔗 Tie session hash with DSNtie %hash, 'Apache::Session::MySQL', $id, { DataSource => 'dbi:mysql:database', UserName => 'user', Password => 'pass', TableName => 'sessions' };Connect to MySQL using credentials
🔗 Tie session hash with existing handletie %hash, 'Apache::Session::MySQL', $id, { Handle => $dbh };Reuse an open DBI database handle
📥 Store session data$store->insert($ref);Insert a new session record
📝 Update session data$store->update($ref);Update an existing session record
📖 Retrieve session data$store->materialize($ref);Load session data from database
🗑️ Delete session data$store->remove($ref);Remove a session record

📛 NAME

Apache::Session::Store::MySQL - Store persistent data in a MySQL database

📋 SYNOPSIS

use Apache::Session::Store::MySQL;

my $store = new Apache::Session::Store::MySQL;

$store->insert($ref);
$store->update($ref);
$store->materialize($ref);
$store->remove($ref);

📖 DESCRIPTION

Apache::Session::Store::MySQL fulfills the storage interface of Apache::Session. Session data is stored in a MySQL database.

🗄️ SCHEMA

To use this module, you will need at least these columns in a table called 'sessions', or another table name if you provide the TableName argument:

To create this schema, you can execute this command using the mysql program:

CREATE TABLE sessions (
   id CHAR(32) not null primary key,
   a_session blob
);

If you use some other command, ensure that there is a unique index on the table's id column.

⚙️ CONFIGURATION

The module must know what datasource, username, and password to use when connecting to the database. These values can be set using the options hash (see Apache::Session documentation). The options are:

Example:

tie %hash, 'Apache::Session::MySQL', $id, {
    DataSource => 'dbi:mysql:database',
    UserName   => 'database_user',
    Password   => 'K00l',
    TableName  => 'sessions'
};

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

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

✍️ AUTHOR

This module was written by Jeffrey William Baker <jwbaker AT acm.org>

🔗 SEE ALSO

Apache::Session

Apache::Session::Store::MySQL
🚀 Quick Reference 📛 NAME 📋 SYNOPSIS 📖 DESCRIPTION 🗄️ SCHEMA ⚙️ CONFIGURATION ✍️ AUTHOR 🔗 SEE ALSO

Generated by phpman v4.10.0-7-g98e9fd5 · Markdown · JSON · MCP Author: Che Dong Under GNU General Public License
2026-09-10 06:19 @216.73.216.182
CrawledBy Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
Valid XHTML 1.0 Transitional!Valid CSS!