欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

安装用于操作MySQL的Perl模块

程序员文章站 2022-06-14 22:33:44
...

在我使用Webmin(version 1.480)管理FreeBSD主机上的MySQL数据库服务器时出现:ldquo;警告:您的系统未安装Perl 模块 DBI 和 DBD

在我使用Webmin(version 1.480)管理FreeBSD主机上的MySQL数据库服务器时出现:

“警告:您的系统未安装Perl 模块 DBI 和 DBD::mysql,Webmin将无法可靠地访问您的MySQL数据库。点击此处 立刻安装该它们。”

而“点击此处”安装时浏览器无法打开此链接,访问到MySQL手册上的相关资料在其它类Unix系统中安装MySQL,,提示“如果安装了DBI和DBD::mysql Perl模块,可以使用bin/mysql_setpermission脚本增加新账户。”

再查找“Perl安装注意事项”获取到相关的信息是:
“MySQL分发版不包含Perl支持。可以从获得Unix需要的模块,或在Windows中使用ActiveState ppm程序。
如果你想要运行MySQL基准脚本,必须安装Perl支持。
如果你想要安装Perl支持,需要的文件能从的CPAN (Comprehensive Perl Archive Network)获得。”

CPAN是个巨大的Perl软件收藏库,其收集大量有用的Perl模块及其相关文档。
在Unix中安装Perl模块最简单的方法是使用CPAN模块。

shell> perl -MCPAN -e shell
cpan> install DBI
cpan> install DBD::mysql

DBD::mysql安装运行许多测试。测试中使用默认用户名和密码尝试连接本地MySQL服务器。(默认用户名是Unix中的登录名和Windows中的ODBC。默认密码“没有密码。”) 如果你不能通过这些值连接服务器 (例如,如果你的账户有密码),测试失败。可以使用force install DBD::mysql忽略失败的测试。

按要求操作,安装DBI时提示:
“Warning (usually harmless): ‘YAML’ not installed, will not store persistent state”

YAML是以数据为*的标记语言,其使用ASCII码(如连字符、问号、冒号、逗号等)构造数据块(标量值或哈希码)。和XML相同,YAML也是一种机器可识别语言,并能和多种脚本语言相结合,其中一种便是Perl。

考虑到YAML也可以当做是一个Perl模块,因此我尝试运行:
cpan> install YAML
成功安装后,刷新Webmin页面,只提示 DBD::mysql 没有安装了,此时 Webmin 已经可以执行DBD::mysql模块的安装了:

正在下载 (794409 字节) ..
收到 1024 字节 (0 %)
收到 79872 字节 (10 %)
收到 159744 字节 (20 %)
收到 238592 字节 (30 %)

但我还是采用手册上提供的方式安装 DBD::mysql

接着安装DBD::mysql时出现错误提示:

Running make install

make test had returned bad status, won’t install without force
Failed during this command:
CAPTTOFU/DBD-mysql-4.012.tar.gz : make_test NO

于是按要求执行:
cpan> force install DBD::mysql
成功完成安装

补记:MySQL基准套件

通过基准用户可以了解一个给定的SQL实现在哪方面执行得很好或很糟糕。这个基准是单线程的,它可以测量操作执行的最小时间。

要使用基准套件,必须满足下面的要求:

基准套件随MySQL源码分发提供。可以从下载分发,或者使用当前的开发源码树

基准脚本用Perl编写而成,使用Perl DBI模块访问数据库服务器,因此必须安装DBI。还需要为每个待测试的服务器提供服务器专用DBD驱动程序。例如,要测试MySQL、PostgreSQL和DB2,必须安装DBD::mysql、DBD::Pg和DBD::DB2模块。

安装用于操作MySQL的Perl模块