DBD-mysql 已安装,但仍然出现错误“install_driver(mysql) failed: Can't locate DBD/mysql.pm in @INC”

Posted

技术标签:

【中文标题】DBD-mysql 已安装,但仍然出现错误“install_driver(mysql) failed: Can\'t locate DBD/mysql.pm in @INC”【英文标题】:DBD-mysql installed ,but still error "install_driver(mysql) failed: Can't locate DBD/mysql.pm in @INC"DBD-mysql 已安装,但仍然出现错误“install_driver(mysql) failed: Can't locate DBD/mysql.pm in @INC” 【发布时间】:2013-06-13 05:36:21 【问题描述】:

安装信息:

使用安装在 /usr/local/lib/perl5/site_perl/5.8.9/x86_64-linux/auto/DBI/ 中的 DBI 1.608(对于 x86_64-linux 上的 perl 5.008009)

错误信息:

[root@datacenterETL DBD-mysql-4.020]# perl ../testConnect.pl install_driver(mysql) 失败:在@INC 中找不到 DBD/mysql.pm(@INC 包含:/usr/local/lib/perl5/5.8.9/x86_64-linux /usr/local/lib/perl5/5.8. 9 /usr/local/lib/perl5/site_perl/5.8.9/x86_64-linux /usr/local/lib/perl5/site_perl/5.8.9 .) 在(eval 3)第 3 行。

可能DBD::mysql Perl 模块尚未完全安装,或者“mysql”的大小写不正确。

【问题讨论】:

【参考方案1】:

看起来您使用的是 Linux。在这种情况下,您可能会发现安装模块的预打包版本更容易。

在 Red Hat 衍生产品上尝试 yum install perl-DBD-mysql;在 Debian 衍生产品上尝试 apt-get install libdbd-mysql-perl

【讨论】:

非常感谢您,yum 为我的 CentOS 5.x 机器工作。 在 ubuntu 16.04 下也为我工作,从 cpan 安装没有。谢谢! 使用 debian 对我不起作用,安装模块后是否需要在 apache 配置中启用它?或者是其他东西?已经重启了 apache @vishal-mote:无需启用或重启 Apache。但是仅仅说它“没有用”并没有给我任何有用的信息。你到底看到(或没看到)什么?可能值得将此作为一个单独的问题提出。 能否请您在下面的链接中查看我的问题,这将非常有帮助***.com/questions/54813743/…【参考方案2】:

也许 DBD::mysql perl 模块还没有完全安装

...所以安装它。

cpan DBD::mysql

或者由于您无法访问互联网,

perl Makefile.PL
make
make test
make install

你需要先安装 MySQL 的开发头文件,按照INSTALL

【讨论】:

perl Makefile.PL --mysql_config=/usr/bin/mysql_config @user2492829,那是什么? 所以使用我链接的文件概要中描述的四个命令过程。 不,这不会安装任何东西。这只会生成您将用于安装模块的Makefile 正如我所提到的,这些命令列在我链接的文件的概要中。我什至已经将它们添加到我的答案中。【参考方案3】:

DBD::mysql 错误相关的任何错误尚未完全安装。请以超级用户权限运行以下代码。

apt-get install libdbd-mysql-perl

【讨论】:

【参考方案4】:

由于无法评论(还),我想为 Mac 用户添加一些内容。 我必须添加 --force 命令以正确安装所有内容,因为我没有本地 mySQL 安装来通过测试。 /usr/bin/cpanm --force DBD::mysql 为我工作。 (Mac OS 10.9.2、Perl 5.12.4)

【讨论】:

盲目使用--force很可笑!【参考方案5】:

我已经在我的 mac OSX 10.8.5 上尝试过 perl -MCPAN -e shell,但这没有用。

我试过sudo perl -MCPAN ...,但也没有用。我更改了我的 ~.bash_profile 以包含

LD_RUN_PATH=/usr/local/mysql-5.6.13-osx10.7-x86_64/lib export LD_RUN_PATH 
LD_LIBRARY_PATH=/usr/local/mysql-5.6.13-osx10.7-x86_64/lib export LD_LIBRARY_PATH 

行,我又试了-MCPAN,有没有sudo,但这也没有用。

我阅读了一些帖子,并尝试在 -MCPAN 命令行中使用“get Bundle::DBD::mysql”来下载它并使用 Makefile 进行安装。然后,我进入~./cpan/build目录,做了一个Makefile,但是make命令不起作用。我用我刚刚在mysql中配置的--testuser--testpassword尝试了Makefile。我进入了./cpan/bundle 的自述文件中告知的站点https://discussions.apple.com/thread/3932531?start=0&tstart=0&fb_source=message,但我已经安装了xCode 的所有命令行工具,但对我也不起作用。

为什么不做sudo perl -MCPAN -e shell并强制安装Bundle::DBD::mysql?这很好,我得到了安装。

【讨论】:

以上是关于DBD-mysql 已安装,但仍然出现错误“install_driver(mysql) failed: Can't locate DBD/mysql.pm in @INC”的主要内容,如果未能解决你的问题,请参考以下文章

oracle数据库安装过程中出现的错误:[INS-35075] 已存在具有指定标识符的数据库实例,神马情况,在线等急

休眠 - 方言已配置但仍然出现错误

AngularJs - 模块已定义但仍然出现“不可用”错误

所有证书和配置工作已完成,iTunes 连接已配置但仍然出现错误

试图让红移用户访问 IAM 角色,受信任的实体列表已更新,但仍然出现相同的错误

phpmyadmin 出现奇怪的错误,安装成功但仍然无法正常工作