DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Gestion des bases de données / HFSQL / Fonctions HFSQL Client/Serveur
  • Droits nécessaires pour restaurer une sauvegarde
  • Restauration effectuée depuis le Centre de Contrôle HFSQL
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
Permet de restaurer :
  • une sauvegarde immédiate (effectuée grâce à la fonction HSauvegarde ou via le Centre de Contrôle HFSQL).
  • une sauvegarde planifiée (décrite à l'aide de la fonction HAjouteSauvegardePlanifiée ou via le Centre de Contrôle HFSQL).
La sauvegarde restaurée peut être une sauvegarde complète ou différentielle.
Attention: la restauration d'une sauvegarde doit être effectuée avec précaution.
Pour effectuer cette opération, il est nécessaire d'avoir le droit de sauvegarde (hDroitSauvegarde) ainsi que le droit de bloquer la base de données (hDroitBlocage).
Pour restaurer tout le serveur (ou les bases __jnl et __trs), aucune autre application ne doit être connectée au serveur. La connexion utilisée ne doit pas être attachée à une base de données (lors de l'appel à la fonction HOuvreConnexion, le paramètre <Base de données> doit correspondre à chaîne vide ("")).
Pour restaurer uniquement des bases de données, aucune connexion ne doit être faite sur la base à restaurer.
Dupliquer une base de données : Une syntaxe spécifique de la fonction HRestaureSauvegarde (syntaxe 2) permet de restaurer la sauvegarde d'une base de données sous un nom différent. Il est ainsi possible de faire une copie d'une base en la renommant. Par exemple : pour faire une copie de la base MaBase2008 en la renommant en MaBase2009, il suffit de faire une sauvegarde de MaBase2008 puis de la restaurer sous le nom MaBase2009.
cnxServeur est une Connexion
 
// Restauration d'une sauvegarde
SI HRestaureSauvegarde(cnxServeur, IDSauvegarde) = Faux ALORS
Erreur("Echec de la restauration de la sauvegarde" + HErreurInfo(hErrMessage))
FIN
cnxServeur est une Connexion
 
// Restauration d'une sauvegarde complète et différentielle
InfoSauvegarde = HInfoSauvegarde(cnxServeur, IDSauvegarde)
CheminSauvegarde_Diff = ExtraitChaîne(InfoSauvegarde, 4, TAB)
 
InfoSauvegarde = HInfoSauvegarde(cnxServeur, IDSauvegarde_Complète)
CheminSauvegarde_Comp = ExtraitChaîne(InfoSauvegarde, 4, TAB)
 
SI HRestaureSauvegarde(cnxServeur, CheminSauvegarde_Comp, CheminSauvegarde_Diff) = Faux ALORS
Erreur("Echec de la restauration de la sauvegarde" + HErreurInfo(hErrMessage))
FIN
Syntaxe

Restauration d'une sauvegarde à partir de son identifiant ou de son chemin Masquer les détails

<Résultat> = HRestaureSauvegarde(<Connexion> , <Sauvegarde> [, <Jauge>])
<Résultat> : Booléen
  • Vrai si la restauration de la sauvegarde a été effectuée,
  • Faux dans le cas contraire. La fonction HErreur permet d'identifier l'erreur.
<Connexion> : Chaîne de caractères ou variable de type Connexion
Connexion vers le serveur où la restauration doit être effectuée. Cette connexion correspond :
<Sauvegarde> : Entier ou chaîne de caractères
Peut correspondre à :
  • Identifiant de la sauvegarde. Cet identifiant peut correspondre à l'identifiant d'une sauvegarde complète ou d'une sauvegarde différentielle.
    Lors d'une sauvegarde immédiate, cet identifiant est renvoyé par la fonction HSauvegarde. Cet identifiant peut également être obtenu grâce à la fonction HInfoSauvegarde.
    Lors d'une sauvegarde planifiée, cet identifiant correspond à la propriété Identifiant de la variable hDescriptionSauvegarde.
  • Chemin et nom de la sauvegarde à restaurer. Ce nom a été spécifié lors de la sauvegarde. Ce nom peut également être obtenu grâce à la fonction HInfoSauvegarde. Si ce nom correspond à un chemin relatif, la sauvegarde sera recherchée dans le sous-répertoire "Backup" du serveur HFSQL. Pour spécifier le répertoire du service Manta, il suffit d'utiliser la chaîne de caractères "%%EXE%%".
<Jauge> : Nom de fenêtre optionnel, nom de champ optionnel ou entier optionnel
  • Nom de la fenêtre dans laquelle la jauge doit être affichée ou nom du champ de type Jauge.
  • Identifiant (Handle) de la fenêtre qui affiche la jauge.
WEBDEV - Code Serveur Ce paramètre est ignoré.

Restauration d'une sauvegarde sous un nom de base de données différent Masquer les détails

<Résultat> = HRestaureSauvegarde(<Connexion> , <Sauvegarde> , <Base de données source> , <Base de données destination> [, <Jauge>])
<Résultat> : Booléen
  • Vrai si la restauration de la sauvegarde a été effectuée,
  • Faux dans le cas contraire. La fonction HErreur permet d'identifier l'erreur.
<Connexion> : Chaîne de caractères ou variable de type Connexion
Connexion vers le serveur où la restauration doit être effectuée. Cette connexion correspond :
<Sauvegarde> : Entier ou chaîne de caractères
Peut correspondre :
  • Identifiant de la sauvegarde renvoyé par la fonction HSauvegarde. Cet identifiant peut également être obtenu grâce à la fonction HInfoSauvegarde.
  • Chemin et nom de la sauvegarde à restaurer. Ce nom a été spécifié lors de la sauvegarde. Ce nom peut également être obtenu grâce à la fonction HInfoSauvegarde. Si ce nom correspond à un chemin relatif, la sauvegarde sera recherchée dans le sous-répertoire "Backup" du serveur HFSQL. Pour spécifier le répertoire du service Manta, il suffit d'utiliser la chaîne de caractères "%%EXE%%".
<Base de données source> : Chaîne de caractères
Nom de la base de données à restaurer présente dans la sauvegarde. Cette syntaxe permet de restaurer une seule base de données présente dans la sauvegarde.
<Base de données destination> : Chaîne de caractères
Nom de la base de données qui sera restaurée. Ce nom peut être différent de la base de données source. Dans ce cas, la fonction permet de faire une copie de la base de données avec renommage.
<Jauge> : Nom de fenêtre optionnel, nom de champ optionnel ou entier optionnel
  • Nom de la fenêtre dans laquelle la jauge doit être affichée ou nom du champ de type Jauge.
  • Identifiant (Handle) de la fenêtre qui affiche la jauge.
WEBDEV - Code Serveur Ce paramètre est ignoré.

Restauration d'une sauvegarde différentielle présente dans un répertoire spécifique (disponible à partir de la version 15) Masquer les détails

<Résultat> = HRestaureSauvegarde(<Connexion> , <Sauvegarde complète> , <Sauvegarde différentielle> [, <Jauge>])
<Résultat> : Booléen
  • Vrai si la restauration de la sauvegarde a été effectuée,
  • Faux dans le cas contraire. La fonction HErreur permet d'identifier l'erreur.
<Connexion> : Chaîne de caractères ou variable de type Connexion
Connexion vers le serveur où la restauration doit être effectuée. Cette connexion correspond :
<Sauvegarde complète> : Chaîne de caractères
Chemin et nom de la sauvegarde complète à restaurer. Ce nom a été spécifié lors de la sauvegarde. Ce nom peut également être obtenu grâce à la fonction HInfoSauvegarde. Si ce nom correspond à un chemin relatif, la sauvegarde sera recherchée dans le sous-répertoire "Backup" du serveur HFSQL. Pour spécifier le répertoire du service Manta, il suffit d'utiliser la chaîne de caractères "%%EXE%%".
<Sauvegarde différentielle> : Chaîne de caractères
Chemin et nom de la sauvegarde différentielle à appliquer sur la sauvegarde complète. Ce nom a été spécifié lors de la sauvegarde. Ce nom peut également être obtenu grâce à la fonction HInfoSauvegarde. Si ce nom correspond à un chemin relatif, la sauvegarde sera recherchée dans le sous-répertoire "Backup" du serveur HFSQL. Pour spécifier le répertoire du service Manta, il suffit d'utiliser la chaîne de caractères "%%EXE%%".
<Jauge> : Nom de fenêtre optionnel, nom de champ optionnel ou entier optionnel
  • Nom de la fenêtre dans laquelle la jauge doit être affichée ou nom du champ de type Jauge.
  • Identifiant (Handle) de la fenêtre qui affiche la jauge.
WEBDEV - Code Serveur Ce paramètre est ignoré.
Remarques

Droits nécessaires pour restaurer une sauvegarde

Pour restaurer une sauvegarde, l'utilisateur ou le groupe doit posséder :
  • le droit de faire des sauvegardes (constante hDroitSauvegarde). Ce droit s'applique aux serveurs et aux bases de données.
  • le droit de bloquer la base de données (constante hDroitBlocage). Ce droit s'applique aux bases de données.
Pour savoir si un utilisateur ou un groupe possède ces droits, utilisez la fonction HInfoDroitServeur ou HInfoDroitBaseDeDonnées.
Pour modifier les droits d'un utilisateur ou d'un groupe d'utilisateurs, utilisez la fonction HModifieDroitServeur ou HModifieDroitBaseDeDonnées.

Restauration effectuée depuis le Centre de Contrôle HFSQL

Il est possible de restaurer une sauvegarde depuis le Centre de Contrôle HFSQL. Cette sauvegarde est disponible dans l'onglet "Sauvegardes" de la description du serveur.
Liste des exemples associés :
WD Duplication Exemples didactiques (WINDEV) : WD Duplication
[ + ] Cet exemple didactique montre comment il est possible de dupliquer une base de données sur un serveur.
La duplication s'effectue par programmation et permet de donner un nouveau nom à la base.
L'exemple s'appuie sur les fonctions de sauvegarde et de restauration de sauvegarde HFSQL.
Composante : wd290hf.dll
Version minimum requise
  • Version 12
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 25/05/2022

Signaler une erreur ou faire une suggestion | Aide en ligne locale