位置:海鸟网 > IT > linux/Unix >

Bugzilla + Oracle + Linux 安装笔记

== Bugzilla + Oracle + Linux 安装笔记 == 

[url=http://www.bugzilla.org/]Bugzilla 3.2今天发布,该版本增加很多新的功能,其中重要的新功能包括Oracle数据库支持. 下面介绍Bugzilla + Oracle + Linux的安装过程笔记 

,详细请参照[url=http://www.bugzilla.org/docs/3.2/en/html/installing-bugzilla.html]Bugzilla的安装文档. 

== 准备工作 == 

检查所需软件: 

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 500M 

    AUTOEXTEND ON NEXT 30M MAXSIZE UNLIMITED; 

=== 2. 创建bugzilla用户: === 

用sys 或者 system用户登陆sqlplus, 执行(创建数据库用户bugs, 密码bugs): 

CREATE USER bugs 

    IDENTIFIED BY "bugs" 

    DEFAULT TABLESPACE bugs 

    TEMPORARY TABLESPACE TEMP 

    PROFILE DEFAULT; 

    -- GRANT/REVOKE ROLE PRIVILEGES 

    GRANT CONNECT TO bugs; 

    GRANT RESOURCE TO bugs; 

    -- GRANT/REVOKE SYSTEM PRIVILEGES 

    GRANT UNLIMITED TABLESPACE TO bugs; 

    GRANT EXECUTE ON CTXSYS.CTX_DDL TO bugs; 

===  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 

== 安装Bugzilla 3.2 == 

=== 下载并解压 === 

[url=http://ftp.mozilla.org/pub/mozilla.org/webtools/bugzilla-3.2.tar.gz]下载Bugzilla3.2, [url=http://ftp.mozilla.org/pub/mozilla.org/webtools/bugzilla-3.2.tar.gz] 

cd /var/www/html/ 

wget [url=http://ftp.mozilla.org/pub/mozilla.org/webtools/bugzilla-3.2.tar.gz] 

tar zxvf bugzilla-3.2.tar.gz 

mv bugzilla-3.2 bugzilla 

=== checksetup.pl === 

接下来执行checksetup.pl 

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的机器上面必须安装[url=http://www.oracle.com/technology/software/tech/oci/instantclient/index.html]Oracle Instant Client或者Oracle Client,然后设置相应的ORACLE_HOME和LD_LIBRARY_PATH'' 

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

./checksetup.pl 

编辑localconfig文件: 

$db_driver = 'oracle'; 

$db_host = '10.182.120.189';              <-- 数据库IP 

$db_name = 'XE';                            <-- 数据库实例名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: 

=== 配置Apache === 

配置/etc/httpd/conf.d/bugzilla.conf, 加入 

     

<Directory /var/www/html/bugzilla> 

    AddHandler cgi-script .cgi 

    Options +Indexes +ExecCGI 

    DirectoryIndex index.cgi 

    AllowOverride Limit 

</Directory> 

重新启动Apache 

service httpd restart 

用管理员登陆 , 然后配置 urlbase 

安装完成! 

''说明:如果遇到类似下面的问题, 请关闭系统的selinux,然后重启系统:'' 

'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.

文章转载自网络!