Using the ICS Connectivity Agent with an On-Premises Database


In this third article about the Connectivity Agent we deep-dive into the details. We learn how to use the ICS Connectivity Agent in combination with an on-premises database. For more information about the architecture and installation of the agent I recommend to read these two articles first. This article continuous where the previous article about the installation ended.

Taking the Agent for a test drive

Now that the Connectivity Agent is installed, registered and running we can use the Agent to create connections to our on-premises applications and create integration on top of these applications.

Preparing the connection to the on-premises database

Now that we know the Agent is running we can make a connection to the on-premises database. For this example I use the HR sample schema that is part of my database installation. Navigate to the connections page of ICS and click on the “Create new Connection” button. My instance is running the latest 16.1.3 version. The “Create Connection” dialog now at lot nicer and user friendlier.

Create DB Connection Dialog
Select the Database adapter to create a connection your database instance. the connection is named OnPremisesHRDB which creates the associated identifier ONPREMISESHRDB.

Now it’s time to configure the adapter connection. The configuration consists of the Connection Properties, the Security and the Agent Group to use. The Agent Group is required so you can’t connect to a database without it.

The connection properties includes the host ip/name of the database server. The port number the instance is running on and the SID and Service Name. The configuration needs both and not one or the other.

Configure DB Settings

Connection Settings

The credentials properties includes the username and password of the database schema user to use.

Configure Credentials

Security Credentials

The Agent group settings holds the selected agent group to connect to when using this connection.

Configure Agent Group

Select Agent Group

After configuring the database settings we need to test the connection. Click on the test button on the top-right corner of the page.

Connection saved successful

Connection saved successful


In preparation of my upcoming book about “Implementing Oracle Integration Cloud Service” the further content of this blog is redacted. If you like where this blog is going I can recommend reading the book when finished around October 2016.

packt pre-order

About Author

Robert is a integration developer at heart and one of the expertise leads on Integration, Blockchain and IoT at AMIS. He is an respected author, speaker at (international) conferences and is a frequent blogger on the AMIS Technology blog, the Oracle Technology Network, and participates in OTN ArchBeat Podcasts. Robert is an member of the board of the Dutch Oracle User Group (nlOUG) and also organizes meetups.In 2017, Robert was named Oracle Developer Champion, but also hold the Oracle ACE title, for his contributions to the community. He is co-author of the first Oracle PaaS book published, which was published in January 2017. His fascination for technology had led to the research of Blockchain and is currently writing a book called Blockchain across Oracle.


  1. Do you have any tuning recommendations to solve performance issues? I am running a self administered OIC instance (one node) that uses an on premise connectivity agent to access data in a MySQL, SQL Server, and DB2 database. The connectivity agent resides on a RHEL 7 server in Rackspace. The MySQL database does too (a different server), the SQL Server DB is on a Windows server in our data center, and the DB2 is on an AS400 server in our data center. I have several integrations that pull from these databases and other restful services and uses the response to populate various PCS web forms. I’ve noticed that the integration, ran by themselves, take about 5 seconds on average. This is slow but manageable. However when connected to a PCS form they error out 50% of the time. I’m not sure where to begin troubleshooting this.

  2. Can we use the Same agent which is installed in the One On premise Application to communicate other on premise applications using the same agent.