- Written by: ilmarkerm
- Category: Blog entry
- Published: Sql Developer Mac Os Java Installer
- Sql Developer Mac Os Java 6
- Sql Developer Mac Os Java 8
- Sql Server Developer Download
- Sql Mac Os
Since I started a new job I also wanted to try out MacBook as my new laptop. I’ve never been a Mac user, but there seems to be a large group of people who think Macs are the best, so I needed to find out the goodness of Macs myself 🙂 A quick tip: Don’t upgrade to Yosemite if you laptop is bound to Active Directory.
To conclude Oracle SQL Developer works on Mac OS operating system and can be easily downloaded using the below download link according to Freeware license. The download file is only 181.7 MB MB in size. Oracle SQL Developer was filed under the Tools category and was reviewed in softlookup.com and receive 5/5 Score. Download and install Oracle SQL developer – MAC OS X – All Go to and download the Oracle SQL Developer 3.2.2 (3.2.20.09.87) for MAC. Do not forget to accept the license agreement. Locate the tar file in the Downloads folder and launch the install.
One part of setting up my new laptop was also setting up SQL Developer WITH Oracle Driver, because a year or two ago I rolled out radius authentication for all users who need to access the production databases directly and radius (and other non-default-password authentication schemes) do not work with thin JDBC driver. Being new to Macworld and not finding any guides for this task online, it was quite a struggle in the beginning. Here I’m trying to share my experiences if anybody else find themselves in the similar situation. If you find any mistakes here, please let me know – I’m new to the world of MacOS 🙂
Installing Oracle SQL Developer To interact with an Oracle Database Server as a developer, you will need to use the Oracle SQL Developer software. This software is available free of charge from Oracle for Windows, Macintosh and Linux operating systems. Oracle SQL Developer requires the Java Development Kit (JDK) to run. SQL Developer: Install and Configure for Mac SQL Developer can be used to create queries that can be used to retrieve data from the Data Warehouse. The preferred method for using SQL Developer is through the AppsToGo application. This method requires no configuration. Now that you have explored the basics, you are ready to see how you can make your app better with SQL Server. In this module we will show you a simple example of Columnstore Indexes and how they can improve data processing speeds. Columnstore Indexes can achieve up to 100x better performance on analytical workloads and up to 10x better data compression than traditional rowstore indexes.
Jan Karremans just today published a similar article about Mac and Instant client, but the goal of my blog post is to get SQL Developer connected through Instant Client.
JDK
First you need Java installed, I installed 64-bit JDK8, but it would be better to install 64-bit JDK7, since SQL Developer 4.0 is not supported on JDK8.
SQL Developer
When I’m writing this, SQL Developer 4.1 is in Early Adopter release and 4.0 is in production. I installed SQL Developer 4.0.3.
Oracle Instant Client
There is another reason to choose SQL Developer 4.0 over 4.1 – 4.1 requires version 12.1 of the Oracle Client and that is not yet released for MacOS. SQL Developer 4.0 requires Oracle Client 11.2.0.3 and that is available for MacOS. I downloaded Instant Client 11.2.0.3 (64-bit – since I installed 64-bit JDK): instantclient-basic-macos.x64-11.2.0.3.0.zip and instantclient-sqlplus-macos.x64-11.2.0.3.0.zip to be precise. I unzipped both these files under /opt so my Instant Client installation directory is /opt/instantclient_11_2. After unzipping, Instant Client installation instructions require creating the following symlinks:
Configuring SQL Developer
Open SQL Developer, open Preferences and go to Database > Advanced. Configure Oracle Client paths and check Use Oracle Client and Use OCI/Thick driver boxes. Here is the sample screenshot from my settings.
When you press the Configure button to set the Oracle client path, there is also a button to Test if the Client was loaded correctly. Currently this test should fail.Setting the environment variables
We need to set two environment variables: DYLD_LIBRARY_PATH to make sure applications can find and load the instant client libraries and TNS_ADMIN so instant client could find sqlnet.ora and tnsnames.ora files. In my case sqlnet.ora is essential, since I need to use Radius authentication.
First I added these environment variables to ~/.profile:
After restarting terminal and verifying that these environment variables are indeed set, execute SQL Developer app directly from terminal by executing open /Applications/SQLDeveloper.app/.
Open preferences and press the Oracle Client Test button again, now the test should succeed and SQL Developer is connected through Instant Client.
All good! Great success! Guess again… Close SQL Developer and launch it from Docker/Launchpad and you will see the Oracle Client test failing again. This is because the environment variables under ~/.profile or ~/.bash_profile are loaded only inside Terminal.Setting environment variables on login
This seems to be the most complex part of this story since it seems to change with every MacOS release. The method that is working for me under Yosemite (and in no way am I declaring that it is the best method, I am a Mac newbie after all), is this:
Open application Script Editor and paste the following AppleScript there:
Yes, it is also necessary to set TNS_ADMIN, since setting the TNS admin directory path under SQL Developer preferences does not work if you need to use specific settings in sqlnet.ora, for example authentication.
Save the script and in the save dialog set File format: Application. And finally System settings -> Users & Groups -> Login items press + sign and select the application you just saved. Now, log out from MacOS and log back in. Now SQL Developer should work with Instant Client even when you launch it from Launchpad.
I got this method from a Stackoverflow thread.
RADIUS authentication in SQL Developer on MacOS
24 Feb 2017 →
There’s an updated, simpler version of this post that you’ll want to use for current versions of SQL Developer.
This post will walk you through configuring SQL Developer to perform RADIUS authentication on MacOS.I periodically need to do this to connect to databases that require multi-factor authentication (MFA) and Istruggle with it every time. More than anything, this is just yet another entry in my Oracle Survival Guide to helpfuture-me waste less time. Hopefully it helps others too!
A note on versions
Version matters here. While SQL Developer will let you point to anyinstant client you like, it’ll secretly be expecting a specific version that dependson which version of SQL Developer you’re using. If you don’t point it to that exactversion of Instant Client, things won’t work—and it won’t be clear why.
As of the writing of this post, the latest versions areSQL Developer 4.2.0andInstant Client 12.1.0.2. That’s what I’ll use in this guide.
Download these resources directly from Oracle. The Homebrew packages available strip out the
.jar
files whichconfuses SQL Developer.1. Install instantclient
Download instantclient 12.1.0.2 from Oracle.You’ll only need the basic package. Unzip this package and place it in an accessible location.I install my instant client in
~/lib/instantclient_12_1
. You can install yourswherever you like.Oracle delivers this library to you in a broken state. Your instantclient contains a dynamic library called
libclntsh.dylib.12.1
,but every bit of software you’ll want to use will be looking forlibclntsh.dylib
.cd
into your instantclient directory andln -s libclntsh.dylib.12.1 libclntsh.dylib
to un-broken it.Sql Developer Mac Os Java Installer
2. sqlnet.ora
The OCI driver properties can be configured via a special file called
sqlnet.ora
. The propertywe’re interested in is SQLNET.AUTHENTICATION_SERVICES.Create a
sqlnet.ora
file and place it in a directory you’ll reference later asTNS_ADMIN
. Make suresqlnet.ora
file has an entry forradius
:3. Mangle the java.library.path property
Modern MacOSes—version 10.11 (El Capitan) and newer—have a feature called System Integrity Protection (SIP)which ignores the
DYLD_LIBRARY_PATH
environment variable. This is how the instantclient pathis typically revealed to SQL Developer. SQL Developer still looks at this environment variable even though wecan no longer use it. It’s simply not an option for setting this path.Instead we can clobber the
java.library.path
via a not-so-invasive configuration file,~/.sqldeveloper/4.2.0/sqldeveloper.conf
.Create this file and setjava.library.path
to your instantclient path:4. Set the TNS_ADMIN path for GUI applications
You must set the TNS_ADMIN environment variable to make this work. Note that this needs to be set inthe GUI environment via
launchctl
—simply setting the environment variablein a terminal will not work. Unfortunately, values set vialaunchctl
don’t persist between sessions(if you logout or restart, the value is lost).In order to set this value upon start, create a
~/Library/LaunchAgents/oracle.plist
file that looks like this (replace the path with your own):Note that
TNS_ADMIN
should point to a directory—not a file.You’ll need to logout or restart for this change to become active.
4. Configure SQL Developer to use OCI
Now, fire up SQL Developer. Navigate to Oracle SQL Developer > Preferences and choose Database > Advanced:
Check the Use Oracle Client and Use OCI/Thick driver checkboxes.
Sql Developer Mac Os Java 6
Then, click Configure and enter the location of your instantclient:
Sql Developer Mac Os Java 8
Don’t worry about clicking the Test button here. Its output is not useful (failures here do not necessarilyindicate a broken configuration). Even when everything is working this test fails—ignore it.
5. Verify
Sql Server Developer Download
In SQL Developer, go to Oracle SQL Developer > About Oracle SQL Developer. Click on the Properties taband search for the
sqldeveloper.oci.available
property. If the value istrue
, everything is set up correctly.You should now be able to authenticate using RADIUS!References
Please enable JavaScript to view the comments powered by Disqus.comments powered bySql Mac Os
Disqus