SINGLE T-sqlクエリを使用すると、次のことがわかります。1.データベースバックアップモード-[full、simple、bulk] 2. ISデータベースがバックアップ用にスケジュールされている[yes、no] 3.バックアップが有効になっている場合、DBバックアップのサイズ
および毎日のトランザクションログのバックアップサイズ?ヘルプ
SINGLE T-sqlクエリを使用すると、次のことがわかります。1.データベースバックアップモード-[full、simple、bulk] 2. ISデータベースがバックアップ用にスケジュールされている[yes、no] 3.バックアップが有効になっている場合、DBバックアップのサイズ
および毎日のトランザクションログのバックアップサイズ?ヘルプ
この種の情報については、msdbバックアップセットテーブルにクエリを実行できます。
SELECT
database_name,
recovery_model,
CASE bs.type
WHEN 'D' THEN 'FULL'
WHEN 'I' THEN 'DIFFERENTIAL'
WHEN 'L' THEN 'TRANSACTION LOG'
ELSE 'UNKNOWN'
END AS backup_type,
backup_finish_date,
backup_size,
compressed_backup_size
FROM msdb.dbo.backupset bs
編集:
このクエリは、データベース名、リカバリモデル、および完全バックアップ、差分バックアップ、およびログバックアップの最終日時を返します。データベースが最後のFULLに対してNULLを返した場合、データベースはまったくバックアップされていません。最後のトランザクションログに対してNULLを返し、データベースが完全復旧を使用している場合、正しくバックアップされていません。
SELECT
d.name,
d.recovery_model_desc,
MAX(CASE bs.type WHEN 'D' THEN backup_finish_date ELSE NULL END) AS [last_full_backup_date],
MAX(CASE bs.type WHEN 'I' THEN backup_finish_date ELSE NULL END) AS [last_diff_backup_date],
MAX(CASE bs.type WHEN 'L' THEN backup_finish_date ELSE NULL END) AS [last_tlog_backup_date]
FROM sys.databases d
LEFT JOIN msdb.dbo.backupset bs ON bs.database_name = d.name
GROUP BY d.name, d.recovery_model_desc