http://www.perlmonks.org?node_id=366505


in reply to max_allowed_packet

Here is a simple recipe to get the value of "max_allowed_packet".

my $dbh = DBI->connect('dbi:mysql:dbname', 'user', 'pwd') or die "$DBI::errstr\n"; my (undef, $max_allowed_packet) = $dbh->selectrow_array( qq{show variables LIKE ? }, undef, "max_allowed_packet" ) ; printf "max_allowed_packet => %.2f MB\n", $max_allowed_packet / (1024 +*1024);
Sample output:
max_allowed_packet => 3.00 MB

SHOW VARIABLES returns a 2-column dataset, with a label in the first column and a value in the second one. Thus you need to get the second column with the value you need.

Check DBI Recipes for more on idioms, and Handling huge BLOB fields with DBI and MySQL for a sample program that checks max_allowed_packet to do something practical.

 _  _ _  _  
(_|| | |(_|><
 _|