Méthodes de déplacement d'une géodatabase dans SQL Server
Il existe plusieurs méthodes pour déplacer une géodatabase : vous pouvez créer une géodatabase et déplacer les données, ou déplacer la base de données dans son intégralité. Microsoft SQL Server propose plusieurs options de déplacement d'une base de données.
Création d'une géodatabase, puis déplacement des données
Vous pouvez créer une base de données SQL Server, y créer une géodatabase, puis déplacer vos données existantes vers la nouvelle géodatabase. Cette opération peut s'effectuer via un copier-coller, l'outil d'exportation, l'assistant d'exportation de données ou les documents d'espace de travail XML dans ArcGIS.
L'utilisateur qui s'est connecté lors du chargement des données vers la nouvelle géodatabase sera propriétaire de ces données. Pour que les données aient le même propriétaire dans la nouvelle géodatabase, chaque utilisateur doit déplacer ses propres données.
Déplacement d'une base de données SQL Server
Les options de déplacement d'une base de données SQL Server incluent le détachement et le rattachement, la sauvegarde et la restauration, ou l'utilisation de l'Assistant Copie de base de données.
Quelle que soit la méthode que vous utilisez pour déplacer votre base de données SQL Server, vous ne pouvez pas renommer la base de données. En revanche, vous pouvez renommer une base de données lorsque vous la restaurez. Evitez de le faire avec une géodatabase, car vous ne pourrez plus vous y connecter.
Tous les noms d'objet dans les tables système de la géodatabase sont complets avec le nom de la base de données. En outre, de nombreuses procédures stockées utilisent une syntaxe de dénomination composée de trois parties dans leur code et dont le format est <base de données>.<propriétaire>.<objet>. Si le nom de la base de données change, vous ne pourrez pas exécuter ces procédures.
Détachement et rattachement
La méthode la plus simple pour déplacer une géodatabase stockée dans une base de données SQL Server locale consiste à détacher la base de données du serveur source et à l'attacher au serveur de destination. Gardez les points suivants à l'esprit :
- Personne ne peut être connecté à la base de données lorsque vous la détachez.
- La base de données se ferme lorsque vous la détachez.
- Détacher/attacher une base de données peut être plus rapide que la sauvegarder et la restaurer.
- Détacher/attacher des bases de données crée des bases de données identiques sur les serveurs source et de destination.
- Cette méthode est utile pour déplacer de grandes quantités de données.
- Vous devez disposer, au minimum, des autorisations db_owner sur la base de données pour la détacher de l'instance SQL Server.
- Vous devez disposer des autorisations CREATE DATABASE pour attacher une base de données à l'instance SQL Server.
- Pour les géodatabases ArcSDE pour SQL Server sous licence ArcGIS for Server dans sa version Enterprise, vous pouvez répertorier les données et les fichiers journaux dans la commande CREATE DATABASE FOR ATTACH SQL.
Restauration de la sauvegarde d'une autre base de données
Une autre solution pour déplacer une base de données SQL Server locale consiste à effectuer une sauvegarde complète de la base de données, puis à restaurer le fichier de la sauvegarde sur votre serveur de destination. Gardez les points suivants à l'esprit :
- Vous ne pouvez pas changer le nom du fichier logique pendant l'opération de restauration.
- Des utilisateurs peuvent être attachés pendant le processus de sauvegarde, mais pas pendant le processus de restauration.
Pour plus d'information sur la restauration des sauvegardes de bases de données SQL Server, consultez la documentation SGBD de SQL Server.
Assistant Copie de base de données
S'applique uniquement aux géodatabases créées avec ArcGIS for Server dans sa version Enterprise uniquement.
SQL Server Management Studio comporte un Assistant Copie de base de données qui vous permet de déplacer des bases de données. Tenez compte des points suivants lorsque vous utilisez l'Assistant Copie de base de données :
- Vous pouvez copier plusieurs bases de données.
- L'Assistant Copie de base de données ne peut pas être utilisé pour faire une copie d'une base de données sur la même instance.
- Vous ne pouvez pas exclure des identifiants utilisateur de l'Assistant Copie de base de données pour qu'ils accèdent à la base de données copiée avec un nouvel ID utilisateur de Serveur (SID).
- Pour pouvoir utiliser l'Assistant les serveurs source et cible doivent être connectés.