首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使perl DBI中的mysql_read_default_group工作

问如何使perl DBI中的mysql_read_default_group工作
EN

Stack Overflow用户
提问于 2016-06-28 07:10:30
回答 1查看 1.3K关注 0票数 0

我正在尝试使用my.ini文件作为配置连接mysql。

下面是我的Perl代码:

代码语言:javascript
复制
use DBI;

my $dsn = "DBI:mysql:umls;mysql_read_default_group=client;";

my $dbh = DBI->connect($dsn);

下面是my.ini文件:

代码语言:javascript
复制
...

[client]

host=localhost

user=root

password=mypassword

database=umls

port=3306

....

根据正式文档(http://search.cpan.org/~capttofu/DBD-mysql-4.033/lib/DBD/mysql.pm),DBI将使用来自my.ini的信息连接mysql,但是它给我的错误是:错误。

我认为问题在于DBI从未成功地读取my.ini,因此它使用ODBC@localhost作为默认值。

如果我只是在connect()中指定用户名和密码,那么连接就可以工作了。有人能帮我找出为什么'mysql_read_default_group=client'不起作用吗?我会非常感激的!谢谢

EN

回答 1

Stack Overflow用户

发布于 2016-06-28 08:22:27

我读了一些文件给answar,您的问题是,我发现您需要在不同的部分提供用户名和密码,您还需要提到文件名。喜欢

代码语言:javascript
复制
[myapp]
host=localhost

user=root

password=mypassword

database=umls

port=3306

然后

代码语言:javascript
复制
my $dbh = DBI->connect("DBI:mysql:test"
    . ";mysql_read_default_file=$ENV{HOME}/.my.cnf"
    .';mysql_read_default_group=myapp',
    undef, 
    undef
   ) or die "something went wrong ($DBI::errstr)";

希望这能帮到你。

参考资料:id=519356

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38069370

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档