Upload
jake-pratt
View
217
Download
2
Tags:
Embed Size (px)
Citation preview
<Insert Picture Here>
Best Practices for Oracle Database 10g RAC on Microsoft 64bit Windows
Anu Chawla
Program Manager – Oracle Alliance [email protected]
Philip Newlan
Principal Product Manager - [email protected]
<Insert Picture Here>
Microsoft / Oracle
Relationship
Commitment to Windows
• Oracle7 was the first database to ship on Windows • in 1994
• Windows Server is a base development platform for Oracle
• Windows Server is Tier 1• fully supported platform for Oracle
• Focused Engineering and Product management groups for Windows-specific integration projects
• Supported both 32-bit and 64-bit Windows Server 2003 on day of O/S release
Partnership
• Oracle sponsors Microsoft events • (TechEd 2004, 2005, 2006)
• Microsoft sponsors Oracle events• OracleWorld, UKOUG 2006,2007
• Oracle RAC Training Sessions at MS Redmond campus• Demos in the ETC• Communication channels open at various levels in the
organizations• Joint support contacts for customer escalations
• How we jointly solve problems
• Conference calls, briefings, etc.
Register at Microsoft Oracle Customer Information Center: www.microsoft-oracle.com
• Best Practices on running Oracle on Windows Server
• Replay and Presentations of Oracle RAC on Windows Server Workshop
• Invitations to Global Technical Workshops hosted by Microsoft and Oracle
• Certification information for Oracle Applications and technology on Microsoft Platform
Oracle on WindowsWidely Deployed
Unix 49%
Linux 20%
Windows 29%
Other 2%
Oracle Revenues by OS for new license salesOracle Revenues by OS for new license sales
Source: Gartner Research –Source: Gartner Research –
May 2005 ID G00127787May 2005 ID G00127787
State Of The Market?
• Continuum of non-commercial software to commercial integration
• Broad interoperability movement• Competing at the workload level Windows #1 platform
for UNIX migrations• 44% Windows versus 37% Linux
• Virtualization and consolidation
Windows Growth atx86 Pace
LinuxGrowthSlows VAP/VAR
PreferenceImproves
Microsoft Momentum
Industry Trends
State Of The Market?
• Continuum of non-commercial software to commercial integration
• Broad interoperability movement• Competing at the workload level Windows #1 platform
for UNIX migrations• 44% Windows versus 37% Linux
• Virtualization and consolidation
Windows Growth atx86 Pace
LinuxGrowthSlows VAP/VAR
PreferenceImproves
Microsoft Momentum
Industry Trends
Load TestWindows 2003 v Red Hat 4.0 (64 bit)
• RAC Stress Test (150-250 users) • Transactions Per Minute were up to 16% higher for MS Windows for 150 -
250 users. • The response times for the “Order Products” test component were up to 50%
faster for MS Windows than Linux, and the response times for the “Order Products” component increased substantially above 150 users.
• At 250 users, Linux performed over 30% of sorts on disk instead of sorts in memory.
• For all of these tests, Linux used 17% - 40% more memory than MS Windows Server.
• RAC User Load Tests (2500 – 4500 users) • At 3500 users, the Transactions Per Minute for MS Windows were 18%
higher than the Linux Transactions Per Minute. • At 4000 users, MS Windows Server TPM continued to increase while the
Linux test failed to complete. • At 2500 users, component response times were 9% - 33% faster for MS
Windows Server; while at 3500 users Windows was faster by a wide margin. • For all of these tests, Linux used 5% - 25% more memory than MS Windows
Server.
Supported 32-bit Architectures
• For 32-bit x86 systems
• Well-suited for mainstream deployments where 64-bit applications or drivers are unavailable
• Most common on servers with 1-4 processors
Supported 64-bit Architectures
• Gradually replaces 32-bit Windows as mainstream offering
• Suitable for all workloads
• Well-suited for combining 32-bit and 64-bit software
• Intended for the most demanding Database and LOB deployments on 8-way+
• Designed for pure 64-bit software stacks
32 bit Vs 64bit Memory LimitsGeneral Memory Limits 32-bit 64-bit
Total Virtual Address Space 4 GB 16 TB
Virtual Address Space per 32-bit process 2GB (3 GB if system
is booted with /3gb switch)
4GB if compiled with /LARGEADDRESSAWARE 2GB
otherwise
Virtual Address Space per 64-bit processNot applicable 8 TB
Paged Pool 470 MB 128 GB
Non-Paged Pool 256 MB 128 GB
System Cache 1 GB 1 TB
Physical Memory and CPU Limits1 32-bit 64-bit
Windows XP Professional 4 GB / 1-2 CPUs 32 GB / 1-2 CPUs
Windows Server 2003 Standard Edition 4 GB / 1-4 CPUs 32 GB / 1-4 CPUs
Windows Server 2003 Enterprise Edition 64 GB / 1-8 CPUs 1 TB / 1-8 CPUs
Windows Server 2003 Datacenter Edition 64 GB / 1-32 CPUs 1 TB / 1-64 CPUs
(1) Product names listed are for general reference only and do not reflect actual product names. 64-bitWindows Server Standard Edition will be available for x64 only.
Architecture – Thread and Memory Model32bit Windows
Oracle process
2GB
Code
SGA
SGA containsdb buffers,log buffersshared pool,other memoryallocations
Each threadconsists ofPGA, stack,other memoryallocations
Background and foreground threads
Architecture – Thread and Memory Model64bit Windows
Oracle process
8TB
Code
SGA
SGA containsdb buffers,log buffersshared pool,other memoryallocations
Each threadconsists ofPGA, stack,other memoryallocations
Background and foreground threads
<Insert Picture Here>
Oracle Support for MS Windows
Windows 32-bit Platform Support
OS 9iR2 10gR1 10gR2
Windows 2000 Yes Yes Yes
Windows XP Professional Yes Yes Yes
Windows Server 2003 Yes Yes Yes
Windows 64-bit Platform Support
OS 9iR2 10gR1 10gR2
64-bit Windows Server 2003 for Itanium (64-bit DB)
Yes Yes Yes
64-bit Windows XP & Windows Server 2003 on x64 (64-bit DB)
No Dev Release (May 04)
Yes
64-bit Windows XP & Windows Server 2003 on x64 (32-bit DB)
Yes
(client only)
Yes
(client only)
Yes
(client only)
32-bit Windows XP & Windows Server 2003 on x64 (32-bit DB)
Yes Yes Yes
• Next Major Database Release• 32-bit support • 64-bit support ( for x64 systems)
• 10gR2 • Plan to certify and support 32-bit Client and Server • Latest Patchset plus possible patches – exact requirements will
be documented when certification is completed and announced
Windows Vista Support
<Insert Picture Here>
Oracle Architecture
Database ArchitectureProcess and Memory
• Thread model, not a straight port of Oracle’s process architecture
• 3GB (32-bit) or 8TB (64-bit) maximum memory per database instance. VLM support allows >3GB on 32-bit.
• Runs as a Windows service process• No limits on memory, connections, resources except those
imposed by the operating system
• What does 8GB Process Address space give you ?• Connections• Datawarehousing improvements
Database ArchitectureFile I/O
• Oracle10g supports asynchronous I/O to all types of files
• Logical and physical raw files and partitions are fully supported (faster than NTFS)
• Full 64-bit file I/O internally• No 2GB or 4GB limitations on database file
sizes.• Maximum file size is 64GB• Maximum database size is 4 petabytes
Dual Core and Hyperthreading
• Dual Core support• Supported – Oracle uses the OS scheduler• All versions of Oracle are supported in Hyperthreaded
environments.
• Hyperthreading • Circuitry added to Intel CPUs resulting in single CPU
functioning as 2 CPUs • All versions of Oracle are supported in Hyperthreaded
environments.
• Customer 10 node RAC• 4 Dual cores with hyperthreading turned on
• 16 CPU’s visible in taskmanager on each of 10 nodes• 32GB RAM per node - 200TB database
?
<Insert Picture Here>
Best Practices for 64 bit Windows
Oracle on 64-bit Windows
• Long history of supporting 64-bit databases on other platforms
• Interoperability between 32-bit clients and 64-bit servers and vice versa
• Improved performance, availability and scalability
• Why do customers choose to migrate to 64bit Windows ?
64-Bit Best Practices
• Run correct 64-Bit version of Oracle for the architecture• 64-Bit Oracle for X64 (AMD or EM64T)• 64-Bit Oracle for Itanium.
• 32-Bit Oracle Server not supported on 64-Bit platforms
• Enable Large Pages
• Large Page support• For instances with large memory requirements, large page support
can improve performance• 32 bit – 4kb default – 2MB max• 64 bit – 8kb default – 2MB on x64 -16 MB on IA64
• NUMA support for memory/scheduling• Database intelligently allocates memory and schedules threads
based on node configuration• Best Practice: For NUMA on AMD patch to a minimum 10.2.0.2 P5
New for Windows Server 2003 SP1
64-bit: Migration
• 32-bit to 64-bit upgrade process is simple• 32-bit data files are compatible with 64-bit DB
• No need to recreate the database• Full export and import not required• Database Upgrade Assistant automates process
• Transparent migration for end-user applications• No changes required to existing client applications when running against 64-
bit database
ASM Disk Group
Ctrl file, redo log, data 1,…data n
% utilization
File System Best Practices
• Use ASM – whether single-instance or RAC – use 10.1.0.4 or higher
Provisioning storage when you need it… and save money• No need to move datafiles around• No need to take tablespaces offline Allocate what you need, when you need it Simple to add or remove
• Add disks with no downtime Save time and money
Where do I locate my datafiles ?
• 10g Windows RAC tracked customers
ASM
OCFS
RAW
54.8%
42.9% 2.3%
<Insert Picture Here>
Management & Diagnostics tools
Grid Control
Out of the Box Database Control
• No client install required
• Fully functional after database creation
• Discovery, Configuration & Monitoring
• Listener• ASM• RAC database
Diagnostic Tools - Performance Monitor
Process Explorer
Tools
• OS Tools• MS Tools
• diskpart• poolmon• memsnap• tasklist, taskkill • tlist (with -c)• Driverquery - with /V• sc (sc query state= all)
• Sysinternals• regmon, filemon,
procexp, tcpview• Windows Services for Unix
• Oracle Tools• srvctl
• crsctl
• ocrdump
• crs_stat
• cluvfy
CPU Tuning
• Oracle uses all processors available through the OS• ORACLE_AFFINITY registry value can be set to tell
Oracle which threads to run on which processors (same setting for all instances)
• Thread priorities can be set in the registry using the ORACLE_PRIORITY variable
CPU Tuning – Diagnosing High CPU
• Process Explorer• drill down to threads • Get thread id of high CPU thread
• Use following to map OS Thread Id to Oracle Background ProcessSELECT a.spid, b.username
FROM v$process a, v$session b
WHERE a.addr= b.paddr
AND a.spid = <thread number>
Networking Best Practices
• The default queue-size for Windows Server is 50 – increase using QUEUESIZE parameter in LISTENER.ORA – prevents errors during login storms
• Use multiple listeners for increased throughput• Increase SDU_SIZE in SQLNET.ORA or
TNSNAMES.ORA• Controls SQL*Net packet size• Set to larger SDU size for apps with bulk data transfer (LOBS,
Dataguard etc). Perhaps 32k
Networking Best Practices
• SQLNET.AUTHENTICATION_SERVICES=(NTS) This is a default value in SQLNET.ORA for a reason – it should be left at default. – Required for RAC
• In 10.2.x, SQLNET.INBOUND_CONNECT_TIMEOUT defaults to 60 – this may need to be set to 0 in some situations
<Insert Picture Here>
Installation and Patching
Best Practices and Support’s Top Issues
Installation Pre-reqs
• Hardware is set up correctly• Use the Cluster Verification Utility (CVU).• User Accounts• Remote Desktop Client.• Environment Variables• Networking• Disk Layout• Enable Automount • Stop ‘troublesome’ Services.• Time Sync
Install - Remote Desktop Client
• If you must use the remote desktop client• Invoke the client with the /console command line
parameter
Cluster Verification Utility - CVU
• CVU checks and reports on varies configuration items at various steps during the install• Does not fix anything !
• Get the latest version from OTN• http://otn.oracle.com/rac - Right Hand Side - CVU
• Two steps to run prior to starting install• runcluvfy stage -post hwos -n iwinrca01,iwinrca02• runcluvfy stage -pre crsinst -n iwinrca01,iwinrca02
• Other steps as required
User sets up the
Hardware,
network & storage
Sets up OCFS
( OPT )
Installs
Oracle Clusterware
Installs
RAC
Configures
RAC DB
-post hwos
-post cfs
-post crsinst
-pre crsinst
-pre dbinst
-pre dbcfg
-pre cfs
Cluster Verification Utility
Most Common Support Issues
• Oracle can be installed (and patches applied) over a remote connection.
• Try installing on the server console directly, to determine if the problem is with the remote connection utility.
• Logging into Windows as a user account, with Admin privs, is not identical as to logging in as the Local Administrator account. If there are problems installing, try using the Local Administrator account.
Most Common Support Issues
• Files in use errors:• Must stop ALL Oracle Services.
• Stop the DTC (Distributed Transaction Coordinator) service.
• Use Process Explorer to find the process using the Oracle files.
• Problems running catpatch.sql or catcpu.sql:• Verify there are NO invalid objects in the Database, prior to
applying a patch.
• Verify the Shared_Pool_size and Java_Pool_Size are set to a minimum of 150MB each.
• Don’t set ORACLE_HOME in environment – Oracle gets its environment via the Registry. Oracle.key file in OH\bin points to correct registry key.
Patching Best Practices
• For existing installs, make plans to test and apply future patchsets
• Don’t wait until you are forced to apply patch on a production system without sufficient testing
• Apply patches within 6 months of release
• At minimum, CPU (Critical Patch Update) patches are released quarterly
• Fifth-digit patches provided on Windows platforms which bundle one-off patches
• For fixing new issues, applying latest patchset and fifth-digit patches available will help in eliminating known bugs
<Insert Picture Here>
High Availability Solutions on Windows
High Availability Solutions
• HA becomes essential as databases are critical component of business
• HA Goals: Minimize downtime to your company and your customers
• Solutions for Windows Environments• Real Application Clusters (RAC)• Oracle Fail Safe• Data Guard (DG)• Maximum Availability Architecture (MAA)• Oracle Clusterware for Single Instance
• Provides MSCS – without MSCS• See http://www.oracleracsig.org this Thursday 16th
More Information
• Windows Server Technology Center• http://otn.oracle.com/windows
• Oracle RAC• http://otn.oracle.com/rac• http://otn.oracle.com/asm
• Microsoft – Oracle• http://ww.microsoft-oracle.com
• Oracle RAC SIG• http://www.oracleracsig.org
• For more [email protected]@oracle.com
The preceding is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions.The development, release, and timing of any features or functionality described for Oracle’s products remain at the sole discretion of Oracle.