2011-02-25 47 views
1

我需要幫助搞清楚這個配置和使用mysql perl DBI。幫助使用perl dbi與mysql來查詢遠程數據庫

我的本地連接工作正常,但一旦我嘗試查詢遠程主機數據庫我收到錯誤。 我知道我的設置到遠程數據庫工程,我能做到從shell執行以下操作:

WORKS:

$ mysql -u foo-man -pmypa55w0rd --database abc -h abc123.name.locale --port 3306 -ss -e "select UUID()" 

從使用Perl DBI,本地主機工程太:

my $dbh = DBI->connect("DBI:mysql:database=test;host=localhost:port=3306;user=root"); 

但是使用perl DBI,查詢遠程數據庫,沒有運氣。

不起作用:

my $dbh = DBI->connect("DBI:mysql:database=abc;host=abc123.name.locale;port=3306;user=foo-man,password=mypa55w0rd"); 

也不使用IP,例如:

my $dbh = DBI->connect("DBI:mysql:database=abc;host=123.567.89.10;port=3306;user=foo-man,password=mypa55w0rd"); 
+2

從'$ DBI :: errstr'得到什麼錯誤信息? – Dancrumb 2011-02-25 03:46:36

回答

6

我會用

my $dbh = DBI->connect("DBI:mysql:database=abc;host=abc123.name.locale;port=3306", 
         'foo-man', 'mypa55w0rd'); 

但它可能會,如果你還工作將用戶名後的逗號更改爲分號。

+0

謝謝!它現在有效! – jdamae 2011-02-25 04:27:06