Partager via


Exécution de la console SSMA (AccessToSQL)

Microsoft met à votre disposition un ensemble complet de commandes de fichiers script et d'options de ligne de commande pour exécuter et contrôler les activités de l'Assistant Migration SQL Server (SSMA). Les sections suivantes les détaillent.

Commandes de fichier script de projet

Les commandes Projet gèrent la création de projets, l’ouverture, l’enregistrement et la sortie de projets.

create-new-project

Crée un nouveau projet SSMA.

Attribut Valeur par défaut Description Type
project-folder Aucune Indique le dossier du projet créé. Chaîne
project-name Aucune Indique le nom du projet. Chaîne
overwrite-if-exists false Attribut facultatif, spécifiant si un projet existant doit être remplacé. Boolean
project-type sql-server-2008 Attribut facultatif. Les options suivantes sont disponibles pour project-type :

sql-server-2005
sql-server-2008
sql-server-2012
sql-server-2014
sql-server-2016
sql-azure
Chaîne

Exemple de syntaxe

<create-new-project
  project-folder="<project-folder>"
  project-name="<project-name>"
  overwrite-if-exists="<true | false>"
  project-type="<project-type>"
/>

open-project

Ouvre un projet existant.

Attribut Valeur par défaut Description Type
project-folder Aucune Indique le dossier du projet créé. La commande échoue si le dossier spécifié n’existe pas. Chaîne
project-name Aucune Indique le nom du projet. La commande échoue si le projet spécifié n’existe pas. Chaîne

Exemple de syntaxe

<open-project
  project-folder="<project-folder>"
  project-name="<project-name>"
/>

Remarque

L’application SSMA for Access Console prend en charge la compatibilité descendante. Vous pouvez ouvrir des projets créés par la version précédente de SSMA.

save-project

Enregistre le projet de migration.

Exemple de syntaxe

<save-project/>

close-project

Ferme le projet de migration.

Attribut Valeur par défaut Description Type
if-modified ignore Attribut facultatif pour spécifier le comportement. Les valeurs possibles sont : save, error et ignore. Chaîne

Exemple de syntaxe

<close-project
  if-modified="<save/error/ignore>"   (optional)
/>

L’attribut 'if-modified' est facultatif, ignoré par défaut.

Commandes de fichier script de connexion de base de données

Les commandes de connexion de base de données aident à se connecter à la base de données.

La fonctionnalité Parcourir de l’interface utilisateur n’est pas prise en charge dans la console.

Les paramètres d’authentification windows et de port ne s’appliquent pas lors de la connexion à SQL Azure.

Pour plus d’informations, consultez Création de fichiers scripts (AccessToSQL).

connect-source-database

Effectue une connexion à la base de données source et charge des métadonnées de haut niveau de la base de données source, mais pas toutes les métadonnées.

Si la connexion à la source ne peut pas être établie, une erreur est générée et l’application console arrête l’exécution ultérieure

La définition server est récupérée à partir de l’attribut de nom défini pour chaque connexion dans la section server du fichier de connexion du serveur ou du fichier script.

Exemple de syntaxe

<connect-source-database server="<server-unique-name>"/>

load-access-database

Utilisé pour charger les fichiers de base de données d’accès.

Attribut Valeur par défaut Description Type
database-file Aucune Spécifie le chemin d'accès à la base de données. Chaîne

Exemple de syntaxe

<load-access-database  database-file="<Access-database>"/>

- Ou -

<load-access-database>
  <access-database database-file="<Access-database1>"/>
  <access-database database-file="<Access-database2>"/>
</load-access-database>

sourceforce-load ou base de données cible

Charge les métadonnées sources. Utile pour travailler sur le projet de migration hors connexion.

Si la connexion à la source ou à la cible ne peut pas être établie, une erreur est générée et l’application console arrête l’exécution ultérieure.

Nécessite un ou plusieurs nœuds metabase comme paramètre de ligne de commande.

Attribut Valeur par défaut Description Type
object-name Aucune Spécifie le nom de l’objet. Chaîne
metabase Aucune Spécifie le chemin d'accès à la base de données. Les valeurs possibles sont : source ou target Chaîne

Exemple de syntaxe

<force-load
  object-name="<object-name>"
  metabase="<source/target>"/>

- Ou -

<force-load>
  <metabase-object object-name="<object-name>"/>
</force-load>

reconnect-source-database

Se reconnecte à la base de données source, mais ne charge pas de métadonnées contrairement à la commande connect-source-database.

Si (re)connexion avec la source ne peut pas être établie, une erreur est générée et l’application console arrête l’exécution ultérieure.

La définition server est récupérée à partir de l’attribut de nom défini pour chaque connexion dans la section server du fichier de connexion du serveur ou du fichier script.

Exemple de syntaxe

<reconnect-source-database server="<server-unique-name>"/>

connect-target-database

Se connecte à SQL Server ou SQL Azure Database cible et charge les métadonnées de haut niveau de la base de données cible, mais pas entièrement les métadonnées.

Si la connexion à la cible ne peut pas être établie, une erreur est générée et l’application console arrête l’exécution ultérieure.

La définition server est récupérée à partir de l’attribut de nom défini pour chaque connexion dans la section server du fichier de connexion du serveur ou du fichier script.

Exemple de syntaxe

<connect-target-database  server="<server-unique-name>"/>

reconnect-target-database

Se reconnecte à la base de données cible, mais ne charge pas de métadonnées, contrairement à la commande connect-target-database.

Si la (re)connexion à la cible ne peut pas être établie, une erreur est générée et l’application console arrête l’exécution ultérieure.

La définition server est récupérée à partir de l’attribut de nom défini pour chaque connexion dans la section server du fichier de connexion du serveur ou du fichier script.

Exemple de syntaxe

<reconnect-target-database server="<server-unique-name>"/>

Commandes de fichier script de rapport

Les commandes rapport génèrent des rapports sur les performances des différentes activités de la console SSMA

generate-assessment-report

Génère des rapports d’évaluation sur la base de données source.

Si la connexion de base de données source n’est pas effectuée avant d’exécuter cette commande, une erreur est générée et l’application console se ferme.

L’échec de la connexion au serveur de base de données source pendant l’exécution de la commande entraîne également la fin de l’application console.

Script

  • assessment-report-folder : spécifie le dossier dans lequel le rapport d’évaluation peut être stocké. (attribut facultatif)

  • object-name : spécifie le ou les objets pris en compte pour la génération de rapport d’évaluation (il peut avoir des noms d’objets individuels ou un nom d’objet de groupe).

  • object-type : spécifie le type de l’objet spécifié dans l’attribut object-name (si la catégorie d’objet est spécifiée, le type d'objet est « catégorie »).

  • assessment-report-overwrite : spécifie s’il faut remplacer le dossier du rapport d’évaluation s’il existe déjà.

    Valeur par défaut : false. (Attribut facultatif)

  • write-summary-report-to : spécifie le chemin d'accès au dossier dans lequel le rapport sera généré.

    Si seul le chemin d'accès du dossier est mentionné, le fichier par nom AssessmentReport<n>.XML est créé. (Attribut facultatif)

    La création de rapports comporte deux sous-catégories supplémentaires :

    • report-errors (="true/false", avec la valeur par défaut « false » (attributs facultatifs))
    • verbose (="true/false", avec la valeur par défaut « false » (attributs facultatifs))

Exemple de syntaxe

<generate-assessment-report
  object-name="ssma.Procedures"
  object-type="category"
  write-summary-report-to="<file>"             (optional)
  verbose="<true/false>"                       (optional)
  report-errors="<true/false>"                 (optional)
  conversion-report-folder="<folder>"          (optional)
  conversion-report-overwrite="<true/false>"   (optional)
/>

- Ou -

<generate-assessment-report
  conversion-report-folder="<folder>"            (optional)
  conversion-report-overwrite="<true/false>"     (optional)
>
    <metabase-object object-name="ssma.Procedures"
        object-type="category"/>
</generate-assessment-report>

Commandes de fichier script de migration

Les commandes de migration convertissent le schéma de la base de données cible en schéma source et migrent les données vers le serveur cible.

Le paramètre de sortie de la console par défaut pour les commandes de migration est le rapport de sortie « Complet » sans rapport d’erreurs détaillé : résumé uniquement au niveau du nœud racine de l’arborescence d’objets source.

convert-schema

Effectue la conversion de schéma de la source vers le schéma cible.

Si la connexion de base de données source ou cible n’est pas effectuée avant d’exécuter cette commande ou si la connexion au serveur de base de données source ou cible échoue pendant l’exécution de la commande, une erreur est générée et l’application console se ferme.

Script

  • conversion-report-folder : spécifie le dossier dans lequel le rapport d’évaluation peut être stocké. (attribut facultatif)

  • object-name : spécifie le ou les objets sources pris en compte pour la conversion du schéma (il peut avoir des noms d’objets individuels ou un nom d’objet de groupe).

  • object-type : spécifie le type de l’objet spécifié dans l’attribut object-name (si la catégorie d’objet est spécifiée, le type d'objet est « catégorie »).

  • conversion-report-overwrite : spécifie s’il faut remplacer le dossier du rapport d’évaluation s’il existe déjà.

    Valeur par défaut : false. (Attribut facultatif)

  • write-summary-report-to : spécifie le chemin d'accès au dossier dans lequel le rapport sera généré.

    Si seul le chemin d'accès du dossier est mentionné, le fichier par nom SchemaConversionReport<n>.XML est créé. (Attribut facultatif)

    La création de rapports comporte deux sous-catégories supplémentaires :

    • report-errors (="true/false", avec la valeur par défaut « false » (attributs facultatifs))
    • verbose (="true/false", avec la valeur par défaut « false » (attributs facultatifs))

Exemple de syntaxe

<convert-schema
  object-name="ssma.Procedures"
  object-type="category"
  write-summary-report-to="<filepath/folder>"     (optional)
  verbose="<true/false>"                          (optional)
  report-errors="<true/false>"                    (optional)
  conversion-report-folder="<folder>"             (optional)
  conversion-report-overwrite="<true/false>"      (optional)
/>

- Ou -

<convert-schema
  conversion-report-folder="<folder>"         (optional)
  conversion-report-overwrite="<true/false>"  (optional)
>
  <metabase-object object-name="ssma.Procedures"
    object-type="category"/>
</convert-schema>

migrate-data

Migre les données sources vers la cible.

Script

  • object-name : spécifie le ou les objets sources pris en compte pour la migration des données (il peut avoir des noms d’objets individuels ou un nom d’objet de groupe).

  • object-type : spécifie le type de l’objet spécifié dans l’attribut object-name (si la catégorie d’objet est spécifiée, le type d'objet est « catégorie »).

  • write-summary-report-to : spécifie le chemin d'accès au dossier dans lequel le rapport sera généré.

    Si seul le chemin d'accès du dossier est mentionné, le fichier par nom DataMigrationReport<n>.XML est créé. (Attribut facultatif)

    La création de rapports comporte deux sous-catégories supplémentaires :

    • report-errors (="true/false", avec la valeur par défaut « false » (attributs facultatifs))

    • verbose (="true/false", avec la valeur par défaut « false » (attributs facultatifs))

Exemple de syntaxe

<migrate-data
  write-summary-report-to="<filepath/folder>"
  report-errors="true" verbose="true">
    <metabase-object object-name="ssma.TT1"/>
    <metabase-object object-name="ssma.TT2"/>
    <metabase-object object-name="ssma.TT3"/>
    <data-migration-connection
      source-use-last-used="true"/source-server="<server-unique-name>"
      target-use-last-used="true"/target-server="<server-unique-name>"/>
</migrate-data>

- Ou -

<migrate-data
  object-name="ssma.Tables"
  object-type="category"
  write-summary-report-to="<filepath/folder>"
  report-errors="true" verbose="true"/>

Cette commande lie la table source (Access) à la table cible.

Script

Exemple de syntaxe

<link-tables>
  <metabase-object object-name="AccessDatabase.table1" object-type="Tables"/>
  <metabase-object object-name="AccessDatabase.table2" object-type="Tables"/>
</link-tables>

- Ou -

<link-tables>
  <metabase-object object-name="AccessDatabase.Tables" object-type="category"/>
</link-tables>

Cette commande dissocie la table source (Access) de la table cible.

Script

Exemples de syntaxe :

<unlink-tables>
  <metabase-object object-name="AccessDatabase.table1" object-type="Tables"/>
  <metabase-object object-name="AccessDatabase.table2" object-type="Tables"/>
</unlink-tables>

- Ou -

<unlink-tables>
  <metabase-object object-name="AccessDatabase.Tables" object-type="category"/>
</unlink-tables>

Commandes de fichier script de préparation de la migration

La commande Préparation de la migration démarre la mise en correspondance du schéma entre les bases de données source et cible.

map-schema

Mise en correspondance du schéma de la base de données source au schéma cible.

Script

  • source-schema spécifie le schéma source que nous avons l’intention de migrer.
  • sql-server-schema spécifie le schéma cible dans lequel nous voulons qu’il soit migré.

Exemple de syntaxe

<map-schema source-schema="source-schema"
            sql-server-schema="target-schema"/>

Commandes de facilité de gestion

Les commandes de facilité de gestion permettent de synchroniser les objets de base de données cibles avec la base de données source.

Le paramètre de sortie de la console par défaut pour les commandes de migration est le rapport de sortie « Complet » sans rapport d’erreurs détaillé : résumé uniquement au niveau du nœud racine de l’arborescence d’objets source.

synchronize-target

Synchronise les objets cibles avec la base de données cible. Si cette commande est exécutée sur la base de données source, vous obtenez une erreur.

Si la connexion de base de données cible n’est pas effectuée avant l’exécution de cette commande ou si la connexion au serveur de base de données cible échoue pendant l’exécution de la commande, une erreur est générée et l’application console se ferme.

Script

  • object-name : spécifie les objets cibles pris en compte pour la synchronisation avec la base de données cible (il peut avoir des noms d’objets individuels ou un nom d’objet de groupe).

  • object-type : spécifie le type de l’objet spécifié dans l’attribut object-name (si la catégorie d’objet est spécifiée, le type d’'objet est category).

  • on-error : spécifie s’il faut spécifier des erreurs de synchronisation en tant qu’avertissements ou erreur. Options disponibles pour l’erreur :

    • rapport-total-as-warning
    • rapport-each-as-warning
    • fail-script
  • report-errors-to : spécifie l’emplacement du rapport d’erreur pour l’opération de synchronisation (attribut facultatif) si seul le chemin d'accès au dossier est donné, le fichier par nom TargetSynchronizationReport.XML est créé.

Exemple de syntaxe

<synchronize-target
  object-name="ots_triggers.dbo"
  on-error="<report-total-as-warning|
             report-each-as-warning|
             fail-script>"              (optional)
  report-errors-to="<file-name>"        (optional)
/>

- Ou -

<synchronize-target
  object-name="ssma.dbo.Procedures"
  object-type="category"/>

- Ou -

<synchronize-target>
  <metabase-object object-name="ssma.dbo.TT1"/>
  <metabase-object object-name="ssma.dbo.TT2"/>
  <metabase-object object-name="ssma.dbo.TT3"/>
</synchronize-target>

refresh-from-database

Actualise les objets sources de la base de données. Si cette commande est exécutée sur la base de données cible, une erreur est générée.

Script

Nécessite un ou plusieurs nœuds de métabase comme paramètre de ligne de commande.

  • object-name : spécifie les objets sources pris en compte pour l’actualisation à partir de la base de données source (il peut avoir des noms d’objets individuels ou un nom d’objet de groupe).

  • object-type : spécifie le type de l’objet spécifié dans l’attribut object-name (si la catégorie d’objet est spécifiée, le type d’'objet est category).

  • on-error : spécifie s’il faut spécifier des erreurs d’actualisation en tant qu’avertissements ou erreur. Options disponibles pour l’erreur :

    • report-total-as-warning
    • report-each-as-warning
    • fail-script
  • report-errors-to : spécifie l’emplacement du rapport d’erreur pour l’opération d’actualisation (attribut facultatif) si seul le chemin d'accès au dossier est donné, puis le fichier par nom SourceDBRefreshReport.XML est créé.

Exemple de syntaxe

<refresh-from-database
  object-name="ssma.TT1"
  on-error="<report-total-as-warning|
             report-each-as-warning|
             fail-script>"              (optional)
  report-errors-to="<file-name>"        (optional)
/>

- Ou -

<refresh-from-database
  object-name="ssma.Procedures"
  object-type="category"/>

- Ou -

<refresh-from-database>
  <metabase-object object-name="ssma.TT_1"/>
</refresh-from-database>

Commandes de fichier de script de génération de script

Les commandes génération de script permettent d’enregistrer la sortie de la console dans un fichier script.

save-as-script

Utilisé pour enregistrer les scripts des objets dans un fichier mentionné lorsque metabase=target, il s’agit d’une alternative à la commande de synchronisation dans laquelle nous obtenons les scripts et nous exécutons la même opération sur la base de données cible.

Script

Nécessite un ou plusieurs nœuds de métabase comme paramètre de ligne de commande.

  • object-name : spécifie les objets dont les scripts doivent être enregistrés. (Il peut avoir des noms d’objets individuels ou un nom d’objet de groupe).

  • object-type : spécifie le type de l’objet spécifié dans l’attribut object-name. si la catégorie d’objet est spécifiée, le type d'objet est category.

  • metabase : spécifie s’il s’agit de la métabase source ou cible.

  • destination : spécifie le chemin d'accès ou le dossier dans lequel le script doit être enregistré. Si le nom de fichier n’est pas donné, un nom de fichier au format (object_name attribute value).

  • overwrite : si true puis remplace si le même nom de fichier existe. Elle peut avoir les valeurs (true/false).

Exemple de syntaxe

<save-as-script
  metabase="<source/target>"
  object-name="ssma.dbo.Procedures"
  object-type="category"
  destination="<file/folder>"
  overwrite="<true/false>"             (optional)
/>

- Ou -

<save-as-script
  metabase="<source/target>"
  destination="<file/folder>"
>
    <metabase-object object-name="ssma.dbo.Procedures"
                     object-type="category"/>
</save-as-script>