J'augmente la taille du back-end de l'application Access d'un client demain et je dois être prêt avec un plan pour un problème particulier avec ce client. Le patron doit être en mesure de sortir le fichier de données du bureau où se trouve le serveur SQL sur une base régulière (généralement mensuelle) et d'effectuer des analyses statistiques sur les données.
J'ai regardé Le moyen le plus simple de copier une base de données complète d'un serveur SQL vers un serveur SQL Express local. et les solutions proposées ne fonctionnent pas dans ce scénario car.. :
-
ne peut pas utiliser une solution ponctuelle (Assistant de publication de base de données), car celle-ci doit pouvoir être scriptée.
-
Je ne peux pas utiliser de méthode qui dépende de la mise en réseau des deux ordinateurs, car ce n'est pas une option - les données doivent être transférées via une clé USB (donc, pas de réplication).
-
ne peut pas utiliser une méthode qui dépend de l'exécution des outils de gestion du serveur SQL à partir de la console du serveur ou de la station de travail pour la sauvegarde.
-
ne peut pas se connecter directement à la base de données SQL Server pour l'analyse, car les données doivent être portables vers d'autres emplacements.
Ce dont j'ai besoin, c'est d'un moyen d'appeler un script qui crée un fichier de sauvegarde, puis de copier le résultat sur la clé USB. J'ai ensuite besoin d'un second script pour copier le fichier de sauvegarde depuis la clé USB et le restaurer sur l'autre serveur SQL.
Les données transportées sont en lecture seule (c'est-à-dire que les modifications apportées n'ont pas besoin de revenir au serveur principal), et les données ne seront pas mises à jour dans le second emplacement. Le script est actuellement composé d'un simple fichier batch pour copier le fichier MDB du serveur principal, et j'ai besoin de quelque chose d'aussi simple pour l'utilisateur.
Il ne peut pas avoir de dépendances sur, par exemple, Powershell (de SQL Server Management Studio), parce que je ne veux pas qu'il doive être installé sur l'ordinateur à partir duquel l'utilisateur exécute le script (il y a une demi-douzaine de postes de travail à partir desquels le script doit pouvoir être exécuté, et je ne veux pas avoir à installer quelque chose sur chacun d'eux).
Je vais configurer l'agent de sauvegarde pour qu'il crée une sauvegarde chaque nuit, de sorte que je pourrais peut-être copier ce fichier sans avoir besoin de lancer la sauvegarde avant la copie. Ainsi, je pourrais n'avoir besoin que de script la restauration sur l'ordinateur cible.
Réflexions, suggestions, conseils ?