H4.3. Commandes de gestion de la base de données

Initialisation de la base de données

Lors de l’initialisation, la base de données doit être absente ou vide.

drwcsd [<clés>] initdb [<clé_de_licence>|- [<script_sql>|- [<fichier_ini>|- [<mot_de_passe> [<script_lua>|-]]]]] : initialisation de la base de données.

<clé_de_licence>  : chemin vers la clé de licence Dr.Web agent.key. Si la clé de licence n’est pas indiquée, il faudra l’ajouter plus tard depuis le Centre de gestion ou bien la recevoir du Serveur voisin par la liaison entre serveurs.

<script_sql> : chemin vers le script sql pour l’initialisation de la structure physique de la base de données.

<fichier_ini> — fichier préconfiguré au format drweb32.ini qui détermine la configuration initiale des composants Dr.Web (pour le groupe Everyone).

<mot_de_passe> — mot de passe initial de l’administrateur du Serveur (le nom est admin). Par défaut c’est root.

<script_lua> : chemin vers le script lua pour l’initialisation de la base de données (la base de données est remplie de valeurs par défaut).

La valeur spéciale « – » (moins) enjoint de ne pas utiliser ce paramètre.

Le signe « moins » peut être omis s’il n’y a pas de paramètres après.

Configuration de l’initialisation de la base de données

En cas d’utilisation de la BD interne, les paramètres d’initialisation peuvent être spécifiés depuis un fichier externe. Dans ce cas-là, la commande suivante est utilisée :

drwcsd.exe initdbex <response-file>

<response-file> : fichier dans lequel sont enregistrés les paramètres d’initialisation de la BD, chacun d’eux à la ligne et dans le même ordre que les paramètres de la commande initdb.

Format du fichier :

<nom_complet_du_fichier_de_clé_de_licence>

<nom_complet_du_fichier_de_script_sql>

<nom_complet_du_fichier_ini>

<mot_de_passe_d’administrateur>

En cas d’utilisation du fichier response sous Windows, il est possible d’utiliser n’importe quels symboles dans le mot de passe administrateur.

Les dernières lignes qui suivent le paramètre ne sont pas obligatoires. Si la ligne représente le signe "-" (un signe moins), la valeur par défaut sera appliquée (comme en cas de initdb).

Mise à jour de la base de données

drwcsd [<clés>] updatedb <script> : effectuer une manipulation avec la base de données (par exemple une mise à jour en cas de changement de version) en exécutant le script SQL ou LUA depuis le fichier indiqué.

Mise à jour de la version de la base de données

drwcsd upgradedb [<répertoire>] : démarrer le Serveur pour mettre à jour la structure de la base de données lors de la mise à niveau vers une nouvelle version depuis le répertoire indiqué (voir le répertoire update-db) ou par les scripts internes.

Exportation de la base de données

a)drwcsd exportdb <fichier> : exportation de la base de données vers le fichier spécifié.

Exemple pour Windows :

C:\Program Files\DrWeb Server\bin\drwcsd.exe -home="C:\Program Files\DrWeb Server" -var-root="C:\Program Files\DrWeb Server\var" -verbosity=all exportdb "C:\Program Files\DrWeb Server\esbase.es"

Sous les OS de la famille UNIX, l’action s’exécute du nom de l’utilisateur drwcs:drwcs vers le répertoire $DRWCS_VAR (excepté FreeBSD, qui enregistre par défaut le fichier vers le répertoire depuis lequel a été lancé le script ; si le chemin est spécifié de manière explicite, le répertoire doit être disponible en écriture pour <utilisateur>:<groupe> qui ont été créés lors de l’installation, par défaut c’est drwcs:drwcs).

b)drwcsd xmlexportdb <xml-file> — exportation de la base de données vers le fichier xml spécifié.

Si vous indiquez pour le fichier l’extension gz, lors de exportation le fichier de la base de données sera placé dans une archive gzip.

Si vous n’indiquez aucune extension ou que vous indiquez l’extension autre que gz, le fichier d’exportation ne sera pas archivé.

Exemple pour Windows :

Pour exporter la base de données vers le fichier xml sans compression :

"C:\Program Files\DrWeb Server\bin\drwcsd.exe" "-home=C:\Program Files\DrWeb Server" "-bin-root=C:\Program Files\DrWeb Server" "-var-root=C:\Program Files\DrWeb Server\var" -verbosity=ALL -rotate=10,10m -log=export.log xmlexportdb database.db

Pour exporter la base de données vers le fichier xml archivé :

"C:\Program Files\DrWeb Server\bin\drwcsd.exe" "-home=C:\Program Files\DrWeb Server" "-bin-root=C:\Program Files\DrWeb Server" "-var-root=C:\Program Files\DrWeb Server\var" -verbosity=ALL -rotate=10,10m -log=export.log xmlexportdb database.gz

Exemple pour les OS de la famille UNIX :

Pour exporter la base de données vers le fichier xml sans compression :

/etc/init.d/drwcsd xmlexportdb /es/database.db

Pour exporter la base de données vers le fichier xml archivé :

/etc/init.d/drwcsd xmlexportdb /es/database.gz

Importer la base de données

a)drwcsd importdb <fichier> : importation de la base de données depuis le fichier spécifié (le contenu précédent de la BD sera effacé).

b)drwcsd upimportdb <fichier> [<répertoire>] : importation et mise à jour de la base de données obtenue lors de l’exportation depuis le Serveur des versions précédentes (l’ancien contenu de la BD est effacé). Vous pouvez également spécifier le chemin vers le répertoire contenant les scripts pour la mise à jour de la structure de la base de données effectuée lors de la mise à niveau vers la nouvelle version (équivalent a la commande upgradedb).

c)drwcsd xmlimportdb <xml-file> : importation de la base de données depuis le fichier xml spécifié.

d)drwcsd xmlupimportdb <fichier xml> [<répertoire>] : importation et mise à jour de la base de données obtenue lors de l’exportation xml depuis le Serveur des versions précédentes. Vous pouvez également spécifier le chemin vers le répertoire contenant les scripts pour la mise à jour de la structure de la base de données effectuée lors de la mise à niveau vers la nouvelle version (équivalent a la commande upgradedb).

e)drwcsd xmlimportdbnh <fichier xml> : importation de la base de données depuis le fichier xml indiqué sans compter le hash. Peut être utilisé, par exemple, si le fichier xml de la base de données a été édité manuellement et le hash de fichier enregistré automatiquement lors de l’exportation n’est plus actuel.

Avant d’exécuter les commandes upimportdb et xmlupimportdb, il est nécessaire de réaliser une copie de sauvegarde de la base de données.

Tous problèmes survenus lors de l’exécution de ces commandes peuvent provoquer la suppression de toute l’information de la base de données.

 

L’utilisation des commandes upimportdb et xmlupimportdb pour l’importation avec la mise à niveau de la base de données est possible uniquement au sein d’un seul SGBD.

Dump de l’exportation de la base de données

drwcsd [< cles >] dumpimportdb < fichier_de_la_BD> [<fichier_SQL> [<filtre_de_tableaux>]] : enregistrer les informations détaillées sur la base de données intégrée ou externe dans le fichier du journal du Serveur ou dans le fichier SQL.

L’importation ou l’exportation de la base de données ne s’effectue pas lors de l’exécution de la commande dumpimportdb.

<fichier_de_la_BD> : le fichier d’exportation de la base de données. Les informations sur la base de données seront enregistrées dans le journal du Serveur ou dans le <fichier_SQL>. Vous pouvez obtenir le fichier d’exportation à l’aide de la commande exportdb. Vous pouvez également utiliser le fichier obtenu lors de la copie de sauvegarde de la base de données. Le fichier XML obtenu à l’aide de la commande xmlexportdb n’est pas accepté.

<fichier_SQL> : le fichier d’enregistrement de toutes les requêtes SQL qui seront exécutées en cas d’importation de la base de données depuis le fichier indiqué dans le <fichier_de_la_BD>. Si le fichier SQL n’est pas spécifié, les requêtes seront enregistrées dans le journal du Serveur (sous forme des tableaux et de leurs champs). Si le fichier est spécifiée, les requêtes seront enregistrées uniquement dans le fichier SQL.

<filtre_de_tableaux> : la liste des tableaux des bases de données. Les informations sur les bases de données seront affichées dans le <fichier_SQL>. Les noms de tableaux doivent être séparés par une virgule. Les noms doivent correspondre aux noms des tableaux dans la base de données. Par exemple, admins,groups,stations. Le filtre des tableaux est valide uniquement en cas de sortie dans le fichier SQL. Si la liste de tableaux n’est pas indiquée, tous les tableaux sont affichés.

Vérification de la base de données

drwcsd verifydb : démarrer le Serveur pour analyser la base de données. A la fin de l’analyse, le Serveur écrit des informations sur les résultats dans le fichier de journal (par défaut – drwcsd.log).

Accélération de la base de données

drwcsd [<clés>] speedupdb : exécuter les commandes VACUUM, CLUSTER, ANALYZE pour accélérer le fonctionnement de la BD.

Restauration de la base de données

drwcsd repairdb : restaurer l’image endommagée de la base de données intégrée SQLite3 ou des tableaux endommagés de la base de données externe MySQL.

La restauration de SQLite3 peut également s’effectuer automatiquement au lancement du Serveur, si la case Restaurer automatiquement l’image endommagée a été cochée dans les paramètres de la base de données SQLite3, dans le Centre de gestion (voir le Manuel administrateur, le p. Restauration de la base de données).

Nettoyer la base de données

drwcsd cleandb : nettoyer la base de données du Serveur par la suppression de tous les tableaux.