SQL Server Log Shipping
Step By Step SQL Server Log Shipping
Problem
Setting up Log Shipping for SQL
Server is not that difficult, but having a step by step process is helpful if
this is the first time you have setup Log Shipping. In this tip we walk through
the steps to setup Log Shipping.
Solution
Log Shipping is a basic level SQL
Server high-availability technology that is part of SQL Server. It is an
automated backup/restore process that allows you to create another copy of your
database for failover.
Log shipping involves copying a
database backup and subsequent transaction log backups from the primary
(source) server and restoring the database and transaction log backups on one
or more secondary (Stand By / Destination) servers. The Target Database is in a
standby or no-recovery mode on the secondary server(s) which allows subsequent
transaction logs to be backed up on the primary and shipped (or copied) to the
secondary servers and then applied (restored) there.
Permissions
To setup a log-shipping you must
have sysadmin rights on the server.
Minimum Requirements
- SQL Server 2005 or later
- Standard, Workgroup or Enterprise editions
must be installed on all server instances involved in log shipping.
- The servers involved in log shipping should
have the same case sensitivity settings.
- The database must use the full recovery or
bulk-logged recovery model
- A shared folder for copying T-Log backup files
- SQL Server Agent Service must be configured
properly
In addition, you should use the
same version of SQL Server on both ends. It is possible to Log Ship from SQL
2005 to SQL 2008, but you can not do it the opposite way. Also, since Log
Shipping will be primarly used for failover if you have the same versions on
each end and there is a need to failover you at least know you are running the
same version of SQL Server.
Steps to Configure Log-Shipping:
1. Make sure your database
is in full or bulk-logged recovery model. You can change the database recovery
model using the below query. You can check the database recovery model by
querying sys.databases
SELECT name, recovery_model_desc
FROM sys.databases WHERE name = 'jugal'
USE [master]
GO
ALTER DATABASE [jugal] SET RECOVERY FULL WITH NO_WAIT
GO
USE [master]
GO
ALTER DATABASE [jugal] SET RECOVERY FULL WITH NO_WAIT
GO
2. On the primary server, right
click on the database in SSMS and select Properties. Then select the Transaction
Log Shipping Page. Check the "Enable this as primary database in a
log shipping configuration" check box.
3. The next step is to configure
and schedule a transaction log backup. Click on Backup Settings… to do
this.
If you are creating backups on a
network share enter the network path or for the local machine you can specify
the local folder path. The backup compression feature was introduced in SQL
Server 2008 Enterprise edition. While configuring log shipping, we can control
the backup compression behavior of log backups by specifying the compression
option. When this step is completed it will create the backup job on the
Primary Server.
4. In this step we will
configure the secondary instance and database. Click on the Add… button
to configure the Secondary Server instance and database. You can add multiple
servers if you want to setup one to many server log-shipping.
When you click the Add…
button it will take you to the below screen where you have to configure the
Secondary Server and database. Click on the Connect… button to connect
to the secondary server. Once you connect to the secondary server you can
access the three tabs as shown below.
Initialize Secondary Database tab
In this step you can specify how
to create the data on the secondary server. You have three options: create a
backup and restore it, use an existing backup and restore or do nothing because
you have manually restored the database and have put it into the correct state
to receive additional backups.
Copy Files Tab
In this tab you have to specify
the path of the Destination Shared Folder where the Log Shipping Copy job will
copy the T-Log backup files. This step will create the Copy job on the
secondary server.
Restore Transaction Log Tab
Here you have to specify the
database restoring state information and restore schedule. This will create the
restore job on the secondary server.
5. In this step we will configure
Log Shipping Monitoring which will notify us in case of any failure. Please
note Log Shipping monitoring configuration is optional.
Click on Settings… button
which will take you to the “Log Shipping Monitor Settings” screen. Click
on Connect … button to setup a monitor server. Monitoring can be done
from the source server, target server or a separate SQL Server instance. We can
configure alerts on source / destination server if respective jobs fail. Lastly
we can also configure how long job history records are retained in the MSDB
database. Please note that you cannot add a monitor instance once log shipping
is configured.
6. Click on the OK button
to finish the Log Shipping configuration and it will show you the below screen.










Comments
Post a Comment