Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1316533
  • 博文数量: 161
  • 博客积分: 10192
  • 博客等级: 上将
  • 技术积分: 2165
  • 用 户 组: 普通用户
  • 注册时间: 2006-07-27 17:09
文章分类

全部博文(161)

文章存档

2012年(2)

2011年(13)

2010年(137)

2009年(5)

2008年(4)

我的朋友

分类: LINUX

2011-04-26 08:38:05

       -----thanks 

Bugzilla version >=3.2的新功能包括Oracle数据库支持.

检查所需软件:
Perl 5.81 及以上
Oracle v10.02.0 及以上
Apache(httpd),sendmail等

Oracle的安装配置
Oracle需要v10.02.0以上版本支持,可以是企业版,也可以是XE版,具体用哪个版本,可以根据需要来确定.
Oracle安装文档到处都有,这里就不说了,开始说Oracle的配置吧.

1. 创建Tablespace(可选):
用sys 或者 system用户登陆sqlplus, 执行:
CREATE TABLESPACE bugs    DATAFILE '/u01/oradata/bugzilla.dbf' SIZE 5000M    AUTOEXTEND ON NEXT 60M MAXSIZE UNLIMITED;
2. 创建bugzilla用户:
用sys 或者 system用户登陆sqlplus, 执行(创建数据库用户bugs, 密码bugs):

   CREATE USER bugs
   IDENTIFIED BY "bugs"
   DEFAULT TABLESPACE bugs
   TEMPORARY TABLESPACE TEMP
   PROFILE DEFAULT;

   GRANT CONNECT TO bugs;
   GRANT RESOURCE TO bugs;

   GRANT UNLIMITED TABLESPACE TO bugs;
   GRANT EXECUTE ON CTXSYS.CTX_DDL TO bugs;
3.设置字符编码,防止乱码:(bugzilla4用utf8编码,所以数据库要和它一致)
用sys登录到oracle中
    connect sys/密码 as sysdba;
开始修改编码
    shutdown immediate; 停止oracle服务以及监听。如果服务停止,这部可省略
    startup mount;
    alter system enable restricted session;
    alter system set job_queue_processes=0; 初始化设置job
    alter database open;
    alter database character set internal_use utf8; 设置编码
    shutdown immediate;
    startup;
Apache配置
配置ORACLE_HOME和LD_LIBRARY_PATH, 例如:
vi /etc/http/conf.d/bugzilla.conf
输入保存:
# Set ORACLE_HOME and LD_LIBRARY_PATH
SetEnv ORACLE_HOME /usr/lib/oracle/xe/app/oracle/product/10.2.0/server
SetEnv LD_LIBRARY_PATH /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/lib

配置/etc/httpd/conf.d/bugzilla.conf, 加入
   AddHandler cgi-script .cgi    Options +Indexes +ExecCGI    DirectoryIndex index.cgi    AllowOverride Limit

重新启动Apache

service httpd restart

汉化bugzilla:

  下载汉化补丁 
  解开 tar zxvf xxx.tar.gz
  移动  mv xxxx/template下的zh-tw目录到bugzilla/template/下。(原来的语言包默认只有EN)


安装Bugzilla 4
cd /var/www/html/
wget
tar zxvf bugzilla-4.tar.gz
mv bugzilla-4 bugzilla

cd bugzilla
./checksetup.pl

根据提示安装必须的perl模块, 在此之前你需要安装perl-CPAN

yum install perl-CPAN

Linux下面安装Bugzilla所需的perl模块,最简单的方式是利用Bugzilla提供的install-module.pl工具, 执行:

/usr/bin/perl install-module.pl --all

遇到所有提示,默认即可

安装DBD::Oracle

export ORACLE_HOME="/usr/lib/oracle/xe/app/oracle/product/10.2.0/server
export LD_LIBRARY_PATH="/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/lib"
/usr/bin/perl install-module.pl DBD::Oracle

说明: 如果Oracle数据库是在远程,则安装Bugzilla的机器上面必须安装或者Oracle Client,然后设置相应的ORACLE_HOME和LD_LIBRARY_PATH

再次执行checksetup.pl, 产生localconfig文件:

./checksetup.pl

编辑localconfig文件:

$db_driver = 'oracle';
$db_host = '172.18.125.9';                <-- 数据库IP
$db_name = 'bugs';                        <-- 数据库实例名SID
$db_user = 'bugs';                        <-- 数据库用户名
$db_pass = 'bugs'                         <-- 数据库密码

配置完localconfig之后,再次运行checksetup.pl:

./checksetup.pl

填入管理员信息:

Enter the e-mail address of the administrator: admin@kk.com
Enter the real name of the administrator: Admin
Enter a password for the administrator account:
Please retype the password to verify:
测试

用上面填写的管理员信息登陆 , 然后配置 urlbase。安装完成!

备注1:页面测试时,如果遇到类似下面的问题, 请关闭系统的selinux,然后重启系统。

或者添加apache用户到dba组(dba组是安装oracle时建立的),使httpd服务的默认用户apache有权限访问oracle用户的文件,以便使用oracle库。

'oracle' is not a valid choice for $db_driver in  localconfig: Can't load 'lib/i386-linux-thread-
 multi/auto/DBD/Oracle/Oracle.so' for module DBD::Oracle:  
libclntsh.so.10.1: cannot enable executable stack as shared object requires: Permission denied at
 /usr/lib/perl5/5.10.0/i386-linux-thread- 
multi/DynaLoader.pm line 203.
at Bugzilla/DB/Oracle.pm line 41
Compilation failed in require at Bugzilla/DB/Oracle.pm line 41.
BEGIN failed--compilation aborted at Bugzilla/DB/Oracle.pm line 41.
Compilation failed in require at (eval 30) line 3.

备注2:(bugzilla使用sha256加密)修改bugzilla帐号密码
oracle or mysql中bugzilla用户帐号表为bugs库(方案)里的profiles表。
设置某一帐户密码为123456:
update profiles set cryptpassword='b1Wv795rUC3wPafttGKfca9PBetedKIHePxhdil6VDgBrQZQNU8{SHA-256}' where userid=x;

阅读(1018) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~