NAME
CGI::Session::Driver::mariadb - CGI::Session driver for MariaDB database
SYNOPSIS
$s = CGI::Session->new('driver:mariadb', $sid);
$s = CGI::Session->new('driver:mariadb', $sid, { DataSource => 'dbi:MariaDB:test',
User => 'sherzodr',
Password => 'hello' });
$s = CGI::Session->new('driver:mariadb', $sid, { Handle => $dbh });
DESCRIPTION
mariadb stores session records in a MariaDB table. For details, see CGI::Session::Driver::DBI, its parent class.
It is important that the session ID column be defined as a primary key or unique:
CREATE TABLE sessions (
id CHAR(32) NOT NULL PRIMARY KEY,
a_session TEXT NOT NULL
);
To use different column names, adjust your CREATE TABLE statement accordingly, and then:
$s = CGI::Session->new('driver:mariadb', undef, {
TableName=>'session',
IdColName=>'my_id',
DataColName=>'my_data',
DataSource=>'dbi:MariaDB:project',
});
or
$s = CGI::Session->new('driver:mariadb', undef, {
TableName=>'session',
IdColName=>'my_id',
DataColName=>'my_data',
Handle=>$dbh,
});
DRIVER ARGUMENTS
mariadb driver supports all the arguments documented in CGI::Session::Driver::DBI. Like the mariadb driver, you can optionally omit the "dbi:MariaDB:" prefix:
$s = CGI::Session->new('driver:mariadb', $sid, { DataSource=>'shopping_cart' });
BACKWARDS COMPATIBILITY
Global variables like $CGI::Session::MySQL::TABLE_NAME are no longer used. Refer to the parent CGI::Session::Driver::DBI documentation for new methods.
LICENSING
For support and licensing see CGI::Session.