Backup Class
The Backup object provides programmatic access to Microsoft SQL Server backup operations.
Inheritance Hierarchy
System.Object
Microsoft.SqlServer.Management.Smo.BackupRestoreBase
Microsoft.SqlServer.Management.Smo.Backup
Namespace: Microsoft.SqlServer.Management.Smo
Assembly: Microsoft.SqlServer.SmoExtended (in Microsoft.SqlServer.SmoExtended.dll)
Syntax
'Declaration
Public NotInheritable Class Backup _
Inherits BackupRestoreBase
'Usage
Dim instance As Backup
public sealed class Backup : BackupRestoreBase
public ref class Backup sealed : public BackupRestoreBase
[<SealedAttribute>]
type Backup =
class
inherit BackupRestoreBase
end
public final class Backup extends BackupRestoreBase
The Backup type exposes the following members.
Constructors
Name | Description | |
---|---|---|
Backup | Initializes a new instance of the Backup class. |
Top
Properties
Name | Description | |
---|---|---|
Action | Gets or sets the type of backup to be performed. | |
AsyncStatus | Gets the asynchronous status of a backup or restore process. (Inherited from BackupRestoreBase.) | |
BackupSetDescription | Gets or sets a textual description for a particular backup set. | |
BackupSetName | Gets or sets the name used to identify a particular backup set. | |
BlockSize | Gets or sets the physical block size of the backup or restore, in bytes. (Inherited from BackupRestoreBase.) | |
BufferCount | Gets or sets the total number of I/O buffers to be used for the backup or restore operation. (Inherited from BackupRestoreBase.) | |
Checksum | Gets or sets a Boolean property value that determines whether a checksum value is calculated during backup or restore operations. (Inherited from BackupRestoreBase.) | |
CompressionOption | Gets or sets the backup compression option. | |
ContinueAfterError | Gets or sets a Boolean property value that determines whether the backup or restore continues after a checksum error occurs. (Inherited from BackupRestoreBase.) | |
CopyOnly | Gets or sets a Boolean property value that specifies the backup is a copy-only backup. This does not affect the sequence of backups in the usual backup schedule. | |
Database | Gets or sets the database on which the backup or restore operation runs. (Inherited from BackupRestoreBase.) | |
DatabaseFileGroups | Gets the SQL Server file groups targeted by the backup or restore operation. (Inherited from BackupRestoreBase.) | |
DatabaseFiles | Gets the operating system files targeted by the backup or restore operation. (Inherited from BackupRestoreBase.) | |
Devices | Gets the backup devices specified for the backup or restore operation. (Inherited from BackupRestoreBase.) | |
ExpirationDate | Gets or sets the date and time when the backup set expires and the backup data is no longer considered relevant. | |
FormatMedia | Gets or sets a Boolean property value that determines whether a tape is formatted as the first step of the backup operation. | |
Incremental | Gets or sets a Boolean property value that determines whether to perform a differential backup. | |
Initialize | Gets or sets a Boolean property value that determines whether the devices associated with a backup operation are initialized as part of the backup operation. | |
LogTruncation | Gets or sets the method used to truncate the database log as part of the backup operation. | |
MaxTransferSize | Gets or sets the maximum number of bytes to be transferred between the backup media and the instance of SQL Server. (Inherited from BackupRestoreBase.) | |
MediaDescription | Gets or sets a textual description of the medium that contains a backup set. | |
MediaName | Gets or sets the name used to identify a particular media set. (Inherited from BackupRestoreBase.) | |
Mirrors | Gets or sets the list of backup devices used by the mirrored backup. | |
NoRecovery | Gets or sets a Boolean property value that determines whether the tail of the log is backed up and whether the database is restored into the Restoring state. (Inherited from BackupRestoreBase.) | |
NoRewind | Gets or sets a Boolean property value that determines whether Microsoft SQL Server will keep the tape open after the backup or restore operation. (Inherited from BackupRestoreBase.) | |
PercentCompleteNotification | Gets or sets the percentage interval for PercentCompleteEventHandler event handler calls. (Inherited from BackupRestoreBase.) | |
Restart | Gets or sets a Boolean property value that determines whether the backup or restore operation will restart if it is interrupted. (Inherited from BackupRestoreBase.) | |
RetainDays | Gets or sets the number of days that must elapse before a backup set can be overwritten. | |
SkipTapeHeader | Gets or sets Boolean property that determines whether the tape header is read. | |
UndoFileName | Gets or sets the name of the undo file used to store uncommitted transactions that are rolled back during recovery. | |
UnloadTapeAfter | Gets or sets a Boolean property value that determines whether tape media are rewound and unloaded after the backup or restore operation completes. (Inherited from BackupRestoreBase.) |
Top
Methods
Name | Description | |
---|---|---|
Abort | Terminates a running backup or restore operation. (Inherited from BackupRestoreBase.) | |
Equals | (Inherited from Object.) | |
GetHashCode | (Inherited from Object.) | |
GetType | (Inherited from Object.) | |
Script | Returns a String containing the Transact-SQL statement that can be used to execute the referenced backup. | |
SetMediaPassword(SecureString) | Obsolete. Sets the password for a media set. (Inherited from BackupRestoreBase.) | |
SetMediaPassword(String) | Obsolete. Sets the password for a media set. (Inherited from BackupRestoreBase.) | |
SetPassword(SecureString) | Sets the password for a backup set. (Inherited from BackupRestoreBase.) | |
SetPassword(String) | Sets the password for a backup set. (Inherited from BackupRestoreBase.) | |
SqlBackup | Performs the database backup operation as specified by the properties of the Backup object used. | |
SqlBackupAsync | Performs the database backup operation asynchronously as specified by the properties of the Backup object used. | |
ToString | (Inherited from Object.) | |
Wait | Waits for the current backup or restore operation to complete before moving on to the next process. (Inherited from BackupRestoreBase.) |
Top
Events
Name | Description | |
---|---|---|
Complete | Occurs when the backup or restore operation completes. (Inherited from BackupRestoreBase.) | |
Information | Occurs when any informational message is issued by Microsoft SQL Server that cannot be handled by the Complete NextMedia or PercentComplete events. (Inherited from BackupRestoreBase.) | |
NextMedia | Occurs when the backup or restore operation exhausts the medium in a target device. (Inherited from BackupRestoreBase.) | |
PercentComplete | Occurs when a backup or restore operation reaches a completion unit. (Inherited from BackupRestoreBase.) |
Top
Remarks
A Backup object allows you to do the following:
Back up a SQL Server database or database transaction log.
Generate a Transact-SQL BACKUP statement defining a backup.
Monitor a backup operation, reporting status to the user.
For SQL Server, a database delimits the largest backup unit. Although many different database backup images can be maintained on any single medium, a backup cannot span more than a single database. By default, backup operations performed with a Backup object back up a complete database.
SQL Server can write a backup to one of the following media types: disk, tape, or a proprietary medium called a backup device.
SQL Server supports backup striping. A striped backup is one directed to more than a single device. When striped, a backup is written across the devices in equal chunks. Striping is supported to a single media type only. For example, a backup can be written to two tape devices, but SQL Server cannot write part of a backup to a tape device and the rest to a disk.
At a minimum, you must supply values for a backup source and a backup target when using a Backup object. The Database property (inherited from BackupRestoreBase class) specifies the backup operation source.
To get Backup object properties, users can be a member of the public fixed server role.
To set Backup object properties, users must have BACKUP DATABASE or BACKUP LOG permissions on the database, or be a member of the db_owner and db_backupoperator fixed database role and the sysadmin fixed server role.
To run the SqlBackup method, users must have BACKUP DATABASE or BACKUP LOG permissions on the database, or be a member of the db_owner and db_backupoperator fixed database role and the sysadmin fixed server role.
Examples
Backing Up and Restoring Databases and Transaction Logs
Thread Safety
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
See Also
Reference
Microsoft.SqlServer.Management.Smo Namespace