Forum Webscript.Ru

Программирование => Perl => Тема начата: Forza от 16 Октября 2004, 12:22:20

Название: дисконнект от MySQL
Отправлено: Forza от 16 Октября 2004, 12:22:20
Работаю на Перле с MySQL через модуль DBI.
Подключаюсь через:my $dbh = DBI->connect ("DBI:mysql:host=$host_name;database=$db_name;port=$dbport", $login, $pass, {PrintError => 0, RaiseError => 1}));Отключаюсь через:$dbh->disconnect();У хостера часто при очередном подключении возникает ошибка типа
DBI connect(\'host=localhost;database=DBname;port=3306\', \'login\',...) failed: Host \'ip-address\' is not allowed to connect to this MySQL server at /usr/local/lib/perl5/site_perl/5.005/Apache/Session/Lock/MySQL.pm line 36

В службе поддержки написали, что это из-за ограничения одновременных подключений к БД. Но я перерыл весь скрипт, и уверен, что закрываю каждое подключение так, как написал выше. Этого достаточно? Если да, то в чём могут быть грабли?  :(
Можно ли как-нибудь самому узнать список подключенных к базе скриптов?
Название: дисконнект от MySQL
Отправлено: glebushka от 16 Октября 2004, 17:18:06
Forza, если ты работаешь в обычном цги-режиме, то закрывать соединение не обяхательно. Оно само закроется вместе с окончанием выполнения скрипта. А проблема у тебя в том, что одновременно запускается несколько копий твоего скрипта (по одной на каждого посетителя).
Название: дисконнект от MySQL
Отправлено: Forza от 16 Октября 2004, 18:02:56
glebushka, я очень сомневаюсь в том, что было именно столько копий (мне сказали, что ограничение 50), т.к. сайт вообще не раскручивался пока, а я сидел и один его отлаживал.
Название: дисконнект от MySQL
Отправлено: Green Kakadu от 17 Октября 2004, 02:18:02
похоже проблема в хостере :) у него же сейчас много проблем, ломают все кому не лень (Forza у тебя же valuehost?) и с мускулем похоже проблемы
Название: дисконнект от MySQL
Отправлено: Forza от 17 Октября 2004, 12:09:50
Green Kakadu, да, у нас valuehost. Но не я его выбирал.
В принципе, через 3 месяца, если такое будет продолжаться, мы можем от него уйти. Посоветуете, к кому? Или этот вопрос надо в другой форум выносить? ;)