SAP HANA [1] is now supported as a database. [1] http://help.sap.com/hana_appliance/ Depends-On: Ib733610cb826d17d72defd71a9e2c5f0fc7ce154 Change-Id: I4c46ba18f95177c832472317fa6c2cdad19749ee
		
			
				
	
	
		
			260 lines
		
	
	
		
			7.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			260 lines
		
	
	
		
			7.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
[[createdb]]
 | 
						|
== Database Setup
 | 
						|
 | 
						|
During the init phase of Gerrit you will need to specify which database to use.
 | 
						|
 | 
						|
[[createdb_h2]]
 | 
						|
=== H2
 | 
						|
 | 
						|
If you choose H2, Gerrit will automatically set up the embedded H2 database as
 | 
						|
backend so no set up or configuration is necessary.
 | 
						|
 | 
						|
Using the embedded H2 database is the easiest way to get a Gerrit
 | 
						|
site up and running, making it ideal for proof of concepts or small team
 | 
						|
servers.  On the flip side, H2 is not the recommended option for large
 | 
						|
corporate installations. This is because there is no easy way to interact
 | 
						|
with the database while Gerrit is offline, it's not easy to backup the data,
 | 
						|
and it's not possible to set up H2 in a load balanced/hotswap configuration.
 | 
						|
 | 
						|
If this option interests you, you might want to consider link:install-quick.html[the quick guide].
 | 
						|
 | 
						|
[[createdb_derby]]
 | 
						|
=== Apache Derby
 | 
						|
 | 
						|
If Derby is selected, Gerrit will automatically set up the embedded Derby
 | 
						|
database as backend so no set up or configuration is necessary.
 | 
						|
 | 
						|
Currently only support for embedded mode is added. There are two other
 | 
						|
deployment options for Apache Derby that can be added later [1]:
 | 
						|
+
 | 
						|
* Derby Network Server (standalone mode)
 | 
						|
* Embedded Server (hybrid mode)
 | 
						|
+
 | 
						|
[1] http://db.apache.org/derby/papers/DerbyTut/ns_intro.html#ns
 | 
						|
 | 
						|
[[createdb_postgres]]
 | 
						|
=== PostgreSQL
 | 
						|
 | 
						|
This option is more complicated than the H2 option but is recommended
 | 
						|
for larger installations. It's the database backend with the largest userbase
 | 
						|
in the Gerrit community.
 | 
						|
 | 
						|
Create a user for the web application within Postgres, assign it a
 | 
						|
password, create a database to store the metadata, and grant the user
 | 
						|
full rights on the newly created database:
 | 
						|
 | 
						|
----
 | 
						|
  $ createuser --username=postgres -RDIElPS gerrit2
 | 
						|
  $ createdb --username=postgres -E UTF-8 -O gerrit2 reviewdb
 | 
						|
----
 | 
						|
 | 
						|
Visit PostgreSQL's link:http://www.postgresql.org/docs/9.1/interactive/index.html[documentation] for further information regarding
 | 
						|
using PostgreSQL.
 | 
						|
 | 
						|
[[createdb_mysql]]
 | 
						|
=== MySQL
 | 
						|
 | 
						|
This option is also more complicated than the H2 option. Just as with
 | 
						|
PostgreSQL it's also recommended for larger installations.
 | 
						|
 | 
						|
Create a user for the web application within the database, assign it a
 | 
						|
password, create a database, and give the newly created user full
 | 
						|
rights on it:
 | 
						|
 | 
						|
----
 | 
						|
  mysql
 | 
						|
 | 
						|
  CREATE USER 'gerrit2'@'localhost' IDENTIFIED BY 'secret';
 | 
						|
  CREATE DATABASE reviewdb;
 | 
						|
  GRANT ALL ON reviewdb.* TO 'gerrit2'@'localhost';
 | 
						|
  FLUSH PRIVILEGES;
 | 
						|
----
 | 
						|
 | 
						|
Visit MySQL's link:http://dev.mysql.com/doc/[documentation] for further
 | 
						|
information regarding using MySQL.
 | 
						|
 | 
						|
[[createdb_oracle]]
 | 
						|
=== Oracle
 | 
						|
 | 
						|
PostgreSQL or H2 is the recommended database for Gerrit Code Review.
 | 
						|
Oracle is supported for environments where running on an existing Oracle
 | 
						|
installation simplifies administrative overheads, such as database backups.
 | 
						|
 | 
						|
Create a user for the web application within sqlplus, assign it a
 | 
						|
password, and grant the user full rights on the newly created database:
 | 
						|
 | 
						|
----
 | 
						|
  SQL> create user gerrit2 identified by secret_password default tablespace users;
 | 
						|
  SQL> grant connect, resources to gerrit2;
 | 
						|
----
 | 
						|
 | 
						|
JDBC driver ojdbc6.jar must be obtained from your Oracle distribution. Gerrit
 | 
						|
initialization process tries to copy it from a known location:
 | 
						|
 | 
						|
----
 | 
						|
/u01/app/oracle/product/11.2.0/xe/jdbc/lib/ojdbc6.jar
 | 
						|
----
 | 
						|
 | 
						|
If this file can not be located at this place, then the alternative location
 | 
						|
can be provided.
 | 
						|
 | 
						|
Instance name is the Oracle SID. Sample database section in
 | 
						|
$site_path/etc/gerrit.config:
 | 
						|
 | 
						|
----
 | 
						|
[database]
 | 
						|
        type = oracle
 | 
						|
        instance = xe
 | 
						|
        hostname = localhost
 | 
						|
        username = gerrit2
 | 
						|
        port = 1521
 | 
						|
----
 | 
						|
 | 
						|
Sample database section in $site_path/etc/secure.config:
 | 
						|
 | 
						|
----
 | 
						|
[database]
 | 
						|
        password = secret_pasword
 | 
						|
----
 | 
						|
 | 
						|
[[createdb_maxdb]]
 | 
						|
=== SAP MaxDB
 | 
						|
 | 
						|
SAP MaxDB is a supported database for running Gerrit Code Review. However it is
 | 
						|
recommended only for environments where you intend to run Gerrit on an existing
 | 
						|
MaxDB installation to reduce administrative overhead.
 | 
						|
 | 
						|
In the MaxDB studio or using the SQLCLI command line interface create a user
 | 
						|
'gerrit2' with the user class 'RESOURCE' and a password <secret password>. This
 | 
						|
will also create an associated schema on the database.
 | 
						|
 | 
						|
To run Gerrit on MaxDB, you need to obtain the MaxDB JDBC driver. It can be
 | 
						|
found in your MaxDB installation at the following location:
 | 
						|
 | 
						|
- on Windows 64bit at "C:\Program Files\sdb\MaxDB\runtime\jar\sapdbc.jar"
 | 
						|
- on Linux at "/opt/sdb/MaxDB/runtime/jar/sapdbc.jar"
 | 
						|
 | 
						|
It needs to be stored in the 'lib' folder of the review site.
 | 
						|
 | 
						|
In the following sample database section it is assumed that the database name is
 | 
						|
'reviewdb' and the database is installed on localhost:
 | 
						|
 | 
						|
In $site_path/etc/gerrit.config:
 | 
						|
 | 
						|
----
 | 
						|
[database]
 | 
						|
        type = maxdb
 | 
						|
        database = reviewdb
 | 
						|
        hostname = localhost
 | 
						|
        username = gerrit2
 | 
						|
 | 
						|
----
 | 
						|
 | 
						|
In $site_path/etc/secure.config:
 | 
						|
 | 
						|
----
 | 
						|
[database]
 | 
						|
        password = <secret password>
 | 
						|
----
 | 
						|
 | 
						|
Visit SAP MaxDB's link:http://maxdb.sap.com/documentation/[documentation] for further
 | 
						|
information regarding using SAP MaxDB.
 | 
						|
 | 
						|
[[createdb_db2]]
 | 
						|
=== DB2
 | 
						|
 | 
						|
IBM DB2 is a supported database for running Gerrit Code Review. However it is
 | 
						|
recommended only for environments where you intend to run Gerrit on an existing
 | 
						|
DB2 installation to reduce administrative overhead.
 | 
						|
 | 
						|
Create a system wide user for the Gerrit application, and grant the user
 | 
						|
full rights on the newly created database:
 | 
						|
 | 
						|
----
 | 
						|
  db2 => create database gerrit
 | 
						|
  db2 => connect to gerrit
 | 
						|
  db2 => grant connect,accessctrl,dataaccess,dbadm,secadm on database to gerrit2;
 | 
						|
----
 | 
						|
 | 
						|
JDBC driver db2jcc4.jar and db2jcc_license_cu.jar must be obtained
 | 
						|
from your DB2 distribution. Gerrit initialization process tries to copy
 | 
						|
it from a known location:
 | 
						|
 | 
						|
----
 | 
						|
/opt/ibm/db2/V10.5/java/db2jcc4.jar
 | 
						|
/opt/ibm/db2/V10.5/java/db2jcc_license_cu.jar
 | 
						|
----
 | 
						|
 | 
						|
If these files cannot be located at this place, then an alternative location
 | 
						|
can be provided during init step execution.
 | 
						|
 | 
						|
Sample database section in $site_path/etc/gerrit.config:
 | 
						|
 | 
						|
----
 | 
						|
[database]
 | 
						|
        type = db2
 | 
						|
        database = gerrit
 | 
						|
        hostname = localhost
 | 
						|
        username = gerrit2
 | 
						|
        port = 50001
 | 
						|
----
 | 
						|
 | 
						|
Sample database section in $site_path/etc/secure.config:
 | 
						|
 | 
						|
----
 | 
						|
[database]
 | 
						|
        password = secret_pasword
 | 
						|
----
 | 
						|
 | 
						|
[[createdb_hana]]
 | 
						|
=== SAP HANA
 | 
						|
 | 
						|
SAP HANA is a supported database for running Gerrit Code Review. However it is
 | 
						|
recommended only for environments where you intend to run Gerrit on an existing
 | 
						|
HANA installation to reduce administrative overhead.
 | 
						|
 | 
						|
In the HANA studio or the SAP HANA Web-based Development Workbench create a user
 | 
						|
'GERRIT2' with the role 'RESTRICTED_USER_JDBC_ACCESS' and a password
 | 
						|
<secret password>. This will also create an associated schema on the database.
 | 
						|
As this user would be required to change the password upon first login you might
 | 
						|
want to to disable the password lifetime check by executing
 | 
						|
'ALTER USER GERRIT2 DISABLE PASSWORD LIFETIME'.
 | 
						|
 | 
						|
To run Gerrit on HANA, you need to obtain the HANA JDBC driver. It can be found
 | 
						|
as described
 | 
						|
link:http://help.sap.com/saphelp_hanaplatform/helpdata/en/ff/15928cf5594d78b841fbbe649f04b4/frameset.htm[here].
 | 
						|
It needs to be stored in the 'lib' folder of the review site.
 | 
						|
 | 
						|
In the following sample database section it is assumed that HANA is running on
 | 
						|
the host 'hana.host' with the instance number 00 where a schema/user GERRIT2
 | 
						|
was created:
 | 
						|
 | 
						|
In $site_path/etc/gerrit.config:
 | 
						|
 | 
						|
----
 | 
						|
[database]
 | 
						|
        type = hana
 | 
						|
        instance = 00
 | 
						|
        hostname = hana.host
 | 
						|
        username = GERRIT2
 | 
						|
 | 
						|
----
 | 
						|
 | 
						|
In $site_path/etc/secure.config:
 | 
						|
 | 
						|
----
 | 
						|
[database]
 | 
						|
        password = <secret password>
 | 
						|
----
 | 
						|
 | 
						|
Visit SAP HANA's link:http://help.sap.com/hana_appliance/[documentation] for
 | 
						|
further information regarding using SAP HANA.
 | 
						|
 | 
						|
 | 
						|
GERRIT
 | 
						|
------
 | 
						|
Part of link:index.html[Gerrit Code Review]
 | 
						|
 | 
						|
SEARCHBOX
 | 
						|
---------
 |