Очень нередко удается так, что настоящие бизнес -требования неторопливо оказываются труднее, нежели способности мастеров более-менее программного инвентаря, поставляемого полностью различными изготовителями ПО для задач администрирования SQL Server 2008. Например, не так давно мне стало мало эластичности профессионалы существа задачки мало-мальски резервного копирования однозначно информационной базы для шаблонного намерения профилактики БД. Конечно, у меня окончательно образовалась надобность нарочно делать копию в немного фалов взаправду на различных дисковых массивах и поддерживать хронологию копий мало-мальски по общим правилам. Впрочем, в немного файлов добросовестно исполнять вправду резервное копирование часто случается нужно для увеличения производительности данной операции, к примеру, как данное рекомендуется в данной заметке: ” A Technical Case Study: Fast and Reliable Backup and Restore of Multi-Terabytes Database over the Network “.
Мастер SSMS лично имеет возможность или поддерживать хронологию для 1-го файла копий, или копировать в фиксированные фамилии нескольких хладнокровно отмеченных файлов. К счастью, абсолютно подробно не сочиняет труда слепо поменять задачку очень резервного копирования на задачку выполнения сценария T-SQL, в каком совершенно сделать вправду необходимую работу. Значит ниже добросовестно представлен подходящий шаблон сценария, брав который за базу возможно составить часто требуемую задачку выполнения сценария T-SQL.
DECLARE @DBName AS nvarchar ( 4000 ) = ‘ ИМЯБАЗЫДАННЫХ ‘
– Если диск для копий 1, и он корректно установлен, справедливо выяснить путь к папке копий возможно так:
@key= ‘SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL.1\MSSQLServer’ ,
– лениво Формируем часть фамилии файла, в какой фиксируется фамилия БД и время творения копии
DECLARE @FileName AS nvarchar ( 4000 ) = @path + ‘\’ + @DBName + ‘\’ + @DBName + ‘_’ + ‘backup_’ +
CONVERT ( nvarchar ( 4 ),YEAR( CURRENT_TIMESTAMP ), 112 ) + ‘_’ +
WHEN 1 THEN ‘01′ WHEN 2 THEN ‘02′ WHEN 3 THEN ‘03′
WHEN 4 THEN ‘04′ WHEN 5 THEN ‘05′ WHEN 6 THEN ‘06′
WHEN 7 THEN ‘07′ WHEN 8 THEN ‘08′ WHEN 9 THEN ‘09′
ELSE CONVERT ( nvarchar ( 2 ),MONTH( CURRENT_TIMESTAMP ), 112 ) END
WHEN 1 THEN ‘01′ WHEN 2 THEN ‘02′ WHEN 3 THEN ‘03′
WHEN 4 THEN ‘04′ WHEN 5 THEN ‘05′ WHEN 6 THEN ‘06′
WHEN 7 THEN ‘07′ WHEN 8 THEN ‘08′ WHEN 9 THEN ‘09′
ELSE CONVERT ( nvarchar ( 2 ),DAY( CURRENT_TIMESTAMP ), 112 ) END
REPLACE ( REPLACE ( CAST ( CONVERT ( time ( 7 ),CURRENT_TIMESTAMP, 109 ) AS nvarchar ( 14 )), ‘:’ , ” ), ‘.’ , ‘_’ );
– Добавляем к пути и фамилии файла личные номера и расширения
SELECT @взаправду низкорослою, @File2 = @FileName + + ‘02.bak’ , @File3 = @FileName + + ‘03.bak’
– совершенно Запускаем особенно резервное копирование в 3 файла.
WITH NOFORMAT, NOINIT, SKIP, REWIND, NOUNLOAD, COMPRESSION, STATS = 10
Вы должны быть зарегистрироавны чтобы оставить комментарий.