【问题标题】:help using perl dbi with mysql to query a remote database帮助使用 perl dbi 和 mysql 来查询远程数据库
【发布时间】:2011-02-25 03:41:42
【问题描述】:

我需要帮助弄清楚这个配置和 mysql perl DBI 的使用。

我的本​​地连接工作正常,但是一旦我尝试查询远程主机数据库,我就会出错。 我知道我对远程数据库的设置工作正常,因为我可以从 shell 执行以下操作:

作品:

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

通过使用 perl DBI,localhost 也可以工作:

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");

【问题讨论】:

  • 你从$DBI::errstr得到什么错误信息?

标签: mysql perl


【解决方案1】:

我会用

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

但如果您将用户名后面的逗号更改为分号,它可能也会起作用。

【讨论】:

    猜你喜欢
    • 2016-06-04
    • 1970-01-01
    • 2011-10-06
    • 2011-07-06
    • 2021-10-05
    • 2011-11-07
    • 2011-07-19
    • 2011-04-28
    • 1970-01-01
    相关资源
    最近更新 更多