CGI::Session::Driver::mysql - CGI::Session driver for MySQL database
$s = new CGI::Session( "driver:mysql", $sid); $s = new CGI::Session( "driver:mysql", $sid, { DataSource => 'dbi:mysql:test', User => 'sherzodr', Password => 'hello' }); $s = new CGI::Session( "driver:mysql", $sid, { Handle => $dbh } );
mysql stores session records in a MySQL table. For details see CGI::Session::Driver::DBI, its parent class.
It's especially important for the MySQL driver that the session ID column be defined as a primary key, or at least "unique", like this:
CREATE TABLE sessions ( id CHAR(32) NOT NULL PRIMARY KEY, a_session TEXT NOT NULL );
mysql driver supports all the arguments documented in CGI::Session::Driver::DBI. In addition, DataSource argument can optionally leave leading "dbi:mysql:" string out:
$s = new CGI::Session( "driver:mysql", $sid, {DataSource=>'shopping_cart'}); # is the same as: $s = new CGI::Session( "driver:mysql", $sid, {DataSource=>'dbi:mysql:shopping_cart'});
For backwards compatibility, you can also set the table like this before calling new(). However, it is not recommended because it can cause conflicts in a persistent environment.
new()
$CGI::Session::MySQL::TABLE_NAME = 'my_sessions';
For support and licensing see CGI::Session.
To install CGI::Session, copy and paste the appropriate command in to your terminal.
cpanm
cpanm CGI::Session
CPAN shell
perl -MCPAN -e shell install CGI::Session
For more information on module installation, please visit the detailed CPAN module installation guide.