It’s easy to forget that many people still have not discovered SQL Developer, or are just getting started. Many of my recent posts have been on advanced topics, hidden tricks, and productivity tips.
I want to spend some time in the next few weeks helping the beginners out there.
I can’t think of a better place to start than with how to ‘install’ SQL Developer.
I’ve been telling anyone who will listen than you can get up and running with SQL Developer in under 5 minutes. That’s a pretty big claim, and I reckon I should back that up now.
Disclaimer: I have a hi-speed residential network connection that was averaging 15.93Mbps this morning. I realize many of you have connections that are both slower and faster, so keep that in mind when I make my ‘5 minute’ claim.
The Basics – Download SQL Developer
The hardest part is the first step – picking your download and waiting. If you have a 32 bit Windows machine, you’ll need to download the 32bit 1.8 JDK first.
Otherwise, if you’re on Windows 64 bit OS, you can simply download this version of SQL Developer: Windows 64-bit with JDK 8 included.
JDK? JRE? Java? What?!?
SQL Developer is a Java application. To run it requires the Java Virtual Machine – this is the ‘go box’ for java applications. If you’ve ever seen that funny icon popup in your system tray while running apps over a website, that’s probably java.
JDK – Java Development Kit. I call it the ‘Toolkit’, but it’s just a ‘Kit,’ but not THAT K.I.T.T.
The Java Runtime Environment (JRE) is a smaller and less powerful ‘go box’ for Java applications, but SQL Developer relies on some of the libraries included only in the JDK – so get the JDK!
Many versions of Java out there – 7, 8, and 9 are the most common. The name is ‘8’, but the version is ‘1.8.’ We develop, test, and support SQL Developer for 1.8. You can run Java 9, but you’re on your own for the moment. If you HAVE to use Java 6 or 7, you’ll have to grab an older version of SQL Developer, sorry.
It’s an archive, not an installer.
After you’ve downloaded SQL Developer, there’s no installer to run. Just extract the folder, then find the ‘sqldeveloper.exe’ in the top directory, and run it.
If you’ve downloaded the 64 bit windows version with the JDK bundled, you’re all set.
If not, you’ll need to tell SQL Developer where it can find it’s Java master, AKA the Java Virtual Machine. Be sure to point to the base JDK home directory. It should look something like ‘C:\Program Files\Java\jdk-9.0.1’
Once you hit OK, you’ll never have to answer this question again.
You can change this location later in the product.conf file. You can find that file in Windows here
C:\Users\jdsmith\AppData\Roaming\sqldeveloper\17.4.0 — where ‘jdsmith’ is your Windows OS username and ‘17.4.0’ is the version of SQL Developer you’re running.
If you’re on Linux or a Mac, it’ll be in a .sqldeveloper directory in $HOME.
SetJavaHome C:\Program Files\Java\jdk-9.0.1
SQL Developer will then start, and you can proceed by setting up your connection.
Before you can connect, you will need the following:
- database user account (complete with username and password)
- location of database (either via TNSNames, LDAP, or servername/IP, port, and SID/Service)
If you don’t have an account, don’t go online asking people for a ‘default.’ Find the owner of your application or database and ask them for an account. If you don’t want to involve them, then you’re looking for a backdoor and could be labeled a ‘hacker.’
Now you get to learn by doing. Many of you won’t have access to formal training, and I think that’s a real shame. If your organization provides training or compensation for taking classes – do it! Lots of free resources out there, including my blog of course.
Here’s a rundown of the official stuff from Oracle:
- OTN SQL Developer Forum – ask questions here
- 60+ video tutorials in the Oracle Learning Library (OLL)
- 10 Step Getting Started Guide
I use DBeaver becasue i can’t figure out or IF SQL Dev has a way to connect via jdbc with a custom driver. Is it possible to connect to SQL Developer? Thanks
You’ve pretty much figured out what makes us different than DBeaver.
I have a requirement. I Should be able to open sqldeveloper client new connection window from windows command prompt. Operating system is Windows 10. Please help me regarding this..
Thanks in advance
you can launch the GUI, but there’s no CLI to start/open a connection
I’m using an WIN7 64 BIT HVD (Hosted Virtual Desktop) and desperately trying to connect to a db using Oracle SQL Developer, however getting the o’l Network Adapter could not establish the connection error code 17002. Thing is i can connect using TOAD just fine and run the SQL Developer on my physical laptop just fine, and can TNSPING the database from my HVD just fine…but what in the name of “Johnny Cash” is preventing it from connecting while on HVD machine? Any help is appreciated.
You doing a tnsnames or basic connection in SQL Dev?
I’ve tried it all, but basic is preferred. had to build a TNSNAMES.ora connection to the DB, after that gets same error and it looks like it errors immediately, very strange. one last thing, i also tried to telnet that port in my case 1524 and it works just fine as well, so ruled out a firewall thing. However TOAD works just fine…weird.
you using a network name or IP address?
I’m at a loss as well, however
You say that that other program can connect…try a THICK connection in SQL Developer. Go to
Preferences > Database > Advanced
Select your Oracle Home and enable it – then try your connection. That will give you a connection like what you’d have in SQL*Plus.
Think were on to something, now it has different error. ORA12545 Connect failed because target host or object does not exist
….and now using THICK, when i use the IP address i get a ORA-12560 TNS:protocol adapter error
make sure the SID/SERVICE is right, it sounds like it thinks the db isn’t running
only get the TNS:protocol adapter error when using the IP, if i go back to the DNS name I get the ORA-12545: Connect failed because target host or object does not exist.
you might want to open an SR with My Oracle Support
I’m not sure what would be going wrong, but the jdbc driver can’t get to the database..
To me its like SQL Developer is using the wrong network adapter to get out onto the network, is there a way i can test or verify that?
there are net tracing utilities you could probably run where you can see the packets coming out of different processes, etc. – but Java is just making the networking request, we’re not saying use net adapter bad vs good
FIGURED IT OUT!
So HVD right?
In HVD our config the desktop isn’t really the desktop, its a share on the network.
move the SQLDEV folder to ProgramFiles86 or something on the REAL or in this case virtual C drive and all is well.
So that says SQLDev has to run from local drive I guess.
An error was encountered performing the requested operation:
IO Error: The Network Adapter could not establish the connection
Vendor code 17002.so,what is the solution for this…?
There’s something wrong with your network or with your connection properties.
Tq jeff for ur response.i got my connection.
Hi Jeffs, My SQL developer was working fine until one day Operations decided to reboot the It computers while I had my applications open. Now, every time I start SQL developer 4.13 it opens up find but as soon I try to select a connection or just by moving my mouse it shuts off automatically. The funny part is that it does not happen if I remote to my pc from another location; SQL Developer opens up fine. Could it be a memorey issue or a display issue? since while remoting it does not use the local display settings. Thank you!
Do you have any tips for how to resolve the error: ‘Unable to find main class. Class specified is: oracle/ide/osgi/boot/OracleIdeLauncher’. I have downloaded SQLDev 4.1.3. and JDK 1.8.0_72. I have tried it several times, I have rebooted my PC, tried to add the JDK location to my Path env variable etc. Nothing seem to help. Please know that I did initially entered an incorrect path when asked to enter the full pathname for java.exe. I have looked and cannot find product.conf that you refer to in previous posts. Any help would be appreciated.
I found the product.conf file in C:\Users\MyName\AppData\Roaming\sqldeveloper\4.1.3
My AppData folder was set to Hidden, so it didn’t initially find the file. Anyway, updating the SetJavaHome value solved my issue.
Excellent! Unfortunately Windows often doesn’t make anything easier. Sorry you had to suffer through this. Please let me know if you need any help going forward!
Nice blog, this one!
I am also one among millions of SQL Developer user. And i have been facing same issue mentioned above comments. “I/O : Network adapter could not establish connection”. I have checked and rechecked, and found everything in place in tnsnames.ora and listner.ora files.
I have searched lots of blogs, forums etc. but there is no exact solution this issue.
If you can guide me on this issue, it would be a big help.
can you ping the server the database is running on?
I got the same problem.
The database is running on the server, but is pingable.
Thanks in advance
Remove sqlnet and tnsnames from the equation. Use a basic connection.
Make sure you use an ip address in case the network name isn’t addressable/known. Make sure that server PORT (1521) is correct AND open.
And as a test – in case you think the problem is with SQL Developer itself, use SQL*Plus and see if you can connect from the same machine where you are having problems with SQL Developer.
Could able to run the SQL Developer for the first time but later when I start the SQL Developer again it throw an error “unable to instal modules “..I tried to delete the unzip folder and started working it as fresh….but still could see the same error even after that….any help will be grateful..
did you put it on a network drive or some place you don’t have write privs?
It’s located on the desktop and additionally I tried running it as an administrator…It worked very first time but not now..
I’m not a java wiz so that might be a dumb question :
Since SqlDeveloper is a java app, shouldn’t I see a java.exe (or javaw.exe) child process running along sqldeveloper64W.exe ? (as all my other java apps do)
It has to be by some jvm by itself I guess since jvisualvm.exe actually identifies sqldeveloper64W.exe pid as such (oracle.ide.osgi.boot.OracleIdeLauncher)
Can you provide some explanation (or interesting link) about the phenomenon ?
can you help me , i do not now why program no make connection
i type in connection name , user name and password hr
please help me
error : io error: network adapter could not establish the connection.
i am getting this error after downloading the sql developer. and i am not able to work on it.
please help me out
Hello Nishil. Did you solve the issue?
Good info. Lucky me I found your site by accident
(stumbleupon). I’ve saved it for later!
So i used SQLDeveloper in the last time very often and it always worked.. but since today I cant open the program..the progress bar at the beginning stuck after about 15-20% of the bar..
Then I get no error and the program get closed automatically..what could be wrong? or is there an logfile to see whats wrong?
You in Windows?
If so, go to your Application Data directory, Roaming Profiles, SQL Developer folder. Find the subfolder with the SQL Developer version number you’re using in the directory name, and try renaming or deleting it.
Thanks! That worked for me 🙂
Don’t know what was wrong but nevermind^^
I’ve installed everything and when it prompted me to select the location of the JDK file, I used a 64-bit JDK location. Evidently it only works with a 32-bit file so I downloaded the 32-bit x86 version. You said “You can change this location later in the /sqldeveloper/bin/sqldeveloper.conf file.” How do I access this file? Where is it found? I’m new to all this and can’t find that anywhere.
We support 64 bit JDK – what makes you think otherwise?
The JDK specification location depends on the version you’re running. Versions 4.0 and higher use product.conf in your $USER$ directory. Versions below that use sqldeveloper.conf in the bin directory.
THE SQL DEVELOPER SOFTWARE ON MY SYSTEM ASKED FO THE FULL PATHNAME OF THE JAVA.EXE FILE. I DOWNLOADED A JDK 6 FROM ORACLE WEBSITE AND I PUT IT THERE. IT ACCEPTED , BUT IT SHOWED AN ERROR THAT- UNABLE TO FIND THE MAIN CLASS , CLASS SPECIFIED IS =ORACLE/IDE/BOOT /LAUNCHER. CAN YOU TELL ME HOW TO AGAIN PUT A SEPARATE JDK FILE IN THE SAME PATHNAME NOW ?
WHY ARE WE YELLING?
What version of SQL Developer are you running? If version 3.x and lower, you’ll need the JDK 6. But if you’re on v4 or higher, you’ll need JDK 7.
I am still new to developer and had to reinstall it on my work computer. I am having the same issue as Bunty did. I checked your response and I’m running developer 4.0.2 and pointed it to the JDK 7 path. However I still get the same error ‘Unable to find main class. Class specified is: oracle/ide/osgi/boot/OracleIdeLauncher’
Any hints? I promise not to yell.
It kinda sounds like one or more files in the zip are missing/bad/something. Can you download it and extract it to a fresh directory?
And no need for promises. I won’t yell either, but I will remind you’ve we’ve got Java 8 and SQLDev versions 4.0.3, 4.1.0, 4.1.1, 4.1.2, and 4.1.3 that are newer, better, faster than the version you’re trying to get working.
Thank you Jeff, your website is very helpful. We considered TOAD but could not justify the cost to ourselves. I’m not 100% satisfied with Oracle SQL Developer but your website makes things better :o). PS: I believe the newest version of SQL Developer bundles the JDK
PS: Is there anyway to get SQL Developer to auto-save open files? On occasion I also get memory errors but I have been unable to successfully update the maximum memory, any suggestions?
Yes, you can increase the amount of memory available to the JVM – where you do that depends on the version of SQL Developer you’re running.
There’s a 32 bit JDK bundled available for SQL Dev v3 and lower and a 64 bit one for v4 and higher
Need help, I’ve been searching the web for the solution of “IO Error : Network Adapter could not establish the connection – Vendor code 17002” using Oracle SQL Develop 4.0.
Using below info with iSQL Plus I have no problem.
URL : http://126.96.36.199:5560/isqlplus
username : xxxx
password : xxxx
connector identifier : orcl
In the installation process, JDK ver 7 is install first followed by SQL Developer.
When running SQL Developer using below info, i have this error message
hostname : 188.8.131.52
1521 – if used, error message will be same on first sentence on top
5560 – if used, status message, Failure – test failed : string index out of range: 1238
connection type : basic
Below is my PC system spec
i7, 12gb memory
antivirus norton 360
You have set port in sqldev connection to 5560 as well?
yes, I set the port to 5560 and the error message “Failure – test Failed : string index out of range : 1238
Love the videos on your website, Jeff. What software do you use to record these videos?
Camtasia Studio 7. I use it produce the GIFs that I have embedded in my blogs posts as well. Super easy to use.
Some follow-up information for those reading Dennis’ comment. It turns out that SQL*Plus will read all upper(filenames) starting with ‘TNSNAMES.’ So if you have multiple old copies archived off as tnsnames.old1, tnsnames.old2, etc – SQL*Plus will see all of those entries.
SQL Developer has the same behavior. Since we have a TNSNames selector, you may see multiple entries of the same name – that’s SQL Developer parsing multiple TNS files. To avoid this behavior, add a _ or any other character to the beginning of your old TNSNAMES.ORA files.
The is one issue that you should point out which I ran into the other day. In the directory which was set a the location of the tnsnames.ora file I had a couple of files called for example tnsnames.sav or tnsnames.old. I had a failure to connect to databases using the TNS method in SqlDeveloper until I removed all files having any name that started with tnsnames. When asked I was told that it is a known issue but not a bug? I’m not sure why it isn’t a bug since there can exist on one tnsnames.ora file at a time but it took a bit of time to figure out what was causing the issue.
Dennis, were you working on the OTN SQL Developer Forums or did you contact support? If support, could you send me the SR details to my email, [email protected]?
I’m of the same opinion as you, but I’ll withhold judgement until I can gather all the facts 🙂
Nice slipping in the reference to Knight Rider. 🙂
One of my primary motivations for blogging, nostalgia for my favorite childhood TV programs 🙂