【发布时间】:2011-03-12 22:36:33
【问题描述】:
我可以让 mt-check 运行,但它说没有安装 DBD::MySQL 模块。它是这样说的:
DBI (version >= 1.21)
Your server has DBI installed (version 1.52).
DBD::mysql
Your server does not have DBD::mysql installed, or DBD::mysql requires another module that is not installed. The DBD::mysql database driver is required to use MySQL Database. Please consult the installation instructions for help in installing DBD::mysql.
但是,当我运行 sudo cpan DBD:mysql 时,它说它是最新的:
CPAN: Storable loaded ok (v2.19)
Going to read /Users/.../.cpan/Metadata
Database was generated on Thu, 01 Jul 2010 04:28:19 GMT
DBD::mysql is up to date (4.014).
当我尝试运行 mt.cgi 时出现错误:
install_driver(mysql) failed: Can't locate DBD/mysql.pm in @INC...
当我检查perl -V(或sudo perl -V)时,@INC 值不包括 cpan 列出的正确安装路径。
问题是为我(用户)而不是系统安装的吗?我需要重新安装模块吗?你遇到过这种情况吗?
如果有帮助,我正在使用 Mac OS 10.5.5 和 MT 4.3.2.I
非常感谢任何帮助。
谢谢!
【问题讨论】:
-
@INC的值在sudo perl -V和perl -V之间看起来是否不同? cpan 可能已将模块安装在您无法将其视为非 root 的地方。另外,您能否以 root 身份运行 mt.cgi(在确保它不执行rm -rf之后):) ? -
首先,
@INC无论我是否使用 sudo 运行都没有什么不同。其次,我运行perl mt.cgi(检查后;-)它给了我HTML输出一个错误页面(但HTTP状态为200):Connection error: Access denied for user 'root'@'localhost' (using password: YES)我仔细检查了我的mt-config.cgi并且SQL部分是正确的.想法? -
另一个可能很重要的注释...
Going to read /Users/.../.cpan/Metadata(在 cpan 运行中)实际上是我用户的 .cpan 目录的路径(如果不清楚的话),那就是未显示在 mt-check.cgi 中的 Perl 包含路径列表中。我应该添加我的用户路径吗?还是我需要做一些事情来将包安装到默认的 Perl 包含路径之一中? -
我也尝试通过 MacPorts 安装它,但没有成功...请帮忙?
标签: mysql perl macos cpan movabletype