Compartir a través de


Ejecución de la consola de SSMA (D2BToSQL)

Microsoft proporciona un conjunto sólido de comandos de archivo de script para ejecutar y controlar las actividades de SSMA. Las secciones siguientes detallan lo mismo. La aplicación de consola usa determinados comandos de archivo de script estándar como se enumera en esta sección.

Comandos de archivo de script de proyecto

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

Comando

crear-nuevo-proyecto

Crea un nuevo proyecto de SSMA.

Script

  • project-folder indica la carpeta del proyecto que se va a crear.

  • project-name indica el nombre del proyecto. {string}

  • overwrite-if-existsEl atributo opcional indica si se debe sobrescribir un proyecto existente. {boolean}

  • project-type:Atributo opcional. Indica el tipo de proyecto, es decir, proyecto "sql-server-2005" o proyecto "sql-server-2008" o proyecto "sql-server-2012" o proyecto "sql-server-2014" o "sql-azure". El valor predeterminado es "sql-server-2014".

Ejemplo:

<create-new-project  
  
   project-folder="<project-folder>"  
  
   project-name="<project-name>"  
  
   overwrite-if-exists="<true/false>"   (optional)  
  
   project-type="<sql-server-2008 | sql-server-2005 | sql-server-2012 | sql-server-2014>"   (optional)  
  
/>  

El atributo 'overwrite-if-exists' es false de forma predeterminada.

El atributo "project-type" es sql-server-2008 de forma predeterminada.

Comando

open-project

Abre un proyecto existente.

Script

  • project-folder indica la carpeta del proyecto que se va a crear. Se produce un error en el comando si la carpeta especificada no existe. {string}

  • project-name indica el nombre del proyecto. Se produce un error en el comando si el proyecto especificado no existe. {string}

Ejemplo de sintaxis:

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

SSMA para la aplicación de consola de DB2 admite compatibilidad con versiones anteriores. Podrá abrir proyectos creados por la versión anterior de SSMA.

Comando

save-project

Guarda el proyecto de migración.

Script

Ejemplo de sintaxis:

<save-project/>  

Comando

close-project

Cierra el proyecto de migración.

Script

Ejemplo de sintaxis:

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

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

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

Comando

connect-source-database

  • Realiza 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 los metadatos.

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

Script

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

Ejemplo de sintaxis:

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

Comando

force-load-source/target-database

  • Carga los metadatos de origen.

  • Resulta útil para trabajar en el proyecto de migración sin conexión.

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

Script

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

Ejemplo de sintaxis:

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

o

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

Comando

reconnect-source-database

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

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

Script

Ejemplo de sintaxis:

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

Comando

connect-target-database

  • Se conecta a la base de datos de SQL Server 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 establecer la conexión con el destino, se genera un error y la aplicación de consola detiene toda ejecución.

Script

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

Ejemplo de sintaxis:

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

Comando

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 establecer la (re)conexión con el destino, se genera un error y la aplicación de consola detiene toda ejecución.

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 varias actividades de la consola de SSMA.

Comando

generate-assessment-report

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

  • Si la conexión de la base de datos de origen no se realiza antes de ejecutar este comando, se genera un error y se cierra 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

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

  • object-name: especifica los objetos que se consideran para la generación de informes de evaluación (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 será "category").

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

    Valor predeterminado: false. (atributo opcional)

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

    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="<object-name>"  
  
   object-type="<object-category>"  
  
   write-summary-report-to="<file>"   (optional)  
  
   verbose="<true/false>"   (optional)  
  
   report-errors="<true/false>"   (optional)  
  
   assessment-report-folder="<folder-name>"   (optional)  
  
   conversion-report-overwrite="<true/false>"   (optional)  
  
/>  

o

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

Comandos de archivo de script de migración

Los comandos de migración convierten el esquema de la base de datos de destino en el esquema de origen y migran 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 "Full" sin informes detallados de errores: solo resumen en el nodo raíz del árbol de objetos de origen.

Comando

convert-schema

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

  • Si la conexión de base de datos de origen o 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 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 los objetos de origen que se consideran para convertir el esquema (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 será "category").

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

    Valor predeterminado: false. (atributo opcional)

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

    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="<object-name>"  
  
   object-type="<object-category>"  
  
   write-summary-report-to="<file-name/folder-name>"   (optional)  
  
   verbose="<true/false>"   (optional)  
  
   report-errors="<true/false>"   (optional)  
  
   conversion-report-folder="<folder-name>"   (optional)  
  
   conversion-report-overwrite="<true/false>"   (optional)  
  
/>  

o

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

Comando

migrate-data: migra los datos de origen al destino.

Script

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

  • object-name: especifica los objetos de origen que se consideran para migrar datos (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 será "category").

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

    Valor predeterminado: false. (atributo opcional)

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

    Si solo se menciona la ruta de acceso de la carpeta, se crea el archivo por 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="<file-name/folder-name>"  
  
   report-errors="<true/false>"  
  
   verbose="<true/false>">  
  
      <metabase-object object-name="<object-name>"/>  
  
      <metabase-object object-name="<object-name>"/>  
  
      <metabase-object object-name="<object-name>"/>  
  
      <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

<migrate-data  
  
   object-name="<object-name>"  
  
   object-type="<object-category>"  
  
   write-summary-report-to="<file-name/folder-name>"  
  
   report-errors="<true/false>"  
  
   verbose="<true/false>"/>  

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

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

Comando

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

Comando

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 archivo de script de capacidad de administración

Los comandos de capacidad 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 "Full" sin informes detallados de errores: solo resumen en el nodo raíz del árbol de objetos de origen.

Comando

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, se produce 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 sincronizar con la base de datos de destino (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 será "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 da la ruta de acceso de la carpeta, se crea el archivo por nombre TargetSynchronizationReport.XML.

Ejemplo de sintaxis:

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

o

<synchronize-target  
  
   object-name="<object-name>"  
  
   object-type="<object-category>"/>  

o

<synchronize-target>  
  
   <metabase-object object-name="<object-name>"/>  
  
   <metabase-object object-name="<object-name>"/>  
  
   <metabase-object object-name="<object-name>"/>  
  
</synchronize-target>  

Comando

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

Requiere 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 su actualización 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 será "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 da la ruta de acceso de la carpeta, se crea el archivo por nombre SourceDBRefreshReport.XML.

Ejemplo de sintaxis:

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

o

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

o

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

Comandos de archivo de script de generación de scripts

Los comandos de generación de scripts realizan tareas duales: ayudan a guardar la salida de la consola en un archivo de script; y registran la salida de T-SQL en la consola o en un archivo en función del parámetro que especifique.

Comando

save-as-script

Se usa para guardar los scripts de los objetos en un archivo mencionado cuando metabase=target; 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

Requiere 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 será "category").

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

  • destination: especifica la ruta de acceso o la carpeta donde se debe guardar el script, si no se le asigna el nombre de archivo, un nombre de archivo con el formato (valor de atributo object_name) .out

  • overwrite: si es true, sobrescribe en caso de que exista el mismo nombre de archivo. Puede tener los valores (true/false).

Ejemplo de sintaxis:

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

o

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

Comando

convert-sql-statement

  • context especifica el nombre del esquema.

  • destination especifica si la salida debe almacenarse en un archivo.

    Si no se especifica este atributo, la instrucción T-SQL convertida se muestra en la consola. (atributo opcional)

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

  • conversion-report-overwrite especifica si se va a sobrescribir la carpeta del informe de evaluación en caso de que ya exista.

    Valor predeterminado: false. (atributo opcional)

  • write-converted-sql-to especifica la ruta de acceso de la carpeta (o) del archivo donde se va a almacenar el T-SQL convertido. Cuando se especifica una ruta de acceso de carpeta junto con el atributo sql-files, cada archivo de origen tendrá un archivo T-SQL de destino correspondiente creado en la carpeta especificada. Cuando se especifica una ruta de acceso de carpeta junto con el atributo sql, el T-SQL convertido se escribe en un archivo denominado Result.out en la carpeta especificada.

  • sql especifica las instrucciones SQL de DB2 que se van a convertir; una o varias instrucciones se pueden separar mediante ";"

  • sql-files especifica la ruta de acceso de los archivos sql que se deben convertir en código T-SQL.

  • 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 ConvertSQLReport.XML. (atributo opcional)

    La creación de informes tiene 2 subcategorías adicionales, viz.:

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

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

Script

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

Ejemplo de sintaxis:

<convert-sql-statement  
  
   context="<schema-name>"  
  
   conversion-report-folder="<folder-name>"  
  
   conversion-report-overwrite="<true/false>"  
  
   write-summary-report-to="<file-name/folder-name>"   (optional)  
  
   verbose="<true/false>"   (optional)  
  
   report-errors="<true/false>"   (optional)  
  
   destination="<stdout/file>"   (optional)  
  
   file-name="<file-name>"  
  
   sql="SELECT 1 FROM DUAL;">  
  
   <output-window suppress-messages="<true/false>" />  
  
</convert-sql-statement>  

o

<convert-sql-statement  
  
   context="<schema-name>"  
  
   conversion-report-folder="<folder-name>"  
  
   conversion-report-overwrite="<true/false>"  
  
   write-summary-report-to="<file-name/folder-name>" (optional)  
  
   verbose="<true/false>" (optional)  
  
   report-errors="<true/false>"  
  
   destination="<stdout/file>"   (optional)  
  
   write-converted-sql-to="<file-name/folder-name>"  
  
   sql-files="<folder-name>\*.sql" />  

o

<convert-sql-statement  
  
   context="<schema-name>"  
  
   conversion-report-folder="<folder-name>"  
  
   conversion-report-overwrite="<true/false>"  
  
   sql-files="<folder-name>\*.sql" />  

Paso siguiente

Para obtener información sobre las opciones de línea de comandos, consulte Opciones de línea de comandos en la consola de SSMA (DB2ToSQL).

Para obtener información sobre los archivos de script de consola de ejemplo, consulte Trabajar con archivos de script de consola de ejemplo (D2BToSQL)

El siguiente paso depende de los requisitos del proyecto: