下一步,再次运行checksetup.pl脚本,这次不带任何参数。运行后会在当前目录中生成一个localconfig文件,我们需要对该文件进行编辑,修改几个参数,主要是访问数据库的用户名、密码什么的,还有一个webservergroup参数也很重要,我们等会还要修改 httpd.conf文件让httpd也以这个用户组运行才行,否则没有权限访问这个目录,如下图:
到了这一步,我们要开始配置数据库了,进入我们的数据库目录,运行
./bin/mysqld_safe --user=mysql &
启动数据库服务器,然后使用mysql客户端链接到服务器,执行以下命令:
Grant all privileges . bugs.* to bugs@localhost identified by 'bugs888':
这个命令的作用是在数据库中创建bugs用户,bugs数据库,并赋予bugs用户在bugs数据库上的所有权限。
然后,再次运行Bugzilla目录中的checksetup.pl脚本,理论上讲,这次应该在数据库中创建Schema了,然而,却出现如下错误:
很显然,这个错误是说我们还要安装DBD::mysql模块,经过前面的介绍,安装模块本来应该是很简单的事了,但是这个DBD::mysql却折磨了我很久。总体来说,原因有两个:
1、该模块新的版本为4.005,但是却只支持MySQL 4.×版的数据库。这一点不用怀疑了,经过我多次编译和安装已经证实了,只有指定MySQL 4的包含文件和库文件,该模块才能安装成功。
2、该模块需要DBI的新版本,否则,算安装成功后,运行的时候还是提示mysql.so模块运行错误,错误原因为符号DBIc_TRACE_LEVEL没有定义。
我解决问题的过程是这样的,下载MySQL 4.1版,我依然下载的是non rpm的版本,下载下来后直接解压缩,然后运行./.s/mysql_install_db脚本进行初时化。然后到/usr/mysql目录,运行./bin/mysqladmin shutdown -u root -p停止MySQL 5服务器的运行,再到/usr/mysql4目录,使用./bin/mysqld_safe --user=mysql &启动服务器。
下载新的DBI模块,编译安装,这一点不再罗嗦。
下载DBD::mysql模块,编译安装,安装的过程中需要指定参数,如果不指定,则需要调用mysql_config脚本来进行检测,因此,我采取的方法是将/usr/mysql4/bin加入到PATH变量,如下图:
然后再依次运行
make
make install
可以了,后进入Bugzilla目录,再运行checksetup.pl脚本,终于安装成功。
下一步,是让Bugzilla到httpd中运行了,首先,我们先把bugzilla转移到下面的目录
/var/www/bugzilla-2.20.5
然后,编辑/usr/httpd/conf/httpd.conf文件,如下图:
下一步,进入/usr/httpd目录,运行./bin/apachectl -k start 启动httpd服务器。
后进行汉化工作,解压缩我们下载的汉化包,按照里面的说明操作即可。下面是访问Bugzilla的一个截图: