Beefy Boxes and Bandwidth Generously Provided by pair Networks
more useful options
 
PerlMonks  

Re: How do I direct DBI::mysql to a particular mysql instance

by pc88mxer (Vicar)
on Jul 18, 2008 at 21:26 UTC ( [id://698742]=note: print w/replies, xml ) Need Help??


in reply to How do I direct DBI::mysql to a particular mysql instance

When you run:
mysql -u first -p
you are accessing mysql through the Unix domain socket (i.e. /var/run/mysqld/mysqld.sock), not a TCP socket (i.e. port 3306).

Here's how to connect in each of these cases:

# connect via the Unix domain socket my $dsn = "DBI:mysql:database=$db"; my $dbh = DBI->connect($dsn, ...); # connect via a TCP socket my $dsn = "DBI:mysql:database=$db;host=localhost;port=3309"; my $dbh = DBI->connect($dsn, ...);
For more details, see the DBD::mysql documentation.

Replies are listed 'Best First'.
Re^2: How do I direct DBI::mysql to a particular mysql instance
by hazards (Initiate) on Jul 21, 2008 at 17:56 UTC
    Folks, I thank you for the in sights. I attempted the suggested fixes with the following modified code.
    #!/usr/bin/perl -w use strict; use DBI; my $port=3309; my $host = '127.0.0.1'; my $db = 'udb'; my $username = 'usr'; my $password = 'passwd'; my $dsn = "DBI:mysql:database=$db;host=$host;port=$port"; my $dbh = DBI->connect("$dsn", "$username", "$password") or die "Couldn't connect to database: ".DBI->er +rstr;
    Which is,I think, the suggested TCP socket case using the loopback address for the localhost yet in my hands I still see:
    Couldn't connect to database: Access denied for user 'usr'@'localhost' + (using password: YES)
    What to try now?

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://698742]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others learning in the Monastery: (6)
As of 2024-04-23 21:31 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found