This site contains the documentation that is relevant to older WSO2 product versions and offerings.
For the latest WSO2 documentation, visit https://wso2.com/documentation/.
Setting up with Oracle
Follow the instructions below to set up the Oracle database.
For Oracle RAC, see Setting up with Oracle RAC
Setup Database and User
1. Create a new database. This can be done by either using the Oracle database configuration assistant (dbca) or manually. Do necessary changes in the Oracle tnsnames.ora
and listner.ora
files in order to define databases addresses for establishing connections to the newly created database. After configuring them, startup the Oracle instance.
$ sudo /etc/init.d/oracle-xe restart
2. Connect to Oracle using SQL*Plus as sysdba.
$ ./${ORACLE_HOME}/config/scripts/sqlplus.sh sysadm/password as sysdba
2.1. Connect to instance with username and password.
$ connect
3. As SYS DBA, create a database user and grant privileges to the user as shown below:
Create user USER_NAME identified by PASSWORD account unlock; grant connect to USER_NAME; grant create session, dba to USER_NAME; commit;
4. Exit from the SQL*Plus session by typing the "quit" command.
SQL> quit
Setup Configuration File
1. Edit the default database configuration defined in the master-datasources.xml
file located at $GREG_HOME/repository/conf/datasources
directory of the deployed registry instance as below. Both the database configurations in registry.xml
and user-mgt.xml
refer this data source.
Replace these settings with your own custom values:
<datasource> <name>WSO2_CARBON_DB</name> <description>The datasource used for registry and user manager</description> <jndiConfig> <name>jdbc/WSO2CarbonDB</name> </jndiConfig> <definition type="RDBMS"> <configuration> <url>jdbc:oracle:thin:@SERVER_NAME:PORT/DB_NAME</url> <username>regadmin</userName> <password>regadmin</password> <driverClassName>oracle.jdbc.driver.OracleDriver</driverClassName> <maxActive>80</maxActive> <maxWait>60000</maxWait> <minIdle>5</minIdle> <testOnBorrow>true</testOnBorrow> <validationQuery>select 1 from dual</validationQuery> <validationInterval>30000</validationInterval> </configuration> </definition> </datasource>
The database configuration options
- url - The URL of the database.
- username - The name of the database user.
- password - The password of the database user.
- driverClassName - The class name of the database driver.
- maxActive - The maximum number of active connections that can be allocated from this pool at the same time or negative for no limit.
- maxWait - The maximum number of milliseconds that the pool will wait (when there are no available connections) for a connection to be returned before throwing an exception or <= 0 to wait indefinitely.
- minIdle - The minimum number of active connections that can remain idle in the pool without extra ones being created or 0 to create none.
Tip
Default port for Oracle is 1521.
Copy JDBC Driver
Copy the Oracle JDBC libraries to $GREG_HOME/repository/components/lib
. For example, - $ORACLE_HOME/jdbc/lib/ojdbc14.jar
.
Note: Remove old database driver from $GREG_HOME/repository/components/dropins ,when you upgrade the database driver.
When using the ojdbc6.jar
with WSO2 servers there is a possibility of throwing an timezone region not found
error. To overcome this issue it is necessary to set the java property as export JAVA_OPTS="-Duser.timezone='+05:30'".
The value of this property should be the GMT difference of the country.
if it is necessary to set this property permanently, then it should be defined inside the wso2server.sh
as a new JAVA_OPT property.
Create Database Tables
Database tables can be created either manually by running scripts or automatically by using start-up parameters.
Using Scripts
Database tables can be created manually by logging in to the created database and running the following scripts in SQL*Plus:
SQL> @${GREG_HOME}/dbscripts/oracle.sql
Start the WSO2 Governance Registry.
$ ./${GREG_HOME}/bin/wso2server.sh
Using start-up Parameters
- For Windows users:
$GREG_HOME/bin/wso2server.bat -Dsetup
To create the database tables when starting the WSO2 Governance Registry for the first time.
- For Linux Users
$ ./${GREG_HOME}/bin/wso2server.sh -Dsetup