You can install a free copy of the Oracle 11g database for development purposes. Just register for the Oracle Technology Network when prompted. It's a huge download (2GB); you'll need a reasonably fast connection.
The problems began for me when I ran the installer under Windows 7. It may tell you that the system checks (RAM, disk space) fail. Ignore them if you know you've got sufficient memory and free space.
After installation, you may get another spurious warning when accessing the Oracle Database Control in the Internet Explorer web browser (default:
https://localhost:1158/em). IE says it cannot display the page. If the same URL loads fine in, say, Firefox or Chrome, then the problem is likely IE-specific. Sites with short RSA encryption keys are now blocked by Microsoft IE.
When running SQL Developer from the Application Developer sub-menu, you may have to fix several things to get it to launch:
You may need to create your own shortcut to
sqldeveloper.exe. The shortcut made by the installer (
sqldeveloper.bat) doesn't point to an existing file.
sqldeveloper.exeis in the path
sqldeveloper requires a 32-bit version of the Oracle JDK (even though it may have come bundled with a 64-bit install of the Oracle database). The SE Development kit 7 is available at http://www.oracle.com/technetwork/java/javase/downloads/. Alternatively, install JDK 1.6 instead of 1.7. I had to install the 32-bit version to get it working.
sqldeveloper.exeby RMB click on it and select "Run as Administrator" from the context menu. (You only need to run it this way until it starts up once successfully.) You'll be prompted to provide your path to java.exe. Point it to the 32-bit jdk directory, e.g.
C:\Program Files (x86)\Java\jdk1.7.0_40.
If the program still won't run, check the
sqldeveloper.conffile, which is two folders below the .exe (
product\11.2.0\dbhome_1\sqldeveloper\sqldeveloper\bin\sqldeveloper.conf). Add or change the line
"Set JavaHome", e.g. to provide the correct path:
SetJavaHome C:\Program Files (x86)\Java\jdk1.7.0_40
Once you get sqldeveloper to launch, it will nag you that only JDK up to version 1.6 is supported. Ignore it.
The last catch is knowing or remembering your login and other settings. Create new connection where name=localhost, Username=SYS, Role = SYSDBA. For SID, enter "orcl" -- or switch the radio button to "Service name" and type in the Global database name you entered during the install. If you've forgotten, this value is stored in TNSNAMES.ora.
Oracle loads a bunch of services that eat memory and won't be needed for local development. To reduce its footprint, you can try editing
INITorcl.ORA in the
oracle11g\<YOUR.NAME>\product\11.2.0\dbhome_1\database directory. I wasn’t successful in this, and found it easier just to disable the services with Windows' admin tools. I changed the Startup Type for these services using Windows Control Panel (Control Panel | System and Security | Administrative Tools | Computer Management | Services and Applications | Services). None of them are necessary when running SQL Developer:
- Oracle ORCL VSS Writer Service (Manual)
- OracleDBConsoleorcl (Manual)
- OracleJobSchedulerORCL (Disabled)
- OracleMTSRecoveryService (Manual)
- OracleOraDb11g_home1TNSListener (Manual)
- OracleServiceORCL (Manual)
This post was originally published on my other blog, https://tech.surveypoint.com