Conexión a la base de datos Oracle (OracleToSQL)

Oct 25, 2021
admin
  • 06/04/2020
  • 5 minutos para leer
    • n
    • T
    • M
    • r
    • S
    • +2

Para migrar bases de datos Oracle a SQL Server, debe conectarse a la base de datos Oracle que desea migrar. Cuando se conecta, SSMA obtiene metadatos sobre todos los esquemas de Oracle y los muestra en el panel del Explorador de Metadatos de Oracle. SSMA almacena información sobre el servidor de la base de datos, pero no almacena las contraseñas.

Su conexión a la base de datos permanece activa hasta que usted cierra el proyecto. Cuando vuelva a abrir el proyecto, debe volver a conectarse si desea una conexión activa a la base de datos.

Los metadatos sobre la base de datos Oracle no se actualizan automáticamente. En su lugar, si desea actualizar los metadatos en Oracle Metadata Explorer, debe actualizarlos manualmente. Para obtener más información, consulte la sección «Actualización de los metadatos de Oracle» más adelante en este tema.

Permisos de Oracle requeridos

Como mínimo, la cuenta que se utiliza para conectarse a la base de datos de Oracle debe tener los siguientes permisos:

  • CONNECT
    Requeridos para conectarse (crear una sesión) a la base de datos.

  • SELECT ANY DICTIONARY
    Se requiere para consultar las tablas del diccionario del sistema (por ejemplo, SYS.MLOG$) con el fin de descubrir todos los objetos.

Esto permitirá a SSMA cargar todos los objetos en el esquema propiedad del usuario que se conecta. En la mayoría de los escenarios del mundo real hay referencias de esquema cruzado entre los procedimientos almacenados y SSMA tendrá que ser capaz de descubrir todos los objetos referenciados para una conversión exitosa. Para obtener metadatos para objetos definidos en otros esquemas, la cuenta debe tener los siguientes permisos adicionales:

  • SELECT ANY TABLE
    Requerido para descubrir tablas, vistas, vistas materializadas y sinónimos en otros esquemas.

  • SELECT ANY SEQUENCE
    Requerido para descubrir secuencias en otros esquemas.

  • CREATE ANY PROCEDURE
    Requerido para descubrir PL/SQL para procedimientos, funciones y paquetes en otros esquemas.

  • CREATE ANY TRIGGER
    Requerido para descubrir definiciones de trigger en otros esquemas.

  • CREATE ANY TYPE
    Se requiere para descubrir tipos definidos en otros esquemas.

Algunas de las características de SSMA requieren permisos adicionales. Por ejemplo, si desea utilizar la funcionalidad Tester y Backup Management, deberá conceder al usuario que se conecte lo siguiente:

  • EXECUTE ANY PROCEDURE
    Requerido para ejecutar procedimientos y funciones que desee probar en todos los esquemas.

  • CREATE ANY TABLE y ALTER ANY TABLE
    Se requiere crear y modificar tablas temporales para el seguimiento de cambios y las copias de seguridad.

  • INSERT ANY TABLE y UPDATE ANY TABLE
    Se requiere insertar datos de seguimiento de cambios y copias de seguridad en tablas temporales.

  • DROP ANY TABLE
    Se requiere eliminar tablas temporales utilizadas para el seguimiento de cambios y las copias de seguridad.

  • CREATE ANY INDEX y ALTER ANY INDEX
    Requerido para crear y modificar índices en tablas temporales utilizadas para el seguimiento de cambios y las copias de seguridad.

  • DROP ANY INDEX
    Requerido para eliminar índices en tablas temporales utilizadas para el seguimiento de cambios y las copias de seguridad.

  • CREATE ANY TRIGGERy ALTER ANY TRIGGER
    Requerido para crear y modificar disparadores temporales utilizados para el seguimiento de cambios.

  • DROP ANY TRIGGER
    Requerido para eliminar disparadores temporales utilizados para el seguimiento de cambios.

Nota

Este es un conjunto genérico de permisos necesarios para que SSMA funcione correctamente. Si quiere limitar el alcance de su migración a un subconjunto de esquemas, puede hacerlo concediendo los permisos anteriores al conjunto limitado de objetos, en lugar de ALL. Aunque es posible, podría ser muy difícil identificar correctamente todas las dependencias, lo que impediría que SSMA funcionara correctamente. Se recomienda encarecidamente ceñirse al conjunto genérico definido anteriormente para eliminar cualquier problema potencial de permisos durante el proceso de migración.

Establecer una conexión con Oracle

Cuando se conecta a una base de datos, SSMA lee los metadatos de la base de datos, y luego añade estos metadatos al archivo del proyecto. Estos metadatos son utilizados por SSMA cuando convierte los objetos a la sintaxis de SQL Server, y cuando migra los datos a SQL Server. Puede examinar estos metadatos en el panel del Explorador de Metadatos de Oracle y revisar las propiedades de los objetos individuales de la base de datos.

Importante

Antes de intentar conectarse, asegúrese de que el servidor de la base de datos está funcionando y puede aceptar conexiones.

Para conectarse a Oracle

  1. En el menú Archivo, seleccione Conectarse a Oracle.
    Si se conectó previamente a Oracle, el nombre del comando será Reconectarse a Oracle.

  2. En el cuadro Proveedor, seleccione Proveedor de cliente de Oracle o Proveedor de OLE DB, según el proveedor que esté instalado. El valor predeterminado es cliente de Oracle.

  3. En el cuadro Modo, seleccione el modo Estándar, el modo TNSNAME o el modo Cadena de conexión.
    Utilice el modo estándar para especificar el nombre y el puerto del servidor. Utilice el modo de nombre de servicio para especificar el nombre del servicio de Oracle manualmente. Utilice el modo de cadena de conexión para proporcionar una cadena de conexión completa.

  4. Si selecciona el modo estándar, proporcione los siguientes valores:

    1. En el cuadro Server name, introduzca o seleccione el nombre o la dirección IP del servidor de la base de datos.
    2. Si el servidor de la base de datos no está configurado para aceptar conexiones en el puerto predeterminado (1521), introduzca el número de puerto que se utiliza para las conexiones de Oracle en el cuadro Server port.
    3. En el cuadro Oracle SID, introduzca el identificador del sistema.
    4. En el cuadro User name, introduzca una cuenta Oracle que tenga los permisos necesarios.
    5. En el cuadro Password, introduzca la contraseña para el nombre de usuario especificado.
  5. Si selecciona el modo TNSNAME, proporcione los siguientes valores:

    1. En la casilla Connect identifier, introduzca el identificador de conexión (TNS alias) de la base de datos.
    2. En el cuadro User name, introduzca una cuenta de Oracle que tenga los permisos necesarios.
    3. En el cuadro Password, introduzca la contraseña del nombre de usuario especificado.
  6. Si selecciona el modo Connection string, proporcione una cadena de conexión en el cuadro Connection string.
    El siguiente ejemplo muestra una cadena de conexión OLE DB:

    Provider=OraOLEDB.Oracle;Data Source=MyOracleDB;User Id=myUsername;Password=myPassword;

    El siguiente ejemplo muestra una cadena de conexión Oracle Client que utiliza seguridad integrada:

    Data Source=MyOracleDB;Integrated Security=yes;

    Para obtener más información, consulte Conectarse a Oracle (OracleToSQL).

Reconectarse a Oracle

Su conexión al servidor de la base de datos permanece activa hasta que cierra el proyecto. Cuando vuelva a abrir el proyecto, deberá volver a conectarse si desea tener una conexión activa con la base de datos. Puede trabajar sin conexión hasta que desee actualizar los metadatos, cargar los objetos de la base de datos en SQL Server y migrar los datos.

Refrescar los metadatos de Oracle

Los metadatos sobre la base de datos de Oracle no se actualizan automáticamente. Los metadatos en el Explorador de metadatos de Oracle son una instantánea de los metadatos cuando se conectó por primera vez, o la última vez que actualizó manualmente los metadatos. Puede actualizar manualmente los metadatos de todos los esquemas, de un solo esquema o de objetos individuales de la base de datos.

Para actualizar los metadatos

  1. Asegúrese de estar conectado a la base de datos.

  2. En el Explorador de metadatos de Oracle, seleccione la casilla de verificación situada junto a cada esquema u objeto de la base de datos que desee actualizar.

  3. Haga clic con el botón derecho del ratón en Schemas o en el objeto individual del esquema o de la base de datos y, a continuación, seleccione Refresh from Database.
    Si no tiene una conexión activa, SSMA mostrará el cuadro de diálogo Connect to Oracle para que pueda conectarse.

  4. En el cuadro de diálogo Refresh from Database, especifique qué objetos desea actualizar.

    • Para actualizar un objeto, haga clic en el campo Activo adyacente al objeto hasta que aparezca una flecha.
    • Para evitar que se actualice un objeto, haga clic en el campo Activo adyacente al objeto hasta que aparezca una X.
    • Para actualizar o rechazar una categoría de objetos, haga clic en el campo Activo adyacente a la carpeta de la categoría.

    Para ver las definiciones del código de colores, haga clic en el botón Leyenda.

  5. Haga clic en Aceptar.

El siguiente paso en el proceso de migración es Conectarse a una instancia de SQL Server.

Vea también

Migración de bases de datos Oracle a SQL Server (OracleToSQL)

Deja una respuesta

Tu dirección de correo electrónico no será publicada.