SQL Server Log
shipping allows you to automatically send transaction log backups from a primary database on a primary server instance to one or more secondary databases on separate secondary
server instances.
The transaction log backups are applied to each of the secondary databases individually. An optional third server instance, known as the monitor server, records the history and status of backup and restores operations and, optionally, raises alerts if these operations fail to occur as scheduled.
An optional instance of SQL Server that
tracks all of the details of log shipping, including:
Once the monitor server has been configured, it cannot be changed without removing log shipping first.
Log shipping consists of three
operations:
The log
can be shipped to multiple secondary server instances. In such cases,
operations 2 and 3 are duplicated for each secondary server instance.
A log shipping configuration does not automatically fail over from the primary server to the secondary server. If the primary database becomes unavailable, any of the secondary databases can be brought online manually.
You can use a secondary database for reporting purposes.
In addition, you can configure alerts for your log shipping configuration.
The
primary and secondary server instances send their own history and status to the
monitor server instance.
The transaction log backups are applied to each of the secondary databases individually. An optional third server instance, known as the monitor server, records the history and status of backup and restores operations and, optionally, raises alerts if these operations fail to occur as scheduled.
- Provides a disaster-recovery solution for a single primary database and one or more secondary databases, each on a separate instance of SQL Server.
- Supports limited read-only access to secondary databases (during the interval between restore jobs).
- Allows a user-specified delay between when the primary server backs up the log of the primary database and when the secondary servers must restore (apply) the log backup. A longer delay can be useful, for example, if data is accidentally changed on the primary database. If the accidental change is noticed quickly, a delay can let you retrieve still unchanged data from a secondary database before the change is reflected there.
The instance of SQL Server that is your
production server.
Primary
database:
The database on the primary server that
you want to back up to another server. All administration of the log shipping
configuration through SQL Server Management Studio is performed from the
primary database.
Secondary
server:
The instance of SQL Server where you
want to keep a warm standby copy of your primary database.
Secondary
database:
The warm standby copy of the primary
database. The secondary database may be in either the RECOVERING state or the
STANDBY state, which leaves the database available for limited read-only
access.
Monitor
server:
- When the transaction log on the primary database was last backed up.
- When the secondary servers last copied and restored the backup files.
- Information about any backup failure alerts.
Once the monitor server has been configured, it cannot be changed without removing log shipping first.
Backup
job:
A SQL Server Agent job that performs
the backup operation, logs history to the local server and the monitor server,
and deletes old backup files and history information. When log shipping is
enabled, the job category "Log Shipping Backup" is created on the
primary server instance.
Copy
job:
A SQL Server Agent job that copies the
backup files from the primary server to a configurable destination on the
secondary server and logs history on the secondary server and the monitor
server. When log shipping is enabled on a database, the job category "Log
Shipping Copy" is created on each secondary server in a log shipping
configuration.
Restore
job:
A SQL Server Agent job that restores
the copied backup files to the secondary databases. It logs history on the
local server and the monitor server, and deletes old files and old history information.
When log shipping is enabled on a database, the job category "Log Shipping
Restore" is created on the secondary server instance.
Alert
job:
A SQL Server Agent job that raises
alerts for primary and secondary databases when a backup or restore operation
does not complete successfully within a specified threshold. When log shipping
is enabled on a database, job category "Log Shipping Alert" is
created on the monitor server instance.
Log Shipping Operations
- Backup the transaction log at the primary server instance
- Copy the transaction log file to the secondary server instance
- Restore the Log backup on the secondary server instance
A log shipping configuration does not automatically fail over from the primary server to the secondary server. If the primary database becomes unavailable, any of the secondary databases can be brought online manually.
You can use a secondary database for reporting purposes.
In addition, you can configure alerts for your log shipping configuration.
A Typical Log Shipping Configuration
The following figure shows a log shipping configuration with the primary server instance, three secondary server instances, and a monitor server instance. The figure illustrates the steps performed by backup, copy, and restorejobs, as follows:
1.
The
primary server instance runs the backup job to back up the transaction log on the primary
database. This server instance then places the log backup into a primary
log-backup file, which it sends to the backup folder. In this figure, the
backup folder is on a shared directory—the backup share.
2.
Each
of the three secondary server instances runs its own copy job to copy the
primary log-backup file to its own local destination folder.
3.
Each
secondary server instance runs its own restore job to restore the log backup
from the local destination folder onto the local secondary database.
No comments:
Post a Comment