IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Administration SQL Server Discussion :

Backup de base de données.


Sujet :

Administration SQL Server

  1. #1
    Nouveau membre du Club
    Inscrit en
    Septembre 2002
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 31
    Points : 27
    Points
    27
    Par défaut Backup de base de données.
    Bonjour, je suis en train d'élaborer un script de sauvegarde pour ma base de données avec la commande suivante :
    "BACKUP DATABASE wcrp TO backup_wcrp"...

    Jusque là, rien de compliqué me direz vous...
    Mais, je n'arrive pas à trouver les bonnes options de sauvegarde.

    Voici ce que j'aimerai arriver à faire :
    - sauvegarde sur une unité de backup ===> "backup_wcrp" ça c'est bon.

    J'aimerai également garder les sauvegardes 5 jours en les ajoutant les unes après les autres dans l'unité. Et qu'elles se suppriment automatiquement de l'unité lorsqu'elles sont expirées.

    Pour le moment, je peux ajouter des sauvegardes à mon unité (autant que je le souhaite) avec une date d'expiration. Mais le problème est que les expirées ne se suppriment pas...


    Je ne sais pas quelles options utiliser...
    Pourriez vous m'éclairer sur le sujet, car j'ai épluché la doc et le forum sans trouver de réponses à ma question.

  2. #2
    Membre éclairé
    Avatar de m-mas
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2003
    Messages
    576
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2003
    Messages : 576
    Points : 719
    Points
    719
    Par défaut
    Tu veux supprimer physiquement la sauvegarde expiré ?
    Ton script, il est écrit en VBS ou en quel langage ?

  3. #3
    Nouveau membre du Club
    Inscrit en
    Septembre 2002
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 31
    Points : 27
    Points
    27
    Par défaut
    J'utilise un script TSQL directement.

    Je souhaite garder plusieurs sauvegardes dans la même untié mais uniquement celles n'ayant pas expirées.

  4. #4
    Rédacteur/Modérateur

    Avatar de Fabien Celaia
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2002
    Messages
    4 224
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2002
    Messages : 4 224
    Points : 19 566
    Points
    19 566
    Billets dans le blog
    25
    Par défaut
    Pourquio ne pas le faire simplement à l'aide de l'agent MS (en tant que job SQL Server Manager) ?

  5. #5
    Nouveau membre du Club
    Inscrit en
    Septembre 2002
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 31
    Points : 27
    Points
    27
    Par défaut
    Tout simplement car c'est une application externe qui va faire la manipulation.

    En fait l'appli fait une sauvegarde de la base avant d'analyser la structure de celle-ci et de la mettre à jour le cas échéant....

    C'est pour ça que je dois le faire avec un script TSQL.

  6. #6
    Membre habitué
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    291
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2005
    Messages : 291
    Points : 126
    Points
    126
    Par défaut
    Je fais la même chose directement avec script de sqlagent. Dont j’ai decomposé en 3 étapes
    1 step ) name : Delete old files

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
     
    declare @db_name varchar(255)
    declare @backup_dir varchar(255)
    declare @cmd varchar(255)
    declare @extension varchar(5)
    declare @serverName varchar(255)
    declare @strSql varchar(8000)
     
    set @serverName = 'SQLBRU01'
    set @db_name = 'ERSS'
    set @backup_dir = 'I:\Backup\'
    set @extension = 'BAK'
     
    --Clean
     
    --delete 7 day old
    set @cmd = 'del '+ @backup_dir + @db_name + '_db_' + Convert(varchar,getdate()-7,112) + '*.' + @extension
    print @cmd
    exec master..xp_cmdshell @cmd 
    --delete 8 day old
    set @cmd = 'del '+ @backup_dir + @db_name + '_db_' + Convert(varchar,getdate()-8,112) + '*.' + @extension
    print @cmd
    exec master..xp_cmdshell @cmd 
    --delete 9 day old
    set @cmd = 'del '+ @backup_dir + @db_name + '_db_' + Convert(varchar,getdate()-9,112) + '*.' + @extension
    print @cmd
    exec master..xp_cmdshell @cmd 
    --delete 10 day old
    set @cmd = 'del '+ @backup_dir + @db_name + '_db_' + Convert(varchar,getdate()-10,112) + '*.' + @extension
    print @cmd
    exec master..xp_cmdshell @cmd 
    --delete 11 day old
    set @cmd = 'del '+ @backup_dir + @db_name + '_db_' + Convert(varchar,getdate()-11,112) + '*.' + @extension
    print @cmd
    exec master..xp_cmdshell @cmd 
    --delete 12 day old
    set @cmd = 'del '+ @backup_dir + @db_name + '_db_' + Convert(varchar,getdate()-12,112) + '*.' + @extension
    print @cmd
    exec master..xp_cmdshell @cmd 
    --delete 13 day old
    set @cmd = 'del '+ @backup_dir + @db_name + '_db_' + Convert(varchar,getdate()-13,112) + '*.' + @extension
    print @cmd
    exec master..xp_cmdshell @cmd 
     
    --delete 14 day old
    set @cmd = 'del '+ @backup_dir + @db_name + '_db_' + Convert(varchar,getdate()-14,112) + '*.' + @extension
    print @cmd
    exec master..xp_cmdshell @cmd
    2 step ) name : backup Errs

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
     
    declare @db_name varchar(255)
    declare @backup_dir varchar(255)
    declare @cmd varchar(255)
    declare @extension varchar(5)
    declare @serverName varchar(255)
    declare @strSql varchar(8000)
     
    set @serverName = 'SQLBRU01'
    set @db_name = 'ERSS'
    set @backup_dir = 'I:\Backup\'
    set @extension = 'BAK'
     
     
     
    --Backup
    set @strSql = 'master.dbo.xp_backup_database @database='''+@db_name+''', @filename='''+ @backup_dir + @db_name + '_db_' + Convert(varchar,getdate(),112) + '.' + @extension+''', @backupname='''+@db_name+''', @desc=''Backup of CdbProdV2 on 2004-04-14 23:31:14'', @init = 1, @threads = 2,  @servername = '''+@serverName +''''
    print @strSql
    execute( @strSql)
    3 setp check

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    declare @db_name varchar(255)
    declare @backup_dir varchar(255)
    declare @cmd varchar(255)
    declare @extension varchar(5)
    declare @serverName varchar(255)
    declare @strSql varchar(8000)
     
    set @serverName = 'SQLBRU01'
    set @db_name = 'ERSS'
    set @backup_dir = 'I:\Backup\'
    set @extension = 'BAK'
     
     
    --Check
    set @strSql =  'master.dbo.xp_restore_verifyonly @filename= '''+ @backup_dir + @db_name + '_db_' + Convert(varchar,getdate(),112) + '.' + @extension+''''
    print @strSql
    execute( @strSql)

  7. #7
    Nouveau membre du Club
    Inscrit en
    Septembre 2002
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 31
    Points : 27
    Points
    27
    Par défaut
    oui mais le problème est que je travaille avec une unité de sauvegarde et non pas des fichiers de backup classique.

    C'est à dire que mon fichier de backup contient xx sauvegardes différentes dont certaines étant expirées, c'est de celles là que je souhaite me débarasser...

  8. #8
    Membre habitué
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    291
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2005
    Messages : 291
    Points : 126
    Points
    126
    Par défaut
    je ne sais pas t'aider Sorry

Discussions similaires

  1. [SQL2K5] Script Backup de base de données
    Par CarlaJohnson dans le forum Administration
    Réponses: 11
    Dernier message: 10/08/2010, 11h46
  2. Restauration backup de base de donnée MS SQL SERVER
    Par kfmystik dans le forum Administration
    Réponses: 1
    Dernier message: 26/04/2009, 11h18
  3. Grosse backup de base de données
    Par iowa dans le forum Administration
    Réponses: 4
    Dernier message: 08/04/2008, 13h37
  4. Backup de base de données
    Par pelloq1 dans le forum Requêtes
    Réponses: 3
    Dernier message: 04/03/2008, 12h29
  5. outils de "backup " de base de données
    Par yaobi dans le forum PostgreSQL
    Réponses: 11
    Dernier message: 20/07/2005, 12h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo