go backsqlschool blogs list

Μήπως έχετε ξεχάσει κάποια database να την πάρετε backup;

by Antonios Chatzipavlis

Είστε σίγουροι ότι έχετε πάρει έστω και μια φορά όλες τις databases σας backup;

Ειδικά εσείς αγαπητοί συνάδελφοι που έχετε πολλές databases είστε σίγουροι;

Η απάντηση στο ερώτημα αυτό είναι η παρακάτω stored procedure η οποία θα σας επιστρέψει αμέσως όλες τις database που έχετε ξεχάσει να πάρετε backup.

create proc dbo.spUnbackupedDbs
@backup_type char(1)='D',
@time_span_days int=5
as
-- Created by Antonios Chatzipavlis
--
-- This stored procedure returns all databases in a server
-- ( except model and tempdb ) at which I have not take any backup
-- for a specific days from the current day
--
-- Parameters
--
-- @backup_type : defines the backup type
-- VALID VALUES
-- 'D' : Full Backup (DEFAULT VALUE)
-- 'I' : Diffential
-- 'L' : Transaction Log
-- 'F' : File or Filegroup
-- 'G' : File Diffential
-- 'P' : Partial
-- 'Q' : Partial Differential
--
-- @time_span_days : defines the amount of days ( DEFAULT VALUE is 5 DAYS )

select
a.[name] as database_name
from master.dbo.sysdatabases a
left join msdb.dbo.backupset b on a.[name] = b.database_name
and
datediff(day,b.backup_finish_date,getdate())<@time_span_days
and
b.type=@backup_type
where a.[name] not in ('model','tempdb')
and b.database_name is null
go

Δημιουργήστε πρώτα την stored procedure τρέχοντας το παραπάνω script και εφόσον όλα πάνε καλά εκτελέστε την όπως παρακάτω

exec spUnbackupedDbs
Ημερομηνία: 02 July 2009 18:55
Αξιολόγηση:
Κατηγορίες:
Tags:
Share it:

Αφήστε το σχόλιο σας - Leave your comment

Τα σχόλια έχουν κλείσει.
Επιτρέπονται μόνο τα σχόλια από τα μέλη του SqlSchool.gr.


newsletter subscription

Εάν επιθυμείτε να λαμβάνετε ενημέρωση από εμάς, δώστε μας το e-mail σας.
PASS chapter logo
Official Professional Association for SQL Server (PASS) chapter for Greece
Join to PASS