This article discusses the requirements for Microsoft SQL Server to support remote mirroring of user databases.
Remote mirroring is a solution that is offered by third-party vendors. This solution lets you maintain a real-time mirror of your primary storage device at a remote site. In a remote mirror, redundant server hardware and a redundant storage system are maintained at the remote site. Microsoft SQL Server is installed on both the local server and the remote mirror server.
For more information about remote mirroring, visit the following Microsoft Web site:
The following is a list of requirements for SQL Server to be supported on a remote mirroring solution.Note
This article does not endorse any specific vendor's solution.
Work with your hardware vendor and your storage vendor to make sure that the remote mirroring solution that you want to use supports the I/O requirements of SQL Server.
For information about documented vendor solutions, visit the following Microsoft Web site:
For information about I/O requirements, visit the following Microsoft TechNet Web site:
The following is a list of some important requirements to consider:
- Your solution must maintain Dependent Write Consistency.
- Your solution must avoid torn pages.
- Your solution must produce an I/O consistent copy of your data at the secondary remote location.
If your solution does not meet these requirements, database corruption may occur at the remote site.
Write-Ahead Logging (WAL) protocol
SQL Server deploys a transaction log and an associated recovery logic to make sure that the system maintains transactional database consistency if a system failure or an unmanaged shutdown occurs. This is known as the Write-Ahead Logging (WAL) protocol.
This recovery protocol must be able to write directly through to the disk media. When an operating system I/O write request returns to the database manager, the recovery system must be able to guarantee that the write has actually completed or that the write will be completed. If a hardware or software component of the system does not support this protocol, you may experience partial or total data loss, or the data may become corrupted, if a system failure occurs.
Your solution must meet all requirements for data write ordering and for write-through guarantees. Microsoft will not support any solution that does not meet the WAL requirements.
For more information about the WAL requirements, click the following article number to view the article in the Microsoft Knowledge Base:
SQL Server 7.0, SQL Server 2000, and SQL Server 2005 logging and data storage algorithms extend data reliability
Microsoft Windows-based servers and other storage solutions that are Windows Hardware Quality Lab (WHQL) certified should meet the required guarantees. Therefore, Windows-based servers should be supported for use as SQL Server storage devices. Verify the following with your hardware vendor:
- Any storage device that you plan to deploy has been designed for database use.
- You are deploying and configuring those devices for transactional database use.
Remote mirroring support
For more information about remote mirroring and stretch clustering, visit the following Microsoft TechNet Web site:
Some remote mirroring solutions may have an adverse effect on overall database performance. This is true especially for solutions that rely on synchronous updates to the remote site. You should carefully consider this point and factor this behavior into the solution that you deploy.
If your solution meets the requirements that are discussed in this article, Microsoft Customer Support Services will provide support for issues that are not related to storage devices.Important
To obtain support from Microsoft Customer Support Services for issues that involve transactional throughput, you must be able to reproduce the issue in a mirror-free environment.
To obtain support for issues that involve a storage device, see your storage vendor.
To obtain support for issues that involve third-party replication technology, see your technology vendor.
SQL Server requires systems to support ‘ guaranteed delivery to stable media ’ as outlined under the SQL Server I/O Reliability Program Requirements
For more information about the input and output requirements for the SQL Server database engine, click the following article number to view the article in the Microsoft Knowledge Base:
Microsoft SQL Server Database Engine Input/Output Requirements