This topic explains how to configure LabKey server to retrieve and display data from an Oracle database as an external data source.

Oracle JDBC Driver

LabKey Server requires the Oracle JDBC driver to connect to Oracle databases. The driver can be downloaded from the Oracle JDBC/UCP Download page. It is not redistributed with LabKey Server due to licensing restrictions, but it can be downloaded and used for free.

Download the file: ojdbc#.jar and place it in in the CATALINA_HOME/lib directory.

Configure the Oracle Data Source

Add a <Resource> element to your installation's labkey.xml configuration file. Use the template below as a general starting point, replacing the words in capitals with their appropriate values.

<Resource name="jdbc/oracleDataSource" 
auth="Container"
type="javax.sql.DataSource"
driverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:USERNAME/PASSWORD@SERVER:PORT:SID"
maxTotal="8"
maxIdle="4"
accessToUnderlyingConnectionAllowed="true"
/>

Note: The username and password have been included in the connection URL for debugging purposes. You can remove the USERNAME/PASSWORD portion from the URL and include them in their own fields, but if you do, any debug information will only have the SID name and not the actual schema name. Refer to Oracle FAQs: JDBC for other Oracle JDBC URL syntax.

Define a New Schema

Now define a new schema from the Oracle data source. For details see Set Up an External Schema

Troubleshooting

Below are steps to take if you see an error on the Oracle console (or see an error in Event Viewer -> Windows Logs -> Application) that says one of the following:

  • "ORA-19809: limit exceeded for recovery files"
  • "ORA-03113: end-of-file on communication channel"
  • "ORA-27101: shared memory realm does not exist")
Try:
  1. Update the RMAN value for "db_recovery_file_dest_size" to be a bit higher (i.e. from 16G to 20G).
  2. Restart your VM/machine.
  3. Restart start Oracle again.

Related Documents

Was this content helpful?

Log in or register an account to provide feedback


previousnext
 
expand allcollapse all