Chapter 3. Configuring Data Protection For SQL
Chapter 3. Configuring Data Protection For SQL
restores may occur at |the same time, the value of this parameter must be large enough to allow for |all of the needed mount points. The collocate parameter for define stgpool should be set to filespace to ensure that individual data stripes stay on separate removable volumes. The default value is no. Not doing so may require move operations to make the data for each stripe of a restore simultaneously accessible. The txngroupmax option in the Storage Manager Server options file (usually dsmserv.opt) must be at least one more than the maximum number of stripes to be used for backup or restore operations regardless of media. The default value is 40. The management classes for Data Protection for SQL meta data should be identical to the corresponding management classes for database data except that the meta data management classes should not allow migration to removable media. If any Data Protection for SQL meta data is on removable media, queries may require media mounts, and backups or restores may require additional media mounts. For more on management classes, see Storage Manager policy requirements and recommendations.
dsmcutil.hlp file or the dsmcutil.txt file which are distributed with the Storage Manager BackupArchive Client package. compression A setting of compression on instructs the Storage ManagerAPI to compress data before sending it to the Storage Manager Server; this reduces traffic and storage requirements. If you enable compression, it affects performance in two ways: CPU utilization is higher on the machine on which Data Protection for SQL is running. Network bandwidth utilization is lower because fewer bytes are sent. Storage usage on the Storage Manager Server is reduced.
You may want to turn compression on if any of the following conditions exist: The network adapter has a data overload. Communications between the Data Protection for SQL and Storage Manager Server are over a low bandwidth connection. There is heavy network traffic.
Considerations: It may be better to set compression off in the following cases: The computer running Data Protection for SQL has a CPU overload; the added CPU usage can impact other applications including SQL Server. You can monitor CPU and network resource utilization using the Performance Monitor program shipped with Windows. You are not constrained by network bandwidth; in this case, you can achieve the best performance by setting compression off and enabling hardware compaction on the tape drive, which also reduces storage requirements.
Note: The Storage Manager administrator can override the compression option setting for the Data Protection for SQL node when registering or updating the node by specifying, on the Storage Manager Server side, that a particular node: Always uses compression. Never uses compression. Leaves the decision up to the client (default value).
clusternode A setting of clusternode yes directs the Storage Manager API and Data Protection for SQL to be cluster-aware when running in a MSCS environment. This option must be specified for Data Protection for SQL to function properly on a MSCS. enablelanfree A setting of enablelanfree yes allows Data Protection for SQL to run in a LAN free environment if you are equipped to do so. Notes: 1. If you are running Data Protection for SQL on a MSCS, the options file on both nodes of the cluster must be identical.
2. You can create additional Data Protection for SQL options files to point to other Storage Manager Servers. You might also want to create more than one options file, each with different parameters, to use with a single Storage Manager Server.
To match zero or more qualifiers, use ellipses: \...\ All specifications must end with the wildcard character *. This is required because the specification must match both object names and temporary names. Temporary names are used to enable rolling back a backup transaction if an error occurs. Temporary names are object names with a unique string appended to the backupType qualifier. An objectNameSpecification should be placed within double quotes. If the specification includes spaces or special characters, the double quotes are required. For exclude statements, meta should be a match in the specification, either explicitly, or by wildcard or ellipses. Excluding meta excludes the entire object. Include statements can specify either meta or data separately and explicitly, or both by wildcard or ellipses. You may specify both data and meta objects in options file include lists in order to assign management classes. However, when you use exclude statements, you should specify only the meta objects. If a data object is not backed up, its meta object will not be created. Log and set object names are always unique. The typeInfo contains the qualifiers whose values make them unique. Because they are generated at the time of the backup, they are not predictable and you cannot specify them. Include/exclude lists are processed from the bottom up, and processing stops at the first match. To ensure that more specific specifications are processed at all, you should list the more general specifications before the more specific ones so that they will be processed after the specific. Otherwise, the more general will match the target before the more specific are seen. o When a match is found, processing of the list stops and the statement that matches is examined. If it is an exclude statement, the matching object name is not backed up. If it is an include statement, the matching object name is backed up. If the include statement contains a ManagementClassName, that management class is associated with the object name for this backup and for all backups of the same name on the current node. o If a match is not found, the object is backed up using the default management class for the current node. o If a match is found for an include that specifies a management class, but the specified management class is not valid for the current node, the default management class for the current node is used. Include/exclude processing does not produce error messages for invalid specifications. Therefore, you should thoroughly test all include/exclude lists. Specifying an invalid management class name will generate an error message in the dsierror.log. In regard to case-sensitivity, the Windows Storage Manager API currently assumes the specifications are for a Windows file system and ignores case. However, because case may be honored in the future, you should always use the correct case. Specifically, o Use correct case for SQL names (server, database, group, or file names) as displayed by the query sql or query tsm commands. o Use lower case for the Data Protection for SQL constants: meta, data, full, diff, log, group, file, and set. The following are examples of individual objectNameSpecifications as they might appear in include/exclude statements: SqlServerNames: SQL70, SQL2000 InstanceNames: INST1, INST2 DatabaseNames: Db1, Db2, Db3 GroupNames: g1, g2, g3 LogicalFileNames:
f1, f2, f3 For complete sample illustrations of include and exclude statements using the syntax outlined above, refer to Appendix C, Advanced procedures.
Copy Group Values You should accept default values for the following backup copy group parameters because they are not applicable to Data Protection for SQL: copy mode copy serialization copy frequency
Log and Set Expiration Values Because log and set objects are always uniquely named, they do not participate in expirations due to version limit. However, Data Protection for SQL Version 5.1.5 inactivates all backup objects for a SQL database not otherwise inactivated whenever a new full database backup of that SQL database is performed. Therefore, the retention period defined through the retain only version parameter controls the expiration of log and set backups. There will never be more than one version of a log or set object. Considerations: When selecting the retain only value for log backups, ensure that it is at least as long as the value for the backup objects the logs are associated with. You may use the same management class for log backups and the backup objects that are retained the longest to be sure you use an adequate value. Set backups are intended to be used in unusual one-of-a-kind situations. (For more detail, see file and group considerations regarding a Create Index operation in Backup object types.)
If you do not wish to wait for the next full database backup, you can explicitly inactivate any particular active object (if it is no longer needed) or any active objects older than a specified number of days using the inactivate command.
Meta and Data Object Values Data objects and their associated meta objects should have the same version limits and retention values. However, because meta objects may need to be restored as a result of a Data Protection for SQL query, you may want to consider storing meta objects in a disk-only storage pool so that a media mount is not necessary to resolve the query. To do this, you can: 1. Define a separate management class with a Copy Destination pointing to a disk pool that does not have any removable media in its hierarchy. 2. Bind all meta objects to that management class using an include statement in the Data Protection for SQL options file. For further details about binding backup objects to specific management classes, see Setting automatic expiration. Alternatively, you can choose to use the same management class (and storage pools) for both meta and data objects if you rarely need the meta objects, or need them only immediately preceding a restore when a volume mount is required anyway. Note: In many cases, you can also obtain the meta object information from SQL Server as recorded in its msdb database. Data Striping Values If you exploit data striping, each stripe of a backup must have the same version limits and retention values to ensure that some parts of a single logical backup object do not expire before others. Using Collocation A single, complete restore may require a full database backup, a differential backup, and multiple log backups, or one or more group, file, or set backups and multiple log backups. It is recommended that you use collocation if these backups may be stored on removable media. If you use data striping, use collocation by filespace on sequential storage pools to maintain the stripes on separate storage volumes. This is necessary to allow concurrent parallel access to each of the stripes. If it happens that multiple stripes for the same object end up on the same sequential volume (because insufficient empty volumes are available), the Storage Manager Server move data command can be used to move the objects to a disk storage pool or to new sequential volumes added to the storage pool so that they can be accessed in parallel. See your Storage Manager administrator or see the appropriate Storage Manager Administrator's Guide for your server platform for more information on defining or updating policy domains and copy groups.