安装概述:
安装的步骤:
1. 安装MySQL数据库, 建立bugs数据库,建立用户
2. 安装ActivePerl程序
3. 安装bugzilla需要的perl文件
4. 安装bugzilla的配置文件,配置IIS
5. 运行checksetup.pl生成需要的配置文件。
详细步骤
1. 安装MySQL数据库:
MySQL下载地址:http://www.mysql.com,MySQL当前版本已经到5.0了,用4.1就行。
下载后,直接安装就可以了,这一步一般都不会出现问题。
为了方便对MySQL的操作,可以安装一个MySQL Administrator。
安装成功后登陆,
MySQL安装后自动建立一个root用户,密码为空。
打开cmd窗口,当前操作目录转到MySQL的安装目录的bin位置,以root用户登陆:
…\bin> mysql -u root –p
输入root的密码,如果密码为空直接回车即可。
登陆后,建立bugs数据库,这个数据库就是buzilla的数据库:
mysql>create database bugs;
给bugs数据库建立用户:
Mysql> GRANT ALL PRIVILEGES ON bugs.* TO bugs@localhost IDENTIFIED BY 'your password'
Mysql > FLUSH PRIVILEGES;
当然也可以用root这个用户
2. 安装ActivePerl
下载ActivePerl的地址:
http://downloads.activestate.com/ActivePerl/Windows/5.8/ActivePerl-5.8.7.815-MSWin32-x86-211909.zip
解压包,运行installer.bat,将perl安装到<your perl home>
3. 安装buzilla需要的Perl
下载地址:http://landfill.bugzilla.org/ppm/bugzilla-bundle.zip
解压后,然后安装这些perl
C:\>cd <your perl home>\bin
C:\<your perl home>\bin>ppm rep add bugzilla <your bugzilla-bundle home>
C:\<your perl home>\bin> ppm install GD
C:\<your perl home>\bin> ppm install DBI
C:\<your perl home>\bin> ppm install GDTextUtil
C:\<your perl home>\bin> ppm install TimeDate
C:\<your perl home>\bin> ppm install PatchReader
C:\<your perl home>\bin> ppm install GDGraph
C:\<your perl home>\bin> ppm install DBD-mysql
C:\<your perl home>\bin> ppm install Chart
C:\<your perl home>\bin> ppm install Template-Toolkit |
安装Template-Toolkit的时候中间会提示是否安装一个可选项,此时选择no,如果选择yes需要手工删除C:\WinNT\Temp下的一个目录。
4. 安装bugzilla的配置文件,配置IIS
Bugzilla的配置文件,下载地址:
http://ftp.mozilla.org/pub/mozilla.org/webtools/bugzilla-2.18.tar.gz,也可以下载2.22版本,不过,我还没有找到2.22版本的汉化
下载后解压,解压文件到<your bugzilla home\..>
1> 建立一个Web站点或一个虚拟目录,主目录指向< your bugzilla home >
2> 主目录→执行许可:选择“脚本和可执行程序”。
3> 主目录→配置
¨ 添加.pl文件映射
可执行文件输入<your perl home>\bin\ PerlIS.dll
扩展名:.pl
动作:全部
选中“脚本引擎”
¨ 添加.cgi文件映射
<your perl home> \bin\perl.exe –x<your bugzilla home> -wT "%s" %s
(如:C:\bugzilla\bin\perl.exe -xC:\bugzilla\bugzilla-2.18 -wT "%s" %s)
扩展名:.cgi
动作:全部
选中“脚本引擎”
4> 文档→启用默认文档:添加index.cgi
IIS就配好了。
注意:
如果你的OS是win2003,默认情况下,CGI程序是被禁用的。修改方法:
IIS中“web服务扩展”中把“所有未知CGI扩展”的状况置为“允许”就OK了
5. 运行checksetup.pl
运行checksetup.pl文件的方法:
¨ 可以通过IE运行checksetup.pl文件:
访问http://your-host-server:port/[virtual-dir]/checksetup.pl
¨ 也可以在cmd窗口中运行,
在cmd窗口运行这个文件,当有错误产生时能够显示出来:
当前目录位置转到<your bugzilla home>下,输入“perl checksetup.pl”
运行 checksetup.pl文件,此时checksetup.pl会检测是否安装了所需的perl模块,如果都安装了,它会在<your bugzilla home>下生成一个localconfig文件,该文件是文本格式的,并且没有扩展名。
在localconfig文件中设置数据库口令
$db_pass =’your mysql user for bugzilla’; |
创建adiminstrator用户名(email)和口令,在localconfig文件中添加:
$answer{‘ADMIN_OK’} = ‘Y’;
$answer{'ADMIN_EMAIL'} = 'liyanhui@Systop.com.cn ';
$answer{'ADMIN_PASSWORD'} = '3721';
$answer{'ADMIN_REALNAME'} = 'liyanhui'; |
重新运行checksetup.pl
此时会创建bugzilla数据表,并且为你创建一个administrator用户。如果你在cmd窗口运行checksetup.pl文件,可以按照提示的步骤建立邮箱服务器等信息。同时,如果你的bugzilla有未安装的内容,cmd窗口会提示你去怎么做。
6. 汉化bugzill
汉化包下载地址:http://sourceforge.net/projects/bugzilla-cn/
1> 解压缩之后,将cn目录复制到<your bugzilla home>\template下
2> 将所有.css文件复制到<your bugzilla home>\css下
3> 访问http://your-bugzilla-site/editparams.cgi,将第3,4选项由en改为cn
好了,bugzilla基本安装完成了。
当然,如果你工作需要,你可以可以安装TestRunner。
7. 使用MySQL时的一些异常处理
我在恢复mysql数据库后,经常会出现一些问题
¨ 恢复mysql数据库后,打开页面,访问buzlilla,在页面上会提示错误信息:
…….
Client does not support authentication protocol requested by server
……
这是因为一旦用户已经建立,必须重新设置该用户的登陆密码
方法是:mysql> set password for 'bugs'@'localhost' = OLD_PASSWORD('you pwd');
¨ 有时候在运行checksetup.pl文件后提示不能建立数据表。
出现这种错误的原因我还不知道,解决的办法是:
把bugzilla的配置文件删除,然后重新解压到<your bugzilla home>,重新运行checksetup.pl文件,根据cmd中的提示你就知道怎么做了。
¨ 在使用bugzilla的过程中, mysql也会偶然出错,比如下面的情况,
提示信息如下:
……
DBD::mysql::db do failed: Can't open file: 'logincookies.MYI'. (errno:
145) at Bugzilla/Auth/CGI.pm line 154
Bugzilla::Auth::CGI::login('Bugzilla::Auth::CGI', 2) called at
Bugzilla.pm line 74
Bugzilla::login('Bugzilla', 2) called at C:/Bugzilla/query.cgi line 61
……
这说明指出的这个表'logincookies.MYI'坏了,需要你修复
修复语句:REPAIR TABLE logincookies
1>配置IIS服务碰到的问题:
依据上面的过程配置完了,还是不能访问bugzilla,怎么回事呢?
原来iis服务器的“WEB服务器扩展”设置没设好,需要把“所有未知CGI扩展”设置为开启状态,“有关PERL”的设置设为开启状态
这个问题解决完了,就可以访问BUGZILLA
PS:安装BUGZILLA老是会有两个MODULE安装不上,没有关系,继续前进吧