代码改变世界

Ubuntu 9.10 Server (Karmic) 迁移Bugzilla

  BAsil  阅读(1801)  评论(0编辑  收藏  举报

项目组去年年底配置了两台服务器,其中的一台安装了Ubuntu 9.10 Server。由于项目组采用Bugzilla作为bug生命周期的管理,需要把Bugzilla迁移了过来。以下记录迁移过程备忘。

原服务器 Ubuntu 8.04 Desktop ,  Bugzilla 3.2.2

新服务器 Ubuntu 9.10 Server  , --

参考网上部分方案,打算采用比较稳妥的方式,形成如下思路

1 备份mysql数据库

  将数据库bugs备份到文件bugsdata.sql
    $mysqldump bugs > bugsdata.sql
    再修改bugsdata.sql,在文件头加两行
    create database if not exists bugs;
    USE bugs;

2 在已安装mysql的9.10Server上恢复数据库

   此步骤一定在第5步之前,因为Bugzilla的checksetup.pl会自动升级数据库脚本从3.2.2到3.4.4

 

3 打包Bugzilla 文件夹并恢复到Ubuntu 9.10上  (此步骤浏览时报错,忘了具体错误,比较难处理,转到步骤3)

4 下载最新Bugzilla 3.4.4, 重新编译。 至于为什么不用ubuntu自带的Bugzilla以及如何下载编译配置Bugzilla,请参见这篇博文Ubuntu 8.04 安装 Bugzilla 3.2.2

   为了防止版本文件夹的变化而修改apache虚拟目录文件,可以创建symbolic link,比如解压后的文件夹为 Bugzilla_3.4.4 可以用 ln –s Bugzilla Bugzilla_3.4.4 创建名为Bugzilla的symbolic link,在apache虚拟目录的配置中可以使用该名称,将来出现新版本只更新Bugzilla的指向即可。

5 运行 ./checksetup.pl 的时候,按照提示下载缺少的部分模块,总是有3个模块安装不上

Checking perl modules...
Checking for DateTime (v0.28) not found
Checking for DateTime-TimeZone (v0.71) not found 
Checking for Template-Toolkit (v2.22) not found

解决方法 sudo apt-get install libmysql++-dev  (参考了ubuntuforums.org里一位老兄的帖子Installing bugzilla and DateTime problem)

6 接下来就是按照提示修改Bugzilla的localconfig

$webservergroup = ‘www-data’;

# The DNS name of the host that the database server runs on.
$db_host = ‘localhost’;
# The name of the database
$db_name = ‘bugs’;

# Who we connect to the database as.

# The DNS name of the host that the database server runs on.
$db_host = ‘localhost’;
# The name of the database
$db_name = ‘bugs’;

# Who we connect to the database as.
$db_user = ‘bugs’;
$db_pass = ‘admin’;
注意其中的webservergroup 我设置为了www-data,注意这个是ubuntu的运行apache的用户组(不同于其他linux发行版的apache用户组)

7 别忘了在apache下配置该虚拟目录,ubuntu自带的apache可以直接修改的/etc/apache2/sites-enabled下面的文件加入

Alias /bugzilla “/var/www/bugzilla″
<Directory  “/var/www/bugzilla″>

Options +ExecCGI
AllowOverride Limit
DirectoryIndex index.cgi
AddHandler cgi-script .cgi
</Directory>
不过我们的服务器使用了自己下载编译的apache2,因为该服务器还做为svn的源代码管理服务器。我在ubuntu 9.10 server 下的apache在启用ssl的时候总是报undefined symbol apr_ldap_ssl_init错误,此处我怀疑可能是ubuntu9.10 server的问题,我在虚拟机ubuntu 8.04 desktop下没有出现此问题。

apache2的安装目录更改为/usr/local/apache2,在/usr/local/apache2/conf/httpd.conf中加入上述内容。

关于apache2的下载编译以及使用ssl的SVN请浏览Ubuntu 9.10 Server 配置基于SSL的Subversion

8 sudo /etc/init.d/apache2 restart  (自带的apache2)

   或者
   cd /usr/local/apache2/bin  (编译的apache2)
   sudo ./httpd –k restart

编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
点击右上角即可分享
微信分享提示