Thak you very much!!!
So, if I understood clearly, I have to never disconnect.
But doesn't it mean that i will leave an opened connection
to MySql when Apache is stopped or my application crashes?
My application is just one of the many on the ISP where I am hosted.
Or I am $dbh->ping-ing the same connection?
Thanks!!!
--- In [EMAIL PROTECTED], Josh Chamas <[EMAIL PROTECTED]> wrote:
> k_berov wrote:
> > Hi all.
> > Could anybody tell me how to setup and handle persistent connections
> > using DBI::mysql?
> > I am not allowed to use Apache::DBI.
> > I tried:
> >
> > sub Application_OnStart{
> > $dbh = DBI->connect(
> > "DBI:mysql:database=mydatabase","me","mypassword",
> > {
> > PrintError => 1, # warn( ) on errors
> > RaiseError => 0, # don't die on error
> > AutoCommit => 1, # commit executes immediately
> > }
> >
> > )|| sub{$DBI::errstr;undef $dbh};
> > }
> >
>
> Use Script_OnStart, which gets run each script request, since you need
> the database connection initilized per process. A simple method
might look like:
>
> use vars qw($dbh);
> sub Script_OnStart {
> unless($dbh && eval { $dbh->ping }) {
> $dbh = DBI->connect(...);
> }
> }
>
> >
> > Where to put
> >
> > $Server->RegisterCleanup(sub{if($dbh){$dbh->disconnect} });
> > if the server is restarted or killed
> >
>
> Well, if you want the connect to be "persistent", then don't do
> this anywhere. But if you want the connection disconnected each
> request, then you can do this just after the unless{} block above
> in the Script_OnStart, but then you can get rid of the unless block
> altogether, and just have the DBI->connect part since you are not
> doing persistent connections.
>
> > Is there a standart way
> > or som tweaking?
> >
>
> I would say that using Apache::DBI is standard, but this is fine too.
>
> Regards,
>
> Josh
>
> ________________________________________________________________________
> Josh Chamas, Founder | NodeWorks - http://www.nodeworks.com
> Chamas Enterprises Inc. | NodeWorks Directory - http://dir.nodeworks.com
> http://www.chamas.com | Apache::ASP - http://www.apache-asp.org
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]