Thread perl timeout zur mysql: Lost connection to MySQL server during.. (12 answers)
Opened by Gast at 2004-03-10 20:53

Gast Gast
 2004-03-10 20:53
#31817 #31817
hallo,

ich habe ein "Lost connection to MySQL server during query" - problem mit active-perl 5.8.3 (dbi 1.41, dbd-mysql 2.9003), win xp prof. und mysql 4.0.18 (oder 4.1.1a).
diese fehlermeldung hängt von der bearbeitungszeit des selects des mysql-servers ab, d.h. wenn ich die db-einträge verringere, braucht der server weniger zeit zur bearbeitung und die ergebnisse werden an perl ohne probs geliefert.
wenn der mysql-server länger für die bearbeitung braucht, kappt das perl-script oder der liebe gott die connection nach ca. 30-40 sek.
die query wird vom mysql-server komplett ausgeführt (eintrag im slow query-log und im server-cache: wenn ich das perl-script nochmal starte, ist das ergebnis sofort da)

an der max_allowed_packet kanns nicht liegen, weil ich daten abhole (select) und nichts an die mysql schicke (insert...). (ich hab eh 16mb eingestellt)

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
### hauptprog.
use db_config;

my $abfrage = 'SELECT xxx limit 0,30;';
my $db_name = 'test3';

my $dbh = db_config::getDB($db_name);

my $sth = $dbh->prepare($abfrage);
$sth->execute() or die "Error in SQL-Query";
while (my @line = $sth->fetchrow()) {
print join("|",@line)."\n";
}

$sth->finish();
$dbh->disconnect();

### db_config
package db_config;

use DBI;

$DB_HOST = "127.0.0.1";
$DB_PORT = "3306";
$DB_USER = "root";
$DB_PASSWD = "";

sub getDB {
my $DB_NAME = shift;
my $DB_DSN = "DBI:mysql:$DB_NAME:$DB_HOST:$DB_PORT";
my $dbh = DBI->connect($DB_DSN, $DB_USER, $DB_PASSWD, {PrintError => 1, RaiseError => 1, AutoCommit => 0});
return $dbh;
}

1;


hat jemend eine idee, wer das timeout verursacht? mysql_connect_timeout ist es nicht.

gruß
norman

EDIT: zum ersten Mal Code-Tags in einem fremden Beitrag eingefuegt :-)\n\n

<!--EDIT|ptk|1078999439-->

View full thread perl timeout zur mysql: Lost connection to MySQL server during..