تبليغاتX
UNiComp.iR | Download Direct Tutorials Video , Film | دانلودمستقیم فیلم آموزشی،کتاب،جزوه،مقاله

گزارشگيري از تاريخچه‌ي پشتيبان‌گيري‌ها در اس كيوال سرور


آيا مي‌دانيد آخرين باري كه از يك ديتابيس مفروض بك‌آپ گرفته شده، چه زماني بوده است؟ (يا اينكه اصلا چه اهميتي داره؟!)


USE master;
SELECT B.name AS Database_Name,
   ISNULL(STR(ABS(DATEDIFF(day, GetDate(),
   MAX(Backup_finish_date)))), 'NEVER') AS DaysSinceLastBackup,
   ISNULL(CONVERT(char(10), MAX(backup_finish_date), 101), 'NEVER') AS
   LastBackupDate
FROM   master.dbo.sysdatabases B
LEFT OUTER JOIN   msdb.dbo.backupset A
ON   A.database_name = B.name
AND   A.type = 'D'
GROUP BY
   B.Name
ORDER BY
   B.name

همانطور كه مطلع هستيد در SQL Server 2008 امكان فشرده سازي خودكار بك آپ‌ها هم فراهم شده است. با استفاده از اسكريپت زير مي‌توان از درصد فشرده سازي بك‌آپ‌ها گزارش گرفت:

SELECT bs.server_name,
   bs.database_name AS 'Database Name',
   CONVERT (BIGINT, bs.backup_size / 1048576 ) AS
   'Uncompressed Backup Size (MB)',
   CONVERT (BIGINT, bs.compressed_backup_size / 1048576 ) AS
   'Compressed Backup Size (MB)',
   CONVERT (NUMERIC (20,2), (CONVERT (FLOAT, bs.backup_size) /
   CONVERT (FLOAT, bs.compressed_backup_size))) AS 'Compression Ratio',
   DATEDIFF (SECOND, bs.backup_start_date, bs.backup_finish_date) AS
   'Backup Elapsed Time (sec)',
   bs.backup_finish_date AS 'Backup Finish Date'
FROM   msdb.dbo.backupset AS bs
WHERE  DATEDIFF (SECOND, bs.backup_start_date, bs.backup_finish_date) > 0
AND  bs.backup_size > 0
AND  bs.type = 'D' -- Change to L if you want Log backups
ORDER BY
   bs.backup_finish_date DESC


 



براي فعال سازي گزينه فشرده سازي بك‌آپ‌ها با استفاده از دستورات T-SQL مي‌توان به صورت زير عمل كرد (در SQL server 2008):

USE master;
EXEC sp_configure 'backup compression default', '1';
RECONFIGURE WITH OVERRIDE;

ماخذ مورد استفاده:
http://www.sqlservercentral.com


Search Engine Submission - AddMe