首页 > 数据库 > Oracle > 20 Differences Between Oracle on NT and Oracle on Unix

20 Differences Between Oracle on NT and Oracle on Unix

原创 Oracle 作者:lastwinner 时间:2005-10-10 14:17:07 0 删除 编辑


Windows NT has been existence since 1993. It runs on two processor
architectures: Intel X86 (needs Pentium) and Digital Alpha AXP.
The Windows NT operating system is only available from Microsoft.

UNIX has been in existence since 1972: previous versions did exist,
but they were written in PDP assembly language, rather than C. UNIX
runs on most hardware architectures and versions are supplied by
many vendors, most notably Sun, HP, IBM, Digital, Sequent, Data
General, NCR and SCO.



Windows NT 3.5 has been evaluated successfully at U.S. Department
of Defense C2 security level (TCSEC class C2 rating). A utility on
the Windows NT Resource kit, C2 Configuration/Security Manager,
reports the state of compliance of the relevant features, such as
whether the last username is displayed at logon.

As of 2000.07.25 NT 4.0 does not have a TCSEC class C2 rating.

For Microsoft's own statement about this, see:

Some specialised UNIX variants support the B1 level of security.


Windows NT has a common graphical user interface across architecture
types. The interface changed between NT 3.51 and NT 4.0 from
Windows 3.11 style to Windows 95/98 style.

Many UNIX versions have an X-Windows type of user interface, the
appearance varying between flavours. Linux in particular offers a
number of GUI interfaces, including Windows look-alikes. However,
most UNIX commands are still character mode terminal based.


Windows NT is limited to using drive letters A-Z, though use of raw
partitions can allow disks to be divided up into smaller sections (see
question 17).

UNIX has no built-in limitation on number of disk drives.


NT only has the AT command. An easier-to-use GUI version may be found
on the Resource Kit.

UNIX has more sophisticated job control mechanisms.


NT applications only require recompiling if moved to a
different architecture, e.g. Intel to Alpha.

UNIX applications require recompiling if moved to a different
platform, e.g. HP to IBM RS/6000. They also need recompiling
for different UNIX releases on the same platform.


Standard Windows NT currently scales effectively to four CPUs, though
some manufacturers have recently announced eight-way systems.

UNIX scales to at least 64 CPUs.


Windows NT supports only a single interactive GUI session, unless
Microsoft Terminal Server, RAS or a third-party tool is used.

UNIX supports hundreds of interactive GUI or character mode


Several thousand applications are available specifically for Windows NT.
It can also run many of the thousands of 16-bit Windows applications.
Third-party products allow some UNIX applications to be run, though the
greatest interest is the other way, enabling Windows NT applications to
run under UNIX variants, especially Linux. Some public domain software
is available for Windows NT.

There are many thousands of UNIX applications on the market. A large
amount of public domain software is also available. Emulation software,
available for many flavours of UNIX, allows many 16-bit Windows
applications to be run.


Windows NT supports two filesystems - FAT and NTFS. Oracle software and
datafiles can be installed on either type, with the following provisos:


- FAT filesystem has no file-level security
- Once a user is connected to the NT server, they have full access
to any FAT file (i.e. they can delete or overwrite the file)
- NTFS filesystem has file-level security

Once a user is connected to an NT server, they must then have
access to a file to be able to access it.

NT files can only have a single name (unless using POSIX).
Files on UNIX can have multiple names via hard or soft links.


Windows NT clustering has only become available relatively recently.
Most of the major hardware vendors support it. Two Oracle products for
Windows NT clusters are Oracle Parallel Server and Oracle Fail Safe.
The latter is for two-node clusters, where an instance can only run on
one node at a given time.

UNIX clustering has been in existence for several years. Oracle Parallel
Server has been available on UNIX since early Oracle7 releases. Oracle
Fail Safe is not available for UNIX.


Each Oracle background "process" (e.g. LGWR, DBWR, ARCH, etc.), and each
dedicated server "process" is a thread of the master ORACLE process on
Windows NT. The multi-threaded architecture is very efficient on Windows
NT, permitting fast, low-overhead context switches due to all threads
sharing resources of the master process.

With Oracle7 and 8.0.x on Windows NT, most Oracle executables and hence
processes had a two-digit version number appended to the name, to allow
multiple versions to be installed into the single ORACLE_HOME. With the
introduction of multiple ORACLE_HOMEs on NT in release 8.0.4, this was
no longer necessary, and as of 8.1.5 the UNIX style of using just the
name has been adopted.

With multiple Oracle instances running on Windows NT, there will be
one ORACLE process per instance, each with multiple component threads.

Each Oracle background process exists as a separate process on


Despite Oracle's inherently multi-threaded architecture on NT
(see previous point), the multi-threaded server option of the
RDBMS was not part of the Oracle7 port on Windows NT. Thus, each
client connection was a dedicated connection, with each connected
session getting a dedicated server thread within the ORACLE7x process.
However, Oracle8 on Windows NT fully supports MTS.

UNIX Oracle7 ports have supported MTS since early Oracle7 releases.


NT Services are similar to UNIX daemons, permitting a program to
run independent of a user logon session.

Oracle registers each instance as a service to allow them to be
started independent of a user logging on (e.g. instance started on
machine boot). By default, services run as the SYSTEM user in NT.
SYSTEM is not a user which can create a logon session - it is
specifically for running system-orientated services. Oracle server
processes on UNIX keep running even if no interactive users are
logged on.


Oracle on Windows NT utilises variables in the registry similarly to
the way Oracle on UNIX utilises shell environment variables.

ORACLE_HOME and ORACLE_SID are variables defined in the NT Registry.
The Oracle Installer and Oracle Instance Manager define variables in
the Registry as well as registering the Oracle instance as a service.
The Registry can be edited manually via the REGEDT32 utility, to change
the values of variables, but this should be undertaken with care.

Release 8.0.4 of Oracle was the first release on Windows NT that
allowed support for more than one Oracle home. This was a large
step forward in providing comparable installation capabilities to
Oracle on UNIX. If using release 8.0.4 or higher, the Oracle Home
Selector utility, not the ORACLE_HOME environment variable, should
be used to specify the setting of Oracle home.

Oracle on UNIX requires ORACLE_HOME and ORACLE_SID to be set in system
or user login scripts. UNIX has always supported multiple ORACLE_HOMEs.


Oracle on Windows NT is integrated with the NT Event Viewer and
Performance Monitor utilities.

The Event Viewer utility is how an NT administrator views system
alert messages on NT. Oracle has integrated with Event Viewer such
that Oracle startup/shutdown messages and the OS audit trail (if
you configure OS auditing in Oracle) appear there. Performance
Monitor is the NT equivalent of the UNIX sar or vmstat command,
providing detailed resource utilisation data for all processes
running on the system.

Oracle has integrated with Performance Monitor such that you can
view utilisation of operating system and Oracle resources (e.g. file
write bytes per second - only those related to Oracle, library cache
hit ratios, etc.). The Oracle Performance Monitor entry in the
Start Menu > Programs > Oracle for Windows NT starts the standard
NT Performance Monitor utility but feeds it Oracle-specific data.

Although multiple instances of Oracle can be run on Windows NT, the
NT Performance Monitor and Event Viewer utilities can only "see" one
Oracle instance at a time. For details of how to edit the relevant
registry variables, see [NOTE:46875.1] or the Getting Started Guide
for Oracle on Windows NT.

Oracle on UNIX provides no performance utilities for use at operating
system level. Utilities such as sar or vmstat must be used to monitor
Oracle background or shadow processes. These do not provide a graphical
interface. More sophisticated third-party tools are available on UNIX.


Windows NT supports raw (unbuffered) disk partitions, where Oracle can
store data, log or control files. Each raw partition can be assigned a
drive letter, but will not be formatted with a filesystem.

Similarly to UNIX, each raw NT partition will be mapped to a single
Oracle data, log or control file. Where NT differs from UNIX is
the naming convention for these files. When referencing a raw
partition in any Oracle SQL command, the syntax looks like this:


where f: is the drive letter assigned to the raw partition, referred to
here as a logical raw file. Windows NT and Oracle also support physical
raw files, with device names of the form:


where N is the number of the physical drive, as seen in Disk Administrator.
Physical raw files would need to be used on a system with more drives than
available drive letters for the desired number of raw partitions.

The OCOPY utility can be used to copy data to and from raw partitions,
in a similar way to the UNIX dd command. Backup of a raw partition must
be to a filesystem. The NT Backup utility can then be used to copy the
backup to tape as required.

On both Windows NT and UNIX, raw partitions must be used for the shared
data files in a Parallel Server environment, where special Oracle
utilities are provided for manipulating them.


A password is required to CONNECT INTERNAL for Oracle on Windows NT.
The database password is defined during installation and by default
is stored in a hidden password file called "PWD.ora" in the
DATABASE directory under "ORACLE_HOME".

There is a Windows NT equivalent to the UNIX dba group. The NT username
used to install Oracle8i Enterprise Edition is automatically added to a
Windows NT local group called ORA_DBA, which receives SYSDBA privilege.
This obviates the need for a password when issuing commands such as
CONNECT INTERNAL and CONNECT / AS SYSDBA. On the same principle, an
ORA_OPER group can be created for database operators, and finer-grained
security is possible by use of the "ORA__DBA" and "ORA__OPER"


Oracle on Windows NT supports hot backups using the same backup
strategy as it on UNIX, i.e. put the tablespaces into backup mode and
copy the files to the backup location. Then bring the tablespaces out
of backup mode. By definition, this can all be done while the database
is up and in use (though it is best to choose a quiet time, when there
are few transactions).

The Windows NT feature to be aware of is that NT Backup does not allow
files in use to be copied, so you must use the OCOPY utility that
Oracle provides to copy the open database files to another disk location.
Since OCOPY cannot copy files directly to tape, you will then need to use
NT Backup or a similar utility to copy the files to tape, as required.


Oracle on Windows NT is supplied as a set of executables and dynamic link
libraries (DLLs). Relinking by the user is not possible on Windows NT, but
executable images can be modified using the ORASTACK utility, to change
the size of the stack used by the threads of the Oracle server process.
This can be useful to avoid running out of virtual memory when using a
very large SGA, or with thousands of connections. It is recommended that
this tool should be used under the guidance of Oracle Support.

On UNIX, object files and archive libraries are linked to generate the
Oracle executables, and relinking is necessary after operations such as
installation of a patch or Net8 protocol adapter.

来自 “ ITPUB博客 ” ,链接:,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录


  • 博文量
  • 访问量