Skip to Main Content

SQL Developer

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Analyzing SQLDev connections in listener log

EdStevensSep 9 2016 — edited Sep 11 2016

Oracle 11.2.0.4 SE-One 64-bit

Oracle Linux 5

My real goal is to get a better understanding of some entries in my listener log.  But after some initial reading I am using SQLDev to generate the activity and have come to the point of asking a few questions.  Hopefully the answers as regards SQL Dev will give me some insight into other jdbc apps.

In trying to analyze the listener log to determine who/what/hwere of the clients, I get a fair amount of "host=_jdbc_ "  (instead of a host name or ip address), and "program=null" (or simply 'program=") Since the listener log reports "host" in both the 'connect' and the 'address' fields, I was able to track some of these back to my own desktop.  In those, some reported

(CONNECT_DATA=(CID=(PROGRAM=SQL Developer)(HOST=__jdbc__)(USER=estevens)

While others reported

(CONNECT_DATA=(CID=(PROGRAM=null)(HOST=__jdbc__)(USER=null))

The first was easy enough (up to a point) but the second was a real mystery.  The only jdbc program I ever use to connect to that database is SQL Dev.  And in the first sample, it was clearly identified as such.  So what what was the second?

So I set up this test. While running 'tail -f listener.log | grep jdbc' . . .

Connect with a SQL Dev connection defined as connection type = basic.  That resulted in

09-SEP-2016 10:46:09 * (CONNECT_DATA=(CID=(PROGRAM=SQL Developer)(HOST=__jdbc__)(USER=estevens))(SERVICE_NAME=mydb1)(CID=(PROGRAM=null)(HOST=__jdbc__)(USER=null))) * (ADDRESS=(PROTOCOL=tcp)(HOST=172.**.**.12)(PORT=54190)) * establish * mydb1 * 0

Connect with a SQL Dev connection defined as connection type = tns  That resulted in

09-SEP-2016 10:46:09 * (CONNECT_DATA=(CID=(PROGRAM=SQL Developer)(HOST=__jdbc__)(USER=estevens))(SERVICE_NAME=mydb1)(CID=(PROGRAM=null)(HOST=__jdbc__)(USER=null))) * (ADDRESS=(PROTOCOL=tcp)(HOST=172.**.**.12)(PORT=54190)) * establish * mydb1 * 0

09-SEP-2016 10:47:32 * (CONNECT_DATA=(CID=(PROGRAM=SQL Developer)(HOST=__jdbc__)(USER=estevens))(SERVICE_NAME=mydb1)) * (ADDRESS=(PROTOCOL=tcp)(HOST=172.**.**.12)(PORT=54196)) * establish * mydb1 * 0

Notice the difference after '(SERVICE_NAME=mydb1) ....

Next, thinking there might be some sort of connection pooling going on, I started another instance of SQL Dev.  Didn't even try to make a connection.  Just started it, and got the following:

09-SEP-2016 10:50:25 * (CONNECT_DATA=(CID=(PROGRAM=null)(HOST=__jdbc__)(USER=null))(SERVICE_NAME=mydb1)(CID=(PROGRAM=null)(HOST=__jdbc__)(USER=null))) * (ADDRESS=(PROTOCOL=tcp)(HOST=172.**.**.12)(PORT=54204)) * establish * mydb1 * 0

09-SEP-2016 10:50:26 * (CONNECT_DATA=(CID=(PROGRAM=null)(HOST=__jdbc__)(USER=null))(SERVICE_NAME=mydb1)(CID=(PROGRAM=null)(HOST=__jdbc__)(USER=null))) * (ADDRESS=(PROTOCOL=tcp)(HOST=172.**.**.12)(PORT=54207)) * establish * mydb1 * 0

09-SEP-2016 10:50:28 * (CONNECT_DATA=(CID=(PROGRAM=null)(HOST=__jdbc__)(USER=null))(SERVICE_NAME=mydb2)(CID=(PROGRAM=null)(HOST=__jdbc__)(USER=null))) * (ADDRESS=(PROTOCOL=tcp)(HOST=172.**.**.12)(PORT=54217)) * establish * mydb2 * 0

Two connections to my original db, and even more surprising, a connection to another db on that server.

So, what's going on here?  How am I to interpret and understand this?

This post has been answered by thatJeffSmith-Oracle on Sep 9 2016
Jump to Answer
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Oct 9 2016
Added on Sep 9 2016
7 comments
2,293 views