Follow the below instructions to set up the remote Derby database.The following sections describe how to replace the default H2 databases with a remote Derby database:
Table of Contents | ||||
---|---|---|---|---|
|
...
hidden | true |
---|
...
Include Page | border:1 |
---|---|
location | top |
type | flat |
separator | pipe |
Preparing the Derby Database
1. Use the wget
command to download and save Apache Derby to your computer.
2. Install Apache Derby on your computer using instructions given at http://db.apache.org/derby/manuals.
3. Go to the <derby-installation directory>/bin
directory and run the Derby network server start script. Usually, it is named startNetworkServer
.
Setup Configuration Files
1. Edit the default database configuration defined in the master-datasources.xml
file located at $PRODUCT_HOME/repository/conf/datasources
directory as below. Both the database configurations in registry.xml
and user-mgt.xml
refer this data source.
Info | ||
---|---|---|
| ||
Replace the following settings with your own custom values: |
Code Block | ||
---|---|---|
| ||
<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:derby://localhost:1527/db;create=true</url>
<userName>regadmin</userName>
<password>regadmin</password>
<driverClassName>org.apache.derby.jdbc.ClientDriver</driverClassName>
<maxActive>80</maxActive>
<maxWait>60000</maxWait>
<minIdle>5</minIdle>
<testOnBorrow>true</testOnBorrow>
<validationQuery>SELECT 1</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.
Info | ||
---|---|---|
| ||
In contrast to the embedded Derby, in the remote registry, you will set the database driver name (the |
Setup Drivers
Copy derby.jar
, derbyclient.jar
and derbynet.jar
from $DERBY_HOME/lib
in to $PRODUCT_HOME/repository/components/extensions
directory (to the class path of the WSO2 BPS web application).
Create Database
Automatic Database Creation
1. The first time you start the server, run it with the -Dsetup option so that it will create the Derby database.
- For Windows:
Code Block |
---|
wso2server.bat -Dsetup
|
- For Linux:
Code Block |
---|
wso2server.sh -Dsetup
|
2. The WSO2 BPS is configured to run using a remote Apache Derby database.
Manual Database Creation
1. Run the ij
tool located in the <derby-installation directory>/bin
directory.
2. Create the database and connect to it using the following command inside the ij
prompt:
Info | ||
---|---|---|
| ||
Replace the database file path, user name, and password in the below command to suit your requirements. |
Code Block |
---|
connect 'jdbc:derby://localhost:1527/db;user=regadmin;password=regadmin;create=true'; |
3. Exit from the ij
tool by typing the exit command.
Code Block |
---|
exit; |
4. Log in to the ij
tool with the username and password you just used to create the database.
Code Block |
---|
connect 'jdbc:derby://localhost:1527/db' user 'regadmin' password 'regadmin'; |
5. Run the Derby scripts for both the registry and user manager (embedded) databases, provided with the WSO2 BPS, using the following command:
Code Block |
---|
run 'PRODUCT_HOME/dbscripts/derby.sql'; |
6. Restart the server. Now WSO2 BPS is running using a remote Apache Derby database.
|
Changing the BPS database
The topics above show how to change the WSO2_CARBON_DB
, which is used to store registry and user manager information. If you changed the BPS database that comes by default, the instructions are the same. In summary:
Add the datasource to the
master-datasources.xml
file. Change its elements with your custom values.Create the database tables using the following scripts:
For the BPS database Use
<PRODUCT_HOME>/dbscripts/bps/derby.sql