Continue [Section 6~15] 6. Install a Mail Transfer Agent
[root@centos DBD-Oracle-1.24]# rpm -qa|grep sendmail
sendmail-8.13.1-3.3.el4
Sendmail is the original Unix MTA,and it has been installed.
7. Installing Bugzilla on mod_perl
You have two options for running Bugzilla under Apache - mod_cgi (the default) and mod_perl (new in Bugzilla 2.23)
In the process of installing mod_perl, it exist much trouble,I choose mod_cgi.
[@more@]8. Create localconfig file using checksetup.pl
# /var/www/html/bugzilla-3.2.5/checksetup.pl
Reading ./localconfig...
This version of Bugzilla contains some variables that you may want to
change and adapt to your local settings. Please edit the file
./localconfig and rerun checksetup.pl.
The following variables are new to ./localconfig since you last ran
checksetup.pl: create_htaccess, webservergroup, db_driver, db_host, db_name, db_user, db_pass, db_port, db_sock, db_check, index_html, cvsbin, interdiffbin, diffpath, site_wide_secret
9. Modify the localconfig file.
Load this file in your editor. The only two values you need to change are $db_driver and $db_pass, respectively the
type of the database and the password for the user you will create for your database. Pick a strong password (for
simplicity, it should not contain single quote characters) and put it here. $db_driver can be either ’mysql’, ’Pg’ or
’oracle’.
Note: In Oracle, $db_name should actually be the SID name of your database
10. Database Server
10.1 Create tablespace
sys@SHENZHEN> create tablespace bugs
2 datafile '/u01/oradata/shenzhen/bugs01.dbf' size 50M
3 autoextend on next 5M maxsize unlimited;
Tablespace created.
10.2 Create a User to Oracle
SQL>
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;
10.3 Configure the Web Server
If you use Apache, append these lines to httpd.conf to set ORACLE_HOME and LD_LIBRARY_PATH.
For instance:
# vi /etc/httpd/conf/httpd.conf
SetEnv ORACLE_HOME /u01/oracle/
SetEnv LD_LIBRARY_PATH /u01/oracle/lib/
When this is done, restart your web server.
10.4 Create DB tables and other objects with checksetup.pl
# /var/www/html/bugzilla-3.2.5/checksetup.pl
There was an error connecting to Oracle:
ERROR OCIEnvNlsCreate. Check ORACLE_HOME (Linux) env var or PATH (Windows) and or NLS settings, permissions, etc.
Then start LISTENER and make sure $db_name in localconfig is same as SID (case-sensitive).
# /var/www/html/bugzilla-3.2.5/checksetup.pl
The problem resoved,and then input adminstrator information.
11. Bugzilla using Apache
# vi /etc/httpd/conf/httpd.conf
# Add following contents for Setting Apache httpd with mod_cgi
AddHandler cgi-script .cgi
Options +Indexes +ExecCGI
DirectoryIndex index.cgi
AllowOverride Limit
12. Login Bugzilla
Open http://192.168.0.160/bugzilla/ in Brower,but it show error as follows:
Forbidden
You don't have permission to access /bugzilla/ on this server.
Apache/2.0.52 (CentOS) Server at 192.168.0.160 Port 80
--Solution:
# chmod -R 755 bugzilla
Login successfully!
13.Create a new bugzilla project
13.1 When you use Mysql database
# cd /var/www/html
# cp -r bugzilla-3.2.5 projecta
# cd projecta
# ./checksetup.pl (generate localconfig file)
# vi localconfig (modify $db_name to projecta)
# ./checksetup.pl
Then new db for projecta begin to create automatically.
Open http://192.168.0.160/projecta/
13.2 When you use Oracle database
1> Create a new tablesapce and user for new project.
sys@SHENZHEN> create tablespace projectb
datafile '/u01/oradata/shenzhen/projectb.dbf' size 50M
autoextend on next 5M maxsize unlimited;
sys@SHENZHEN>
CREATE USER projectb
IDENTIFIED BY bugs
DEFAULT TABLESPACE projectb
TEMPORARY TABLESPACE TEMP
PROFILE DEFAULT;
-- GRANT/REVOKE ROLE PRIVILEGES
GRANT CONNECT TO projectb;
GRANT RESOURCE TO projectb;
-- GRANT/REVOKE SYSTEM PRIVILEGES
GRANT UNLIMITED TABLESPACE TO projectb;
GRANT EXECUTE ON CTXSYS.CTX_DDL TO projectb;
2> Copy a new project and edit localconfig
# cd /var/www/html
# cp -r bugzilla-3.2.5 projectb
# cd projectb
# ./checksetup.pl (generate localconfig file)
# vi localconfig
make sure $db_driver = 'oracle';$db_name = 'SHENZHEN'; $db_user = 'projectb';$db_pass = 'bugs';
Then # ./checksetup.pl
The new db for projecta begin to create automatically.
Open http://192.168.0.160/projectb/
Actually, Maybe it will show some trouble when you create a new project with oracle DB.
Some isses and solution show as follows:
1> Issue 1
Run checksetup.pl with root user when you want to create database,it show error as follows:
----------------------
There was an error connecting to Oracle:
ERROR OCIEnvNlsCreate. Check ORACLE_HOME (Linux) env var or PATH (Windows) and or NLS settings, permissions, etc.
This might have several reasons:
* Oracle is not running.
* Oracle is running, but there is a problem either in the
server configuration or the database access rights. Read the Bugzilla
Guide in the doc directory. The section about database configuration
should help.
* Your password for the 'projecta' user, specified in $db_pass, is
incorrect, in './localconfig'.
* There is a subtle problem with Perl, DBI, or Oracle. Make
sure all settings in './localconfig' are correct. If all else fails, set
'$db_check' to 0.
-----------------------
--Solution :
# export ORACLE_HOME=/u01/oracle
If it exist the same error information, maybe you can set the new bugzilla project directory permissions(rwx).
2> Issue 2
Run checksetup.pl again,it show error as follows:
--------------------
DBD::Oracle::db do failed: ORA-06550: line 1, column 7:
PLS-00201: identifier 'CTX_DDL' must be declared
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored (DBD ERROR: error possibly near indicator at char 6 in 'BEGIN CTX_DDL.CREATE_PREFERENCE
('BZ_LEX', 'WORLD_LEXER'); END;') [for Statement "BEGIN CTX_DDL.CREATE_PREFERENCE
('BZ_LEX', 'WORLD_LEXER'); END;"] at Bugzilla/DB/Oracle.pm line 345
Bugzilla::DB::Oracle::do('undef', 'BEGIN CTX_DDL.CREATE_PREFERENCEx{a}('BZ...') called at Bugzilla/DB/Oracle.pm line 495
Bugzilla::DB::Oracle::bz_setup_database('Bugzilla::DB::Oracle=HASH(0xad33820)') called at ./checksetup.pl line 144
-------------------
--solution:
Maybe the executing privilege on 'CTX_DDL' is missing,so you can grant to:
SQL> GRANT EXECUTE ON CTXSYS.CTX_DDL TO PROJECTB;
3> Isse 3
Open http://192.168.0.160/projectb/, it display all files list of /var/www/html/projectb/ on brower.
--Solution:
# vi /etc/httpd/conf/httpd.conf
Change
To
Then
# service httpd restart
14. Upgrading to New Release using tarball
bash$ cd /var/www/html
bash$ wget http://ftp.mozilla.org/pub/mozilla.org/webtools/bugzilla-3.7.2.tar.gz
bash$ tar xzvf bugzilla-3.7.2.tar.gz
bugzilla-3.7.2/
bugzilla-3.7.2/.cvsignore
(Output truncated)
bash$ cd bugzilla-3.7.2
bash$ cp ../bugzilla/localconfig* .
bash$ cp -r ../bugzilla/data .
bash$ cd ..
bash$ mv bugzilla bugzilla.old
bash$ mv bugzilla-3.7.2 bugzilla
bash$ cd /var/www/html/bugzilla
bash$ ./checksetup.pl
It will show some perl modules need to install in new version.
Then you need install one by one.
After install all required perl module,you can run again:
bash$ ./checksetup.pl
It will upgrade database.
There are two methods for perl module installation : Build.PL, Makefile.PL
For Build.PL
# perl Build.PL
# ./Build
# ./Build test
# ./Build install
Also you can install specified location:
perl Build.PL --install_base=/my/dir
If this installation need some lib,but these libs don't exist in default perl library, for example in /my/perl/lib,
you can execute below first:
# export PERL5LIB=/my/perl/lib
In the older module,it only has Makefile.pl,and it execute as follows:
# perl Makefile.PL PREFIX=/my/dir
# make
# make test
# make install
15. Issues and Troubleshooting
1> The Home page warning
The local XML file './data/bugzilla-update.xml' cannot be created. Please make sure the web server can write in this directory and that you can access the web. If you are behind a proxy, set the proxy_url parameter correctly.
Cause: The parameter "upgrade_notification" set to "latest_stable_release",but the bugzilla linking internet deny.
Solution : Make the bugzilla server link internet Or "upgrade_notification" set to "disabled".
Reference :
http://www.bugzilla.org
http://www.thegeekstuff.com/2010/05/install-bugzilla-on-linux/
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/12472709/viewspace-1036195/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/12472709/viewspace-1036195/