Oracle on Windows, Revisited
April 8, 2009
This article revisits a series written around five years ago regarding running an Oracle database on Windows. There have been quite a few changes, which you may not see or know about unless you have actively pursued staying abreast of this technology area. One aspect that has not changed is Oracle Corporations commitment to making the RDBMS not only run, but also run well, on the Windows platform.
Looking at the Oracle Technology Network site, find the Technologies link on the left frame or side of the page. There you will see a list of some of the more prominent technologies Oracle is associated with but not all of them unless you drill down a bit more. Clicking either of the TECHNOLOGIES or Technologies A-Z links takes you to a page showing all of what Oracle calls Technology Centers. Windows Server System is not a main page technology link, but neither are some other fairly common items such as migration and XML.
The Windows Server System Center page surfaces a wealth of information regarding our topic of interest. The updated date at the top of the page isnt necessarily accurate as the last date before April 6, 2009 (as of this writing) was more than a year ago, but Oracle OpenWorld presentations from just a few months prior were included on the page. From a tip or learning perspective, what are some of the more relevant topics, links, or focus areas? Ill assume youre not a .NET developer, but if you are, theres help for you too. From an Oracle DBAs perspective, architecture, performance, best practices, and Key Technologies (on the right side of the Center page) are some of the most useful.
The architecture white papers provide a good explanation of how and where memory on Windows is used with respect to running an Oracle instance as a process. You may have heard bits and pieces about some versions of Windows being limited to 4GB of RAM (or even 2GB, for that matter). This is true, but at the same time not entirely accurate. In one context, you are limited to 2GB, but can acquire 50% more and go to 3GB (by modifying a Windows ini file), but in another, parts of Oracle can extend beyond that limit. Roughly put, the bulk of your instance (SGA and otherwise) runs under the 3GB limit, but data buffers can extend or make use of the higher physical RAM limit of 4GB. This reaching out beyond the hard limit technology is known as Address Windowing Extensions (AWE). The bottom line is that AWE can extend Oracles use of memory to 64GB.
In the past five years, another architecture improvement across all of computing includes more and more use of 64-bit OS platforms. Oracle on Windows is a recipient of better support and integration in this regard. In fact, there are places where Oracle recommends you do not use 32-bit OS. The portability of moving Oracle on a 32-bit version of Windows to a 64-bit version (including the Oracle software being 64-bit) is quite simple and is essentially the same as changing the word size.
It goes without saying (but it has to be said anyway) that we want the database to perform well (or be performant, given that this term will be a real word with enough usage). Performance and adherence to best practices go hand-in-hand. The Windows Server System Center is an excellent resource for learning about what Oracle Corporation has already solved (i.e., what you should do to get the best results of your software and hardware investments).
Networking, file systems (and yes, works well with RAC), and OS parameters are the solutions, but you also need tools to see the what. The management console snap-ins have been around for quite a while, but you need more OS-specific tools and an awareness of what to look for.
One of the fundamental differences between Windows and UNIX is that of threads versus processes. Even if you dont plan on using Oracle on Windows, it is worth your while to install Process Explorer, freely available at Microsofts TechNet site (similar to OTN). However, if using Windows, youve probably run across a situation where the de-installation of Oracle (the removal of all files) is blocked by some process having a lock on a file (and it happens outside of Oracle too). Who or what is locking a file? Process Explorer reveals this bit of information.
The Windows OS has some of its performance measured or recorded by counters, so you will need to become familiar with some of these as they relate to Oracle. Just as UNIX can show disk usage or IO, so can Windows. Client connections can also be observed, counted, and measured, as an example of common problem areas for performance.
In this regard, what better way to learn than from Oracle? The company is committed to being a strong competitor in the databases that run on Windows arena, and if you read a few of the white papers, the point that Oracle Corporation was the first company to offer a major league RDBMS on Windows (as in we did this before Microsoft came up SQL Server or Sybase) wont be hard to miss.
Best practices include using a variety of Windows-specific tools and utilities, monitoring connections, applying CPU tuning, listener setup, networking settings (sqlnet & tnsnames), type of server to use (dedicated versus shared), and file system settings. Even better, a reference breaks these down to 32 and 64-bit environments.
The point of highlighting this part of the Center is that users frequently struggle to find data connectors. These connectors facilitate data transfer or exchange outside of Oracle to within, and vice versa. Whether the connector is based on ODBC, OLE, or something else specific within .NET, the link here can be useful. Two items not included are MDAC and Java class files for connecting non-Oracle products to Oracle. A link to the jar files needed to connect BI Publisher and SQL Server would a prime candidate for inclusion at the Center page.
One of the better consolidated one-stop shopping links at the Center site is the free access to presentations at last years Oracle OpenWorld. You can download individual presentations or demos, or get them all at once. For what its worth, lots of other products and technologies have similar access to OOW content, and much of that is presented at state of the technology (whats currently being done now as opposed to bleeding edge).
Why else should this source at OTN be of interest to you? Chances are you do or have done a significant part of your learning about Oracle on your home PC. Why learn Oracle badly when you can learn it more efficiently? That is, dont impede your learning by running Oracle on a poorly configured system (even if it is an XP or Vista computer, many of the steps and concepts still apply). You can get an academic type of license to use Windows Server at home, and it is not uncommon to boost onboard RAM to 4GB. Why not make full use of your resources so you can see what Oracle is capable of doing? The Windows Server System Center is a resource you should definitely keep in mind when trying out Oracle at home or work.
Oracle on Windows Series, 2004