MojoX-Mysql

 view release on metacpan or  search on metacpan

lib/MojoX/Mysql/DB.pm  view on Meta::CPAN

	if(defined $config && ref($config) eq 'HASH' && %{$config}){
		if(ref($self->{'dbh'}{'master'}{$id}) eq 'DBI::db'){
			my $dbh = $self->{'dbh'}{'master'}{$id};
			return $dbh if($dbh->ping);
		}

		my $dbh = DBI->connect("DBI:mysql:".$config->{'dsn'}, $config->{'user'}, $config->{'password'}, {
			AutoCommit=>0,
			RaiseError=>0,
			PrintError=>0,
			mysql_enable_utf8=>1,
			mysql_auto_reconnect=>1,
			mysql_write_timeout=>$config->{'write_timeout'},
			mysql_read_timeout=>$config->{'read_timeout'},
		});

		if($DBI::errstr){
			$self->{'dbh'}{'master'}{$id} = undef;
			croak $DBI::errstr;
			return;
		}

lib/MojoX/Mysql/DB.pm  view on Meta::CPAN

			my $dbh = $self->{'dbh'}{'slave'}{$id};
			return $dbh if($dbh->ping);
		}

		for my $conf (@{$config}){

			my $dbh = DBI->connect("DBI:mysql:".$conf->{'dsn'}, $conf->{'user'}, $conf->{'password'}, {
				AutoCommit=>0,
				RaiseError=>0,
				PrintError=>0,
				mysql_enable_utf8=>1,
				mysql_auto_reconnect=>1,
				mysql_write_timeout=>$conf->{'write_timeout'},
				mysql_read_timeout=>$conf->{'read_timeout'},
				mysql_connect_timeout=>$conf->{'connect_timeout'},
			});

			if($DBI::errstr){
				$self->{'dbh'}{'slave'}{$id} = undef;
				next;
			}



( run in 0.288 second using v1.01-cache-2.11-cpan-00829025b61 )