I accidentally blogged this…twice. Here’s the other take. This happens more often than I care to admit, sorry.

Forgive the inelegant post title – but it gets to the point, and I reckon it might be closer to what folks will be Googling.

I get questions from time to time around getting SQL Developer to load or respond quicker.

Here’s the advice/tips I generally lead with:

Look and Feel

You can tell SQL Developer to use a custom ‘look and feel’ that we ship with the product called ‘Oracle,’ or you can say, just let the Operating System take care of that.

The OS look and feel is ‘cheaper.’ It could be A LOT cheaper.

If you're on Windows, it will say Windows.
If you’re on Windows, it will say Windows.

I personally prefer the Oracle look and feel on my Mac, and it runs fine with NO performance problems. My Macbook Air is from 2013, has an Intel i5 processor, with 8 GB of RAM and a 500GB SSD.

Some of you have newer, better Macs, and this preference has helped you. So give it a shot.

Unused Features

Most of you will probably not be working on 3rd party RDBMS migrations to Oracle. Data Miner is a popular feature, but again, many of you aren’t using it today.

You can disable these features. It means there will be less files to open, less code to load, less stuff in the UI to worry about.

Tools  > Features. Uncheck stuff.
Tools > Features. Uncheck stuff.

Don’t go crazy here. Some of the features might include things you don’t think you use, that you actually use. But, you can always turn them back on as necessary.

Close Stuff When You’re Done

I’m mostly talking about data grids. If you query something, and then query something else, and … N -> you’ll eventually end up with several dozen tabs open. This CAN take both client and server resources. Close things when you’re done looking at them. Same goes for documents/object editors as well.

Tweaking the JVM

This is not recommended for folks that don’t know what they’re doing. But, you can give Java more memory. You can tell Java to take more memory right away. You can tell Java to handle garbage collection differently. There are many dozens of JVM flags you can set, that will impact the way SQL Developer runs and operates. You make these changes in the product.conf file.

In your user home directory...
In your user home directory…

In Windows, this will be in the AppData directory.

I would try these things, in this exact order. Try the easy things first, then worry about the JVM. Also, use a newer version of Java.

Two last things…

1. If you set your SQL History limit to something really high, it will eventually maybe cause your start-time to increase. If you set it to say, 30,000, at some point, you’ll be asking SQL Developer to find 30,000 XML files, open them, and read their contents into memory. You ask, you get. Adjust as necessary.

2. For folks running SQL Developer on Citrix or via Remote Desktop, try tuning down the graphic settings – lower resolutions/DPI type things. I’ve heard from users that this can help with the response time as well in terms of the UI drawing/reacting to mouse-clicks, etc.


I'm a Master Product Manager at Oracle for Oracle SQL Developer. My mission is to help you and your company be more efficient with our database tools.


  1. Hi Jeff,
    I tried all the tweaks mentioned here on a Win7-64bit with sqldeveloper 64-bit and native jdk in Version 17.2.
    Everything works well and very fast, but one particular usecase is extremely slow:

    Directly after startup sqldeveloper:
    1. connect to DB and go to / Scheduler / DBMS Jobs
    2. Open first out of my 50 db-jobs. ==> Tab with “Details” opens.

    Up to this point, everything is amazing fast!

    Now click on “All Your Jobs”… ==> Now waiting about 45 secs until grid is opened. (Slow but acceptable).

    On my screen not all jobs are shown at once, so trying to scroll. But there is no reaction for next 20 seconds each. Even if I try to scroll back to what I’ve seen previously it takes again 20 secs.
    It feels like hanging.

    I’ve seen this behavior also on my previous machine with Win7-32bit and Sqldeveloper Version 4.2.0 and much less memory. Now after HW-upgrade and recent version I have the same situation.
    During hanging I don’t see any significant CPU usage or increasing memory usage.
    Currently I have i5-CPU with 8GB, 4,7GB used. CPU load is below 10% all the time.

    My drastically increased JVM-Parameters (in product.conf):
    Add64VMOption -Xmx1800m
    Add64VMOption -Xms1100m

    Look and Feel from Oracle to Windows doesn’t help!

    Any ideas?

    • thatjeffsmith

      almost sounds more like a SQL issue, query is bottle-necking the screen for 45 seconds

      view > log > statements – do you see a query there taking a long time to run?

    • There are no long running queries seen.
      I’ve opened the connected SQL-Worksheet and executed simple “select * From dual”.
      Resonse: some ms.
      Query is seen in “Statements” tab.

      Then clicked tab of “All Your Jobs” again and I have to wait again ~13 secs until screen appears.
      Meanwhile no additional statement seen in “Statements” tab.

      Clicking back to SQL-Worksheet is responding immediately. Click back to jobs needs again ~13 secs
      and again no new sql

      For me it sounds not as a question of SQL

    • thatjeffsmith

      Probably not. I don’t have any DBMS_JOBS to play around with. You might want to open an SR with MOS. Obviously a query is running, else where would the data be coming from, but I believe you that it’s not a sql issue, we’re probably caching that data, which we don’t normally do. Can you send me a screenshot of your ‘all jobs’ screen – the one that is hanging?

  2. Hi Jeff,

    Is there a way to remove, for example, the DBA option in View –> DBA permanently? We are trying to standardise our ‘installation’ that is pushed out to users. I understand that the actual stuff that can be done is controlled by database privs / roles, but we just want to cut down things they think they should be doing…



    • thatjeffsmith

      Tools > Features, uncheck stuff. If you disable the DBA, it will be removed from the View menu.

  3. Aside from running in 64-bit OS, throwing a SSD at it really helped with the response time. The UI changes nor disabling the features helped much in terms of improving load-time on a SSD.

    • thatjeffsmith

      The UI/LAF stuff seems to help more for Mac users. SSD is something every program will enjoy. Theoretically disabling features shouldn’t help at all since we don’t load those jars until they’re actually used in the product, but but but – one of these things invariably help just about every user that has performance issues on their machine with SQLDev.

      Thanks for sharing your experience.

  4. I just downloaded and installed the latest version, made the tweeks suggested, and not it starts up perfectly.

  5. Hm, there are only “Metal” and “Oracle” look and feel styles in Linux; no ohter option. Ist that because of some general Java settings?
    Other Java-based applications (e.g. Netbeans) offer some os-based look-and-feel settings.

    • Oh, not to forget – I’m running Linux 🙂

    • thatjeffsmith

      There are problems with the GTK or NIX native look and feels with the JDev framework…thankfully 96% of our users are on Windows and Macs, and even for most of them, SQL Developer runs just fine with the Oracle LAF

    • Yes, so far, I haven’t experienced any slowdown that could be related to UI itself.
      On the other hand, I rather use the non-native LAF with other tools, because they look awfull with my GTK setup.

    • thatjeffsmith

      Yup, I run the Oracle LAF with SQL Dev on both my Mac and work Windows machine. I just think they look better.

Write A Comment