* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download SQL Server 2005
Survey
Document related concepts
Global serializability wikipedia , lookup
Commitment ordering wikipedia , lookup
Entity–attribute–value model wikipedia , lookup
Serializability wikipedia , lookup
Tandem Computers wikipedia , lookup
Extensible Storage Engine wikipedia , lookup
Microsoft Access wikipedia , lookup
Oracle Database wikipedia , lookup
Team Foundation Server wikipedia , lookup
Ingres (database) wikipedia , lookup
Concurrency control wikipedia , lookup
Microsoft Jet Database Engine wikipedia , lookup
Database model wikipedia , lookup
Relational model wikipedia , lookup
Open Database Connectivity wikipedia , lookup
ContactPoint wikipedia , lookup
Transcript
SQL Server High Availability Craig Ryan National Manager Database Services Agenda • How much Availability do you need? • SQL 2000 High Availability Options • Log Shipping, Replication, Clustering • Demo – SQL 2000 H.A Options • New HA options in SQL 2005 • Database Mirroring • Demo – SQL 2005 Database Mirroring How Much Availability do you need? Need to ask yourself: • How long can we afford to be down? • How much data can we afford to lose? Availability = up/(up+down) Uptime Downtime (Min/mth) Downtime (Hrs/mth) 1 nine 98.000% 876.00 14.600 10,512 175.20 2 nines 99.000% 438.00 7.300 5,256 87.60 3 nines 99.900% 43.80 0.730 526 8.76 4 nines 99.990% 4.38 0.073 53 0.88 5 nines 99.999% 0.44 0.007 5 0.09 Category % Downtime (Min/Year) Downtime (Hrs/Year) Barriers To Availability Many barriers Only some are addressable by DBMS technology Be sure to consider people, planning, and procedures • • • • • • Database Server Failure or Disaster User or Application Error Data Access Concurrency Limitations Database Maintenance and Operations Upgrades Availability at Scale Warm Standby Solutions Replication and Log Shipping • Database Object Level • • Database Level • • SQL Server Replication Log Shipping Both provide multiple copies and a MANUAL fail over Log Shipping • Minimal impact on the production server • No changes to the database are required • Transactional consistency • Supports delayed load of transaction logs • Not all SQL Server objects are automatically copied • Users must exit for next log to be applied Log Shipping Demo SQL 2000 Log Shipping Replication • Failover possible; a custom solution • Not limited to entire database; Can define subset of source database or tables • Copy of database is continuously accessible for read activity • Latency between source and copy can be as low as seconds • Significantly increases the ongoing Database management • Database schema may need to be changed Replication Demo SQL 2000 Transactional Replication Failover Cluster Failover Clustering Microsoft Cluster Services • • Hot Standby – Automatic failover Built on Microsoft Cluster Services (MSCS) • • • • • • • • Multiple nodes provide availability, transparent to client Automatic detection and failover Requires certified hardware Supports many scenarios: Active/Active, N+1, N+I Instance Failover – entire instance works as a unit Single copy of instance databases Available since SQL Server 7.0 Standby is not available for reporting, queries, etc. • May support other instances Active/Passive SQL Server Cluster Client PCs SQL Server Server A Virtual Server Server B Heartbeat Cluster management Shared Disk Array Hub C,D E F Hub G SQL Server C,D Active/Passive SQL Server Cluster Client PCs SQL Server Server A Virtual Server Server B Heartbeat Cluster management Shared Disk Array Hub C,D E F Hub G SQL Server C,D What Clustering doesn’t do: • Clustering is not a mechanism to scale • Doesn’t protect your server against site outage • Doesn’t protect your disk subsystem • Doesn’t protect against database corruption • Doesn’t protect against logical corruption • Doesn’t protect against user error • Doesn’t protect application crash • Clustering is not a method to load-balance Still a single point of failure – The Database! Demo SQL 2000 Failover Clustering Log Shipping vs Clustering vs SQL Replication So what’s the best solution…. … it depends … On your business requirements You can combine the SQL H.A options. E.g. A/P Cluster with Log shipping SQL Server 2005 High Availability Barriers To Availability As addressed in SQL Server 2005 • Database Server Failure or Disaster • Failover Clustering • Database Mirroring • Transparent Client Redirect • User or Application Error • Data Access Concurrency Limitations • Database Maintenance and Operations • Availability at Scale Failover Cluster Failover Clustering SQL Server 2005 Further refined in SQL Server 2005 • More nodes • Match operating system limits • Unattended setup • Support for mounted volumes (Mount Points) • All SQL Server services participate • Database Engine, SQL Server Agent, Analysis Services, Full-Text Search, etc. Database Mirroring Database Mirroring New for SQL Server 2005 • Instant Standby • Conceptually a fault-tolerant server • Database Failover • Very Fast … less than three seconds • Zero data loss • Automatic or manual failover • Automatic re-sync after failover • Automatic, transparent client redirect Database Mirroring • Hardware • Works with standard computers, storage, and networks • No shared storage components, virtually no distance limitations • Impact to transaction throughput • Zero to minimal, depending on environment / workload Database Mirroring Database Mirroring How it works Application Mirror is always redoing – it remains current Witness Commit Principal Mirror 1 5 2 SQL Server 2 Log >2 Data SQL Server 4 3 Log >3 Data Witness and Quorum Witness • Sole purpose of the Witness is to provide automatic failover • To survive the loss of one server you must have at least three • Prevents “split brain” • Does a lost connection mean the partner is down or is the network down? • To become the Principal, a server must talk to at least one other server Witness Witness • Witness is an instance of SQL Server 2005 • Single witness for multiple sessions • Consumes very little resources • Not a single point of failure • Partners can form quorum on their own Safety / Performance • There is a trade-off between performance and safety • Database Mirroring has two safety levels • FULL – commit when logged on Mirror • Allows automatic failover • No data loss • OFF – commit when logged on Principal • System does its best to keep up • Prevents failover; to make mirror available • Must ‘force’ service • Or terminate Database Mirroring session Transparent Client Redirect • • No changes to application code Client automatically redirected if session is dropped • Client library is aware of Principal and Mirror servers • Upon initial connect to Principal, library caches Mirror name • When client attempts to reconnect • • If Principal is available, connects If not, client library automatically redirects connection to Mirror Database Mirroring Setup Steps 1. 2. 3. 4. 5. Ensure SQL 2005 is installed on both the principle & the mirror Server Setup Security (Endpoints) Prepare the mirror database Setup & Start the database mirroring session Optionally add a witness Demo SQL 2005 Database Mirroring Database States for Database Mirroring • • • • • SYNCHRONIZING SYNCHRONIZED SUSPENDED PENDING_FAILOVER DISCONNECTED Automatic Failover • Automatic Failover requires the following conditions: • Database mirroring running in synchronous mode • The database must be in a synchronised state • A witness must exist • During Failover the following actions occur: • The witness & mirror server agree the primary is dead, which puts the database into a suspend state • If possible the database on the Primary server changes to a disconnected state • The mirror finishes rolling forward and records the LSN • The mirror database comes online • When the principle returns, it becomes the mirror Failover Solutions At A Glance • Clustering & Mirroring both provide: • • • Automatic detection and failover Manual failover Transparent client connect • Failover Clustering • • • • • System scope Certified hardware Fast failover No reporting on standby Single copy of database • Database Mirroring • • • • • Database scope Standard servers Fastest failover Limited reporting on standby Duplicate copy of database Summary • • • • How many 9’s do you NEED? SQL 2000 potential downtime ~3 mins SQL 2005 potential downtime ~3 secs Remember to consider process too! Feel free to contact us Craig Ryan National Manager Database Services [email protected] Andrew Gannon Business Development Manager [email protected] (03) 9427-1477