Module 7: SQL Server Special Considerations
Overview SQL Server High Availability Unicode
Lesson: SQL Server High Availability Designing for High Availability (HA) Where to Start? OS options for SQL Server SQL Server High Availability Windows Clustering Terminology Cluster Resource Dependencies Troubleshooting SQL Server HA information
Designing for High Availability (HA) HA is about people and processes – technology is just the enabler Understand the level of HA expected so you can focus %5 minutes per year98%7.3 days per year 99.99%53 minutes per year97%11 days per year 99.9%8.8 hours per year95%18.3 days per year 99%3.6 days per year90%36.5 days per year Identify risks and exposures, and understand tradeoffs Review all single points of failure Redundancy is crucial, but don’t forget plans for contingency/disasters
Where to Start? What is the level of HA expected? Configure enough processing power to handle the workload after a failover. Use compatible hardware. Entire cluster solution must be in the Windows Catalog or on the former Hardware Compatibility List (HCL). Use only certified drivers. Crucial for disk devices Use the right version of the OS Use the right version of SQL Server Goal is to have a supported and known configuration Check for best practices. Look for White Papers on networking, configuration, etc.
OS options for SQL Server Windows 2000 Advanced Server. Max 8 Processors. Max 8 Gb Memory. Windows 2000 Datacenter Server. Max 32 Processors. Max 32 Gb Memory. Windows Server 2003 Enterprise Edition. Max 8 Processors. Max 32 Gb Memory (32-bit) or Max 64 Gb Memory (64-bit). Windows Server 2003 Datacenter Edition. Min 8 Processors and Max 64 Processors. Max 64 Gb Memory (32-bit) or Max 512 Gb Memory (64-bit).
SQL Server High Availability Failover clustering. Automatic. Great for close distances Log Shipping. Manual/Scheduled. OK for some levels of HA. Great for disaster recovery or spanning distances Native SQL Server Replication. Not an option unless applying schema changes outside of Siebel Tools Backup and Restore Always test your backups! Coordinate with backup/restore of Siebel File System
Windows Clustering Terminology SQL Server 2000 availability clustering built on top of Windows Clustering. Failover Clustering Windows OS server cluster. Not for scale out. Windows Clustering SQL Server 2000 scale out. Federated Server/Cluster (formerly referred to as Active/Passive ) Only one SQL Server virtual server concurrently running. Single Instance Cluster (formerly referred to as Active/Active ) Up to 16 SQL Server virtual servers per virtual cluster. Multiple Instance Cluster
Cluster Resource Dependencies SQL Server resources in a Cluster are dependent on other resources to run Resources start in a particular order based on defined dependencies Unless absolutely necessary, do not add resources as dependencies to the SQL Server resources. May cause an outage that has no relation to SQL Server
Troubleshooting Diagnose in this order every time Hardware issues OS issues Networking issues Security issues Windows Server cluster issues SQL Server issues Most problems are not related to SQL Server
SQL Server HA information SQL Server 2000 High Availability. 754 pages. Book is published by Microsoft Press. SQL Server 2000 Failover Clustering. maintain/failclus.mspx maintain/failclus.mspx Cluster Services in Windows Server erver2003/technologies/clustering/default.mspx erver2003/technologies/clustering/default.mspx
Lesson: Unicode Unicode Terminology Unicode and Localization Unicode, SQL Server, and Siebel
Unicode Terminology May be referred to as Single-byte characters. Encompasses English (ENU), German (DEU), Spanish (ESN), etc. Western European code page Defines how a byte sequence (number) is interpreted as a character Code Page May be referred to as SJIS. Double-byte characters. Japanese code page Combination of characters found in most other code pages. Satisfies 99%+ of language requirements Unicode code page Data in a database is stored as a sequence of bytes (numbers).
Unicode and Localization Unicode is the storage of the data, whereas Localization is the display/usage of the data Localization is a set of rules or processes guiding how locale-sensitive data is interpreted when input by a user and how such data is presented to the user. USA:10/20/2004 2:30:33 pm Germany:2004/10/20 14:30:33
Unicode, SQL Server, and Siebel Obtain the latest version of the Release Notes and Supported Platforms documents from Siebel Obtain Global Deployment Guide from Siebel Bookshelf Support for Unicode will depend on your version of the Siebel product Siebel requires SQL Server to use its UCS2 (Unicode) code page for a Unicode implementation UCS2 is a true double-byte code page SQL Server database size will double if converting from 1252 to UCS2
Review SQL Server High Availability Unicode