Comparteix a través de


Ejecución de la consola de SSMA (AccessToSQL)

Microsoft le proporciona un sólido conjunto de comandos de archivo de script y opciones de línea de comandos para ejecutar y controlar las actividades de SQL Server Migration Assistant (SSMA). Las secciones siguientes detallan lo mismo.

Comandos Project de archivo de script

Los comandos proyect controlan la creación de proyectos, la apertura, el guardado y la salida de los proyectos.

create-new-project

Crea un proyecto de SSMA.

Atributo Valor predeterminado Descripción Tipo
project-folder Ninguno Indica la carpeta del proyecto que se va a crear. Cadena
project-name Ninguno Indica el nombre del proyecto. Cadena
overwrite-if-exists false El atributo opcional especifica si se debe sobrescribir un proyecto existente. Booleano
project-type sql-server-2008 Atributo opcional. Las siguientes opciones están disponibles para project-type:

sql-server-2005
sql-server-2008
sql-server-2012
sql-server-2014
sql-server-2016
sql-azure
Cadena

Ejemplo de sintaxis

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

open-project

Abre un proyecto existente.

Atributo Valor predeterminado Descripción Tipo
project-folder Ninguno Indica la carpeta del proyecto que se va a crear. Se produce un error en el comando si la carpeta especificada no existe. Cadena
project-name Ninguno Indica el nombre del proyecto. Se produce un error en el comando si el proyecto especificado no existe. Cadena

Ejemplo de sintaxis

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

Nota:

La aplicación de consola SSMA para Access admite compatibilidad con versiones anteriores. Puede abrir proyectos creados por la versión anterior de SSMA.

save-project

Guarda el proyecto de migración.

Ejemplo de sintaxis

<save-project/>

close-project

Cierra el proyecto de migración.

Atributo Valor predeterminado Descripción Tipo
if-modified ignore Atributo opcional para especificar el comportamiento. Los valores posibles son: save, error y ignore. Cadena

Ejemplo de sintaxis

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

El atributo “if-modified” es opcional, se omite de manera predeterminada.

Comandos de archivo de script de conexión de base de datos

Los comandos Conexión de base de datos ayudan a conectarse a la base de datos.

La característica Examinar de la interfaz de usuario no se admite en la consola.

Los parámetros windows-authentication y port no son aplicables al conectarse a SQL Azure.

Para obtener más información, consulte Creación de archivos de script (AccessToSQL).

connect-source-database

Hace la conexión a la base de datos de origen y carga metadatos de alto nivel de la base de datos de origen, pero no todos.

Si no se puede establecer la conexión con el origen, se genera un error y la aplicación de consola detiene la ejecución posterior

La definición server se recupera del atributo nombre definido para cada conexión de la sección server del archivo de conexión del servidor o del archivo de script.

Ejemplo de sintaxis

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

load-access-database

Se usa para cargar archivos de base de datos de acceso.

Atributo Valor predeterminado Descripción Tipo
database-file Ninguno Especifica la ruta de acceso a una base de datos Access. Cadena

Ejemplo de sintaxis

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

-O bien-

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

force-load base de datos de origen o de destino

Carga los metadatos de origen. Es útil para trabajar en el proyecto de migración sin conexión.

Si no se puede establecer una conexión con el origen o destino, se genera un error y la aplicación de consola detiene la ejecución.

Necesita uno o varios nodos metabase como parámetro de línea de comandos.

Atributo Valor predeterminado Descripción Tipo
object-name Ninguno Especifica el nombre del objeto. Cadena
metabase Ninguno Especifica la ruta de acceso a una base de datos Access. Los valores posibles son: source o target Cadena

Ejemplo de sintaxis

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

-O bien-

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

reconnect-source-database

Vuelve a conectarse a la base de datos de origen, pero no carga metadatos a diferencia del comando connect-source-database.

Si no se puede (re)conectar con el origen, se genera un error y la aplicación de consola detiene la ejecución.

La definición server se recupera del atributo nombre definido para cada conexión de la sección server del archivo de conexión del servidor o del archivo de script.

Ejemplo de sintaxis

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

connect-target-database

Se conecta a SQL Server o SQL Azure Database de destino y carga metadatos de alto nivel de la base de datos de destino, pero no los metadatos por completo.

Si no se puede conectar con el destino, se genera un error y la aplicación de consola detiene la ejecución.

La definición server se recupera del atributo nombre definido para cada conexión de la sección server del archivo de conexión del servidor o del archivo de script.

Ejemplo de sintaxis

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

reconnect-target-database

Vuelve a conectarse a la base de datos de destino, pero no carga ningún metadato, a diferencia del comando connect-target-database.

Si no se puede (re)conectar con el destino, se genera un error y la aplicación de consola detiene la ejecución.

La definición server se recupera del atributo nombre definido para cada conexión de la sección server del archivo de conexión del servidor o del archivo de script.

Ejemplo de sintaxis

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

Comandos de archivo de script de informe

Los comandos de informe generan informes sobre el rendimiento de diversas actividades de la consola de SSMA.

generate-assessment-report

Genera informes de evaluación en la base de datos de origen.

Si no se realiza la conexión a la base de datos de origen antes de ejecutar este comando, se genera un error y se sale de la aplicación de consola.

Si no se conecta al servidor de base de datos de origen durante la ejecución del comando, también se finaliza la aplicación de consola.

Script

  • assessment-report-folder: especifica la carpeta donde se puede almacenar el informe de evaluación (atributo opcional)

  • object-name: especifica el objeto u objetos considerados para la generación de informes de evaluación (puede tener nombres de objeto individuales o un nombre de objeto de grupo).

  • object-type: especifica el tipo del objeto especificado en el atributo object-name (si se especifica la categoría de objeto, el tipo de objeto será "category").

  • assessment-report-overwrite: especifica si se va a sobrescribir la carpeta del informe de evaluación si ya existe.

    Valor predeterminado: falso. (atributo opcional)

  • write-summary-report-to: especifica la ruta de acceso donde se generará el informe.

    Si solo se menciona la ruta de acceso de la carpeta, se crea el archivo por nombre AssessmentReport<n.XML>. (atributo opcional)

    La creación de informes tiene dos subcategorías adicionales:

    • report-errors (="true/false", con el valor predeterminado como "false"; atributos opcionales)
    • verbose (="true/false", con el valor predeterminado como "false" (atributos opcionales))

Ejemplo de sintaxis

<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)
/>

-O bien-

<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>

Comandos de archivo de script de migración

Los comandos de migración convierten el esquema de base de datos de destino en el esquema de origen y migra los datos al servidor de destino.

La configuración de salida de la consola predeterminada para los comandos de migración es el informe de salida "Completo" sin informes detallados de errores: solo resumen en el nodo raíz del árbol de objetos de origen.

convert-schema

Hace la conversión de esquema desde el esquema de origen al de destino.

Si no se hace la conexión de base de datos de origen o de destino antes de ejecutar este comando o la conexión al servidor de base de datos de origen o de destino durante la ejecución del comando, se genera un error y se cierra la aplicación de consola.

Script

  • conversion-report-folder: especifica la carpeta donde se puede almacenar el informe de evaluación (atributo opcional)

  • object-name: especifica el objeto u objetos de origen considerados para convertir el esquema (puede tener nombres de objeto individuales o un nombre de objeto de grupo).

  • object-type: especifica el tipo del objeto especificado en el atributo object-name (si se especifica la categoría de objeto, el tipo de objeto será "category").

  • conversion-report-overwrite: especifica si se va a sobrescribir la carpeta del informe de evaluación si ya existe.

    Valor predeterminado: falso. (atributo opcional)

  • write-summary-report-to: especifica la ruta de acceso donde se generará el informe.

    Si solo se menciona la ruta de acceso de la carpeta, se crea el archivo por nombre SchemaConversionReport<n.XML>. (atributo opcional)

    La creación de informes tiene dos subcategorías adicionales:

    • report-errors (="true/false", con el valor predeterminado como "false"; atributos opcionales)
    • verbose (="true/false", con el valor predeterminado como "false" (atributos opcionales))

Ejemplo de sintaxis

<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)
/>

-O bien-

<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

Migra los datos de origen al destino.

Script

  • object-name: especifica el objeto u objetos de origen considerados para migrar datos (puede tener nombres de objeto individuales o un nombre de objeto de grupo).

  • object-type: especifica el tipo del objeto especificado en el atributo object-name (si se especifica la categoría de objeto, el tipo de objeto será "category").

  • write-summary-report-to: especifica la ruta de acceso donde se generará el informe.

    Si solo se menciona la ruta de acceso de la carpeta, se crea el archivo con el nombre DataMigrationReport<n.XML>. (atributo opcional)

    La creación de informes tiene dos subcategorías adicionales:

    • report-errors (="true/false", con el valor predeterminado como "false"; atributos opcionales)

    • verbose (="true/false", con el valor predeterminado como "false" (atributos opcionales))

Ejemplo de sintaxis

<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>

-O bien-

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

Este comando vincula la tabla de origen (Access) a la tabla de destino.

Script

Ejemplo de sintaxis

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

-O bien-

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

Este comando desvincula la tabla de origen (Access) de la tabla de destino.

Script

Ejemplos de sintaxis:

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

-O bien-

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

Comandos de archivo de script de preparación de migración

El comando Preparación de la migración inicia la asignación de esquemas entre las bases de datos de origen y de destino.

map-schema

Asignación de esquemas de la base de datos de origen al esquema de destino.

Script

  • source-schema especifica el esquema de origen que pretendemos migrar.
  • sql-server-schema especifica el esquema de destino en el que queremos que se migre.

Ejemplo de sintaxis

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

Comandos de administración

Los comandos de administración ayudan a sincronizar los objetos de base de datos de destino con la base de datos de origen.

La configuración de salida de la consola predeterminada para los comandos de migración es el informe de salida "Completo" sin informes detallados de errores: solo resumen en el nodo raíz del árbol de objetos de origen.

synchronize-target

Sincroniza los objetos de destino con la base de datos de destino. Si este comando se ejecuta en la base de datos de origen, obtendrá un error.

Si la conexión de la base de datos de destino no se realiza antes de ejecutar este comando o se produce un error en la conexión con el servidor de base de datos de destino durante la ejecución del comando, se genera un error y se cierra la aplicación de consola.

Script

  • object-name: especifica los objetos de destino que se consideran para la sincronización con la base de datos de destino (puede tener nombres de objeto individuales o un nombre de objeto de grupo).

  • object-type: especifica el tipo del objeto especificado en el atributo object-name (si se especifica la categoría de objeto, el tipo de objeto es category).

  • on-error: especifica si se deben especificar errores de sincronización como advertencias o errores. Opciones disponibles para el error:

    • report-total-as-warning
    • report-each-as-warning
    • fail-script
  • report-errors-to: especifica la ubicación del informe de errores para la operación de sincronización (atributo opcional) si solo se especifica la ruta de acceso de la carpeta, se crea el archivo por nombre TargetSynchronizationReport.XML.

Ejemplo de sintaxis

<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)
/>

-O bien-

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

-O bien-

<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

Actualiza los objetos de origen de la base de datos. Si este comando se ejecuta en la base de datos de destino, se genera un error.

Script

Necesita uno o varios nodos de metabase como parámetro de línea de comandos.

  • object-name: Especifica los objetos de origen que se consideran para actualizar desde la base de datos de origen (puede tener nombres de objeto individual o un nombre de objeto de grupo).

  • object-type: especifica el tipo del objeto especificado en el atributo object-name (si se especifica la categoría de objeto, el tipo de objeto es category).

  • on-error: especifica si se deben especificar errores de actualización como advertencias o errores. Opciones disponibles para el error:

    • report-total-as-warning
    • report-each-as-warning
    • fail-script
  • report-errors-to: especifica la ubicación del informe de errores para la operación de actualización (atributo opcional) si solo se proporciona la ruta de acceso de la carpeta, se crea el archivo por nombre SourceDBRefreshReport.XML.

Ejemplo de sintaxis

<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)
/>

-O bien-

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

-O bien-

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

Comandos de archivo de script de generación de scripts

Los comandos de generación de scripts ayudan a guardar la salida de la consola en un archivo de script.

save-as-script

Se usa para guardar los scripts de los objetos en un archivo mencionado cuando metabase=destino, se trata de una alternativa al comando de sincronización en el que se obtienen los scripts y se ejecutan los mismos en la base de datos de destino.

Script

Necesita uno o varios nodos de metabase como parámetro de línea de comandos.

  • object-name: especifica los objetos cuyos scripts se van a guardar. (Puede tener nombres de objeto individual o un nombre de objeto de grupo).

  • object-type: especifica el tipo del objeto especificado en el atributo object-name. Si se especifica la categoría de objeto, el tipo de objeto es category.

  • metabase: especifica si es la metabase de origen o de destino.

  • destination: especifica la ruta de acceso o la carpeta en la que se debe guardar el script. Si no se especifica el nombre de archivo, un nombre de archivo con el formato (object_name attribute value).

  • overwrite: si true, sobrescribe si existen los mismos nombres de archivo. Puede tener los valores (true/false).

Ejemplo de sintaxis

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

-O bien-

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